Excel - Combina varias hojas de trabajo en una sola

Problema

Utilizo Excel para almacenar información sobre varios productos y tengo una hoja de trabajo diferente para cada rango. ¿Cómo combinar (combinar secuencialmente) todas estas hojas de trabajo en una sola página? Todas las hojas de trabajo tienen el mismo número de columnas, con el mismo título (en la fila superior).

¿Cómo proceder?

Solución

Asumiendo que:

1. Una hoja titulada Consolidado se puede crear y eliminar por macro

2. Los encabezados están en la fila 1 en todas las hojas y es común para todos

3. Todas las hojas deben ser copiadas.

 Sub CombineSheets () Dim lConRow As Long Asf Dim Sheet como Variant Dim sConsolidatedSheet As String Dim lSheetRow As Long Dim sLastCol As String sConsolidatedSheet = "Consolidated" En caso de error. sConsolidatedSheet para cada hoja en hojas si Sheet.Name = sConsolidatedSheet Then GoTo Next_Sheet If sLastCol = "" Entonces sLastCol = Sheet.Cells (1, Columns.Count) .End (xlToLeft) .Address Sheets (sConsolidatedSheet). 1 ") = Sheet.Range (" 1: 1 "). Valor lConRow = 1 End If lSheetRow = 0 On Error Resume Siguiente lSheetRow = Sheet.Cells.Find (" * ", Cells (1, 1), SearchOrder: = xlByRows, SearchDirection: = xlPrevious) .Row On Error GoTo 0 If (lSheetRow> 1) Entonces Hojas (sConsolidatedSheet) .Range (lConRow + 1 & ":" & lSheetRow + lConRow - 1) = Sheet.Range ("2:" & lSheetRow) .Value lConRow = Hojas (sConsolidatedSheet) .Cells.Find ("*", Cells (1, 1), SearchOrder: = xlByRows, SearchDirection: = xlPrevious) .Row End If Next_Sheet: Next End Sub 

Gracias a rizvisa1 por este consejo.

Artículo Anterior Artículo Siguiente

Los Mejores Consejos