Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: tony82 en 20 Marzo 2009, 16:39 pm



Título: macro copiar datos de hoja a un libro
Publicado por: tony82 en 20 Marzo 2009, 16:39 pm
Buenas dias
otra vez yo molestando,si por favor me pueden ayudar
esta vez estoy realizando una macro que me copie los datos de una hoja que tengo oculta y los pegue en un libro nuevo. pero no tengo ni idea de como hacerlo.

tony 82


Título: Re: macro copiar datos de hoja a un libro
Publicado por: Novlucker en 22 Marzo 2009, 05:01 am
Buenas
Lo que no me queda claro es si necesitas copiar el contenido o la hoja completa?, así que te doy tips  :P
Agregar un libro nuevo
Código
  1. workbooks.add
Guardar un libro (saveas acepta otros parámetros)
Código
  1. 'workbooks(index).SaveAs(nombre_ruta)
  2. workbooks(2).saveas("C:\Archivo.xls")
Copiar contenido de una hoja
Código
  1. 'Seleccionas rango
  2. Selection.copy
  3. 'Seleccionas destino
  4. ActiveSheet.Paste
Copiar hoja completa
Código
  1. Sheets(hoja).Copy After:=Workbooks(nombre_otro_libro).Sheets(index)
  2. 'Se selecciona y copia la hoja, en otro libro luego de ...
Espero te sirva y sino preguntas  ;)

Saludos

Nota: Cuando creas un libro nuevo y pegas contenido del actual en ese, las macros se desplazan, prueba para entender mejor


Título: Re: macro copiar datos de hoja a un libro
Publicado por: tony82 en 31 Marzo 2009, 14:28 pm
Buenos dias,
Novlucker si lo que necesito es copiar la hoja completa a un libro nuevo.
use tu instruccion
Código:
Sheets("ORDENES").Copy After:=Workbooks("Libro2").Sheets("Hoja1")
pero esta necesita que el libro nuevo este abierto, y ademas que sea el libro numero 2 en este caso, ya que lo use con Workbooks(index) y me arroja error.
hay forma que antes de la instrucion se agrege un libro nuevo y en el archivo actual copie toda una hoja y la pegue en ese libro nuevo.

Código:
 woorkbooks.add
Sheets("ORDENES").Copy After:=Workbooks("Libro2").Sheets("Hoja1")
esta instrucion abre un libro nuevo pero cada vez el libro va aumentando su numeracion, entoces sale error de subindice fuera del intervalo. o sea que no encuentra el libro2 abierto.

Muchas gracias
Tony82


Título: Re: macro copiar datos de hoja a un libro
Publicado por: Novlucker en 31 Marzo 2009, 16:01 pm
Es que justamente te di los codes para que los juntaras, y lo que dice index es el comentario de como sería usarlo, index no funciona pero puedes usar workbooks.count

Código
  1. Workbooks.Add
  2. Sheets(1).Copy Before:=Workbooks(Workbooks.Count).Sheets(1)

Con workbooks.Count sabes cuantos libros hay, y por ende utilizandolo como index te moverás al último (el que acabamos de crear)
También he cambiado el copy After a Before, así copias la hoja en la primera hoja del nuevo libro  :P

Saludos


Título: Re: macro copiar datos de hoja a un libro
Publicado por: tony82 en 15 Abril 2009, 15:01 pm
Buenos dias,
Ok Novlucker, funciono correctamente muchas gracias.


tony82