Saltar al contenido
PROGRAMAR EN VBA MACROS DE EXCEL

Recorre hojas extrae datos para resumen

En un foro me consultan sobre como recorrer las hojas del libro de Excel y extraer datos para hacer un resumen; en un post anterior se expuso algo relacionado, ya que la macro recorre las hojas para listarlas y agregarla a un combobox; en este caso se requiere hacer un resumen recorriendo las hojas y extrayendo datos de dichas hojas, en el link abre libros extrae datos y hace resumen, se agrega una variante que consiste que en vez de recorrer las hojas del libro, extrae datos de libros diferentes.

Antes de seguir con el desarrollo y en el caso que no tengas conocimiento suficiente sobre el manejo de hojas de Excel, te recomiendo antes de introducirte en el mundo de las macros, que leas un excelente libro sobre Excel el que te ayudará manejar las planillas de cálculo, debes hacer click acá, si quieres un libro sobre Excel, en inglés, entonces debes hacer click acá.

MASTERCARD PAYONEER

Muchas veces cuando se trabaja con libros donde se listan ventas mensuales, por sucursal o cualquier otro dato, se necesita recorrer hoja por hoja y extraer ciertos datos para realizar un resumen, este post muestra en detalle como la macro va recorriendo hoja por hoja del libro de Excel se fija en las celdas que tienen los datos necesarios para el resumen y los copia en la hoja Resumen, que se llama en este ejemplo. Es una macro sencilla, pero muy útil y que da muchos dolores de cabeza a los más novatos en el tema de macros.

Desde el link del final se puede descargar el archivo de ejemplo de esta manera podrás ver su funcionamiento en forma más detallada. El código de VBA o Macro de Excel crea una hoja denominada resumen si es que ya no está creada, luego determina cuantas hojas hay en el libro de Excel, para hacer un bucle que va desde la hoja2 a la última, la hoja1 no se tiene en cuenta, porque es donde se hace el resumen; posteriormente selecciona las celdas con los datos necesarios para el resumen y los copia en la hoja resumen, por último da formato a las celdas para que se vea más ordenado, descarga el ejemplo desde el link del final.

Código que se debe insertar en un módulo

Sub HaceResumen()
On Error Resume Next
Application.ScreenUpdating = False
Dim hoja As Worksheet
Dim x, i, fila, fila1 As Integer

If Sheets(1).Name <> «Resumen» Then
Sheets.Add Before:=Worksheets(1)
ActiveSheet.Name = «Resumen»
Else
Sheets(1).Select
End If

x = Sheets.Count
col = 2

For i = 2 To x
Sheets(i).Range(«B2»).Copy Destination:=Sheets(«Resumen»).Cells(2, col)
Sheets(i).Range(«B3»).Copy Destination:=Sheets(«Resumen»).Cells(3, col)
col = col + 1
Next i
     
Sheets(«Resumen»).Columns(«A:M»).Select
With Selection
.RowHeight = 12.75
.Interior.Pattern = xlNone
.Interior.TintAndShade = 0
.Interior.PatternTintAndShade = 0
.Font.Name = «Arial»
.Font.Size = 10
.Font.Bold = False
End With
Sheets(«Resumen»).Range(«C:T»).EntireColumn.AutoFit
Range(«A1»).Select
Application.ScreenUpdating = True
End Sub

Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.


.

If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.

Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends