jueves, 29 de enero de 2015

Copiar Hoja Mediante Código VBA

Después de una larga parada vuelvo a escribir una nota. En esta ocasión quiero exponer una de las formas de resolver una necesidad típica cuando se usa a Excel para generar plantillas de trabajo; y es, copiar una hoja ya diligenciada y borrar la información que no se requiere para digitar nuevos datos.

Tal necesidad se me presentó en mi lugar de trabajo ¿cómo la solucioné?

Pues use un código de BVA advirtiendo que no soy un experto en el tema. Aquí las líneas:

Sub nueva_hoja()
Application.ScreenUpdating = False "Evita el parpadeo de la pantalla cuando se ejecuta la macro"
ActiveSheet.Copy After:=Sheets(Sheets.Count) "duplica la hoja activa y la deja al final"
ActiveSheet.Select "selecciona la hoja activa"
Range("D14") = Sheets.Count "cuenta el número de hojas y pone el valor en la celda D14"
ActiveSheet.Name = Range("D14") "Nombra la nueva hoja con el valor de la celda D14"
Range("D16:H35").ClearContents "limpia el contenido del rango de celdas D16:H35"
Application.ScreenUpdating = True "activa la actualización de pantalla"
End Sub


Estas se deben copiar en un módulo. Atajo para acceder al entorno de Visual Basic (VBA), teclas Alt y F11.















Para la ejecución de la macro se puede instalar un botón de formulario.



Se dibuja el control en la hoja y con clic derecho se asigna la macro referida anteriormente.
















































Cuando se copia la hoja, esta toma como nombre el número de hojas del libro.



























No hay comentarios.:

Publicar un comentario