Foros del Web » Soporte técnico » Ofimática »

Copiar contenido de una hoja a otra segun una lista predefinida

Estas en el tema de Copiar contenido de una hoja a otra segun una lista predefinida en el foro de Ofimática en Foros del Web. Buenos dias. Necesito una macro que haga lo siguiente: Tengo 7 hojas con plantillas y nombre fijo y 20 hojas que son variables en función ...
  #1 (permalink)  
Antiguo 25/02/2016, 06:13
 
Fecha de Ingreso: febrero-2016
Mensajes: 3
Antigüedad: 8 años, 1 mes
Puntos: 0
Copiar contenido de una hoja a otra segun una lista predefinida

Buenos dias.

Necesito una macro que haga lo siguiente:

Tengo 7 hojas con plantillas y nombre fijo y 20 hojas que son variables en función de las fechas del mes (es decir tengo 1 excel mensual y es 1 pestaña por dia laborable). (Dispongo de una macro que me crea las hojas cada mes segun los nombres de la lista predefinida).

Posteriormente cada mes me gustaria que copiase el contenido de la plantilla que corresponda para pegarla en la hoja que definamos en la tabla.

Ejemplo
TABLA QUE REGULA LAS COPIAS (colocada DE A1 a B3 en el ejemplo pero con longitudes variables en funcion de los laborables de cada mes)
(A) ............ (B)
02 Viernes............ Plantilla 1
03 Sabado............ Plantilla 3
05 Lunes............ Plantilla 6
Y asi sucesivamente.
Una vez establecida esta tabla (esto a mano porque necesitamos asignar las plantillas de forma diferente cada mes) quiero que busque la hoja que se llama segun indica B1, copie su contenido y lo pegue en la hoja que se llama A1.


Por añadir informacion la hoja que contiene la tabla se llama FECHAS y tampoco cambia de nombre.
Espero haberme explicado...
  #2 (permalink)  
Antiguo 26/02/2016, 23:13
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Copiar contenido de una hoja a otra segun una lista predefinida

Solo necesitas hacer referencia a cada pestaña por el nombre:

Código vb:
Ver original
  1. Sheets("Enero").Cells(1, 1) = Sheets("FECHAS").Cells(4, 5)
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 29/02/2016, 06:15
 
Fecha de Ingreso: febrero-2016
Mensajes: 3
Antigüedad: 8 años, 1 mes
Puntos: 0
Respuesta: Copiar contenido de una hoja a otra segun una lista predefinida

Hola,

Lo siento pero no entiendo muy bien la respuesta, o no consigo aplicarla....

He creado un excel ejemplo con las pestañas que serian de Enero, pero necesito que la macro no indique nombres cerrados para las hojas porque sino no se aplicaria a los meses siguientes cuando cambie los nombres.

[URL="http://ge.tt/7cGgsQY2"]http://ge.tt/7cGgsQY2[/URL]

He partido de esta macro pero no se como adaptarla a los nombres "variables" segun la tabla ni como aplicar la condicion de que busque la hoja plantilla que corresponda.

Código:
Sub CopiarCeldas()
 
'Definir objetos a utilizar
Dim wsOrigen As Excel.Worksheet, _
    wsDestino As Excel.Worksheet, _
    rngOrigen As Excel.Range, _
    rngDestino As Excel.Range
 
'Indicar las hojas de origen y destino
Set wsOrigen = Worksheets("Origen")
Set wsDestino = Worksheets("Destino")
 
'Indicar la celda de origen y destino
Const celdaOrigen = "A1"
Const celdaDestino = "A1"

 
'Inicializar los rangos de origen y destino
Set rngOrigen = wsOrigen.Range(celdaOrigen)
Set rngDestino = wsDestino.Range(celdaDestino)
 
'Seleccionar rango de celdas origen
rngOrigen.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
 
'Pegar datos en celda destino
rngDestino.PasteSpecial xlPasteAll
Application.CutCopyMode = False
 
End Sub
  #4 (permalink)  
Antiguo 01/03/2016, 13:19
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Copiar contenido de una hoja a otra segun una lista predefinida

En wsOrigen asignas el nombre de tu plantilla en lugar de "Origen" y luego haces un ciclo para recorrer todas las pestañas del libro, pero antes necesitas decirnos el formato que tienen los nombres donde se van a aplicar los cambios, por ejemplo: "Enero 2016", "Diciembre 2015" o cómo va la cosa.
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 02/03/2016, 01:52
 
Fecha de Ingreso: febrero-2016
Mensajes: 3
Antigüedad: 8 años, 1 mes
Puntos: 0
Respuesta: Copiar contenido de una hoja a otra segun una lista predefinida

las hojas son del tipo:

02 Viernes
03 Sabado
05 Lunes
06 Martes
...

Y evidentemente cambian cada mes.

Por otro lado tendria que hacer codigo para cada plantilla?... va a ser una programacion muy extensa jajaja. ¿no hay forma de contrastar y usar unicamente la plantilla asociada en la tabla?.

Me gustaria poder subir un excel ejemplo, pero no me deja adjuntar archivos...

Etiquetas: contenido, excel, fecha, hoja, lista
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:03.