Excel - una macro para copiar datos de diferentes hojas
Problema
Estoy tratando de copiar datos de diferentes hojas a la hoja maestra bajo los siguientes criterios
- La hoja maestra se debe generar cada vez que ejecuto una macro borrando la hoja maestra anterior.
- Todos los encabezados de las columnas son idénticos.
- Para la hoja maestra solo se debe copiar un encabezado (es decir, la primera fila no se debe copiar de la segunda hoja).
- Si aparecen valores cero en una celda en particular, entonces esa fila no debe copiarse.
- La hoja maestra debe ordenarse según la columna que menciono al ejecutar la macro. (Es decir, asignaré en el cuadro de mensaje el campo / columna que debe ordenarse en la hoja maestra).
Solución
Tengo una duda de que desea copiar los datos de todos los meses a la hoja maestra O de mes a mes. Asumí todos los meses. En ese caso prueba esta macro.
Prueba secundaria () Dim j tan largo, k tanto tiempo, r como rango j = Hojas de cálculo. Contar con hojas de trabajo ("maestro") Establecer r = rango (. Rango ("A2"), . Rango ("A2"). Fin (xlDown)) r.EntireRow.Delete End With For k = 1 To j If Worksheets (k) .Name = "master" Then GoTo errorhandler With Worksheets (k) If .Range ("A2") = "" Then GoTo errorhandler Establezca r = Rango (.Range ("A2"), .Range ("A2"). End (xlDown)) r.EntireRow.Copy Worksheets ("master"). Cells (Rows.Count, "A"). End (xlUp) .Offset (1, 0) .PasteSpecial End With errorhandler: Siguiente k End Sub
En tu archivo tienes demasiados módulos vacíos. Eliminar todos ellos excepto el módulo 1.
Tenga en cuenta que
Resuelto por venkat1926