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

Artículo Anterior Artículo Siguiente

Los Mejores Consejos