Está en la página 1de 2

27/4/2014 Copia de datos con macro a otra hoja con rango.

Microsoft Excel

Inicio > Tecnología e Internet > Software y aplicaciones > Microsoft Excel

Copia de datos con macro a otra hoja


con rango
Respuesta de elsamatilde a juliocrow 11/09/2009

Hola buen día Señores y Srtas.


Mi duda es la siguiente, y tengo una idea, pero no es el total clara, lo que quiero hacer es lo
siguiente:
Usuario
Tengo una archivo de excel con 5 pestañas, lo que quiero es una macro que de esas 5
pestañas me de la información a un libro nuevo, desconozco si le puedo dar el rango yo a la
macro, osea decirle ctrl+Shift tope derecha, ctrl+shift tope abajo (esto con la finalidad de que
solo agarre los datos llenos y no toda la hoja) y los copie a otro libro uno tras otro.
Se que existe la fncion copy:
Sheets("prueba").Select
Range("A1:L2000").Select
Selection.Copy
Sheets("copiados").Select
Range("a1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("prueba").Select
Range("a4").Select
Application.CutCopyMode = False
(Esto lo tenia para copiarlo de una sheet a otra, pero no me sirve ya. Y quiero juntarlo con que
copie la 1-2 3-4-5 en una sola como una base de datos que posteriormente utilizare para otra
cosa.
Agradecería la ayuda del grupo, espero sus respuestas.
Saludos
ING. Julio Sauceda

Neo4j Database Tutorials


neo4j.org/tutorials
Build Your Ow n Graph Search. Get Hands-On Training For Neo4j.

Hola:
Aquí adjunto rutina para esto.
Sub armaBase()
Experto
'desarrollada por Elsamatilde
For Each sh In Sheets
'excluimos alguna hoja
If sh.Name <> "copiados" Then
'buscamos la primer fila libre para pegar
filaini = Sheets("copiados").Range("A65536").End(xlUp).Row + 1
sh.Range("A1").CurrentRegion.Copy 'ver*
Sheets("copiados").Cells(filaini, 1).Select
ActiveSheet.Paste
End If
Next sh
End Sub
* CurrentRegion tomará el total de celdas con datos, hasta encontrar una intersección de fila y
col vacías. Podés reemplazar por un rango fijo (A1:L2000) o buscando el fin con :
Cells(fila, col) donde fila y col se habrán obtenido siguiendo el ejemplo de la variable filaini (ver
otros ejemplos en mi página de macros)

Sdos
Elsa
http://aplicaexcel.galeon.com/index.htm 0 0 0

Me gusta Tw ittear Compartir


No me da bien la función, me puedes aclarar la parte de agregado de pestañas.

Usuario

http://www.todoexpertos.com/categorias/tecnologia-e-internet/software-y-aplicaciones/microsoft-excel/respuestas/2192683/copia-de-datos-con-macro-a-otra-hoj… 1/2
27/4/2014 Copia de datos con macro a otra hoja con rango. Microsoft Excel

Hola Elsa, ya utilice tu macro pero me copia 2 veces los datos de las pestañas, ¿me puedes
explicar el porque?
Private Sub CommandButton1_Click()
Usuario
' Copiado de Datos
For Each sh In Sheets
' Excluimos alguna hoja
If sh. Name <> "4" Then
' Primer fila libre para pegar
filaini = Sheets("copia"). Range("A65536"). End(xlUp). Row + 1
sh. Range("A3"). CurrentRegion. Copy
Sheets("copia"). Cells(filaini, 1). Select Anuncios Google

ActiveSheet. Paste Ganando con Inglés


Cumple tus Propósitos ¡Habla Inglés Desde Hoy!
End If
www.ganandoconingles.com
Next sh
Curso de Contabilidad,
End Sub
aprende en tus ratos libres, de manera rápida y
económica.
institutomaurer.com.mx
Elsa, ya solucione el problema:
HKTDC Sourcing Apps
Solo cambie el <> por < dado que repetia 2 veces la opcion. Connect to 5 million global buyers in over 200
' Excluimos alguna hoja countries. Download now
Usuario info.hktdc.com/mobile
If sh.Name < "4" Then
Solamente me copia datos de más de la ultima, no me respeta el rango de la A1 final. Debes más de $35000
Te ayudamos a liquidar tu deuda pagando entre 30% y
70% menos
El bucle dice que 'para cada hoja... copiar en hoja llamada 'copia' con excepción de la hoja www.resuelvetudeuda.com
llamada 4, es decir que también estás ejecutando la hoja copia. Cloud Computing
Esta es la primera que yo hubiese excluido. No confundas nro de hoja con nombre de hoja. ¡Obtenga la Info que desea desde múltiples motores
Experto de búsqueda!
sh.Name se refiere al nbre Haz tu pregunta
Buscar en todoexpertos.com Explorar abrir sesión registrarse www.info.com
Private Sub CommandButton1_Click()
' Copiado de Datos
For Each sh In Sheets
' Excluimos alguna hoja. En este caso la llamada 'copia'
If sh. Name <> "copia" Then
' Primer fila libre para pegar
filaini = Sheets("copia"). Range("A65536"). End(xlUp). Row + 1
sh. Range("A3"). CurrentRegion. Copy
Sheets("copia"). Cells(filaini, 1). Select
ActiveSheet. Paste
End If
Next sh
End Sub
Probala así. Si además tenés una hoja llamada 4 y también la querés excluir será:
If sh. Name <> "copia" and sh.name <> "4" Then

Sdos
Elsa
http://aplicaexcel.galeon.com/manuales.htm

Programas De Puntos
puntosinfin.com/¡Es-Gratis!
Compra enMás de 50 Tiendas y Obtén PuntOsinFin al Instante. Regístrate
Usuario
Gracias elsa ya encontré el problema

TAMBIÉN TE PUEDE INTERESAR


Más respuestas
PARA MATILDE... problemas con la macro eliminar filas Macro para copiar y pegar varias
veces
MAcro copiar y pegar información variante
Buen día... espero que alguien me pueda
Extraer solo una parte de una bd por una condición ayudar. Les explico: para poder realizar mi
trabajo necesito armar una base en un una hoja
Macro para copiar y pegar varias veces de...

Macro insertar fila

Haz tu pregunta...

Inicio Publicidad Condiciones de uso Declaración de privacidad ¡Síguenos!


Acerca de Todoexpertos Blog Ayuda Contacto
© 1999 - 2014 Todoexpertos.com. Todos los derechos reservados. Desarrollado por Avanzis 535 Me gusta 10 867 Seguir a @todoexpertos

http://www.todoexpertos.com/categorias/tecnologia-e-internet/software-y-aplicaciones/microsoft-excel/respuestas/2192683/copia-de-datos-con-macro-a-otra-hoj… 2/2

También podría gustarte