Red de conocimiento informático - Aprendizaje de código fuente - ¿Cómo fusionar varias tablas EXECL con el mismo encabezado?

¿Cómo fusionar varias tablas EXECL con el mismo encabezado?

Método 1: Método de control de comandos de macros

Es posible que hayas oído hablar de la función de macros de la familia Office durante mucho tiempo, pero debido a que requiere el uso de VBA para la programación, las macros Siempre han sido prohibitivos para muchas personas, pero es mucho más fácil usar una macro ya preparada. Primero abra la hoja de Excel a procesar, seleccione "Herramientas → Macro → Editor de Visual Basic", haga doble clic en Hoja1 en la ventana izquierda del editor, aparecerá una ventana de edición de código, ingrese el siguiente código en la ventana de edición de código (en Para no destruir el original Hay una tabla de salarios, por lo que aquí se usa el método de copiar el contenido de la Hoja1 a la Hoja2, por lo que el resultado final generado se muestra en la Hoja2):

Sub MakeSalaryList()

Dim i As Integer

Dim endrow As Integer

'Mida la última fila de datos

endrow = Sheet1.Range("a65536 ").End(xlUp) .Row - 1

'Pegue el título

Worksheets(1).Range("1:1").Copiar (Worksheets(2). Cells(1, 1) )

For i = 3 To endrow

'Pegue el encabezado de cada dato

Worksheets(1).Range( "2:2"). Copiar (Worksheets(2).Cells(3 * i - 7, 1))

'Pegar los datos

Worksheets(1).Range( Celdas(i, 1), Celdas(i, 256)).Copiar (Hojas de trabajo(2).Celdas(3 * i - 6, 1))

Siguiente i

Fin Sub

Cierre el editor y volverá automáticamente a la hoja de Excel. Seleccione "Herramientas → Macro → Macro" y aparecerá el siguiente cuadro de diálogo:

Haga clic en "Ejecutar". " y Gz-2 se generará en la Hoja 2. ¿Qué tal si lo convertimos en una nómina como se muestra? No es complicado. Por supuesto, si su tabla Hoja2 ya ingresó otro contenido, puede copiarlo a la Hoja3 para generarlo. La modificación del código también es muy simple: simplemente cambie la Hoja2 a la Hoja3 y los otros códigos permanecerán sin cambios.

Método 2: método de llenado de fórmulas

En comparación con los comandos macro, el método de llenado de fórmulas es más fácil de entender, pero requiere un poco más de pasos manuales. "No puedes tener tu pastel y. cómelo también." ”, qué método utilizar depende de su preferencia.

Primero abra la tabla de salarios de Excel para operar. Para no destruir la estructura de la tabla original (Hoja1), todavía utilizamos el método de operación en la Hoja2. Dado que esta tabla de salarios tiene L columnas y 18 filas, y el elemento del encabezado que se copiará está en la segunda fila, ingrese la siguiente fórmula en la primera celda:

=IF(MOD( ROW(), 2 )=0, INDEX(hoja1!$A:$L, INT(((ROW() 1)/2)) 2, COLUMNA()), hoja1!A$2)

El siguiente trabajo es simple, solo necesitamos usar el controlador de relleno para completar esta fórmula en otras celdas, completar la columna hasta la columna L y completar la fila hasta la fila 18, y listo.

Debido a que hay muchos lugares donde es necesario modificar esta fórmula en diferentes tablas, aquí hay una explicación:

Dado que las filas impares en la nómina son encabezados, las pares Las filas numeradas son datos, por lo que en esta fórmula, las filas pares e impares se juzgan primero. Si es un número impar de filas, tome directamente los datos de la celda A2 de la tabla de salarios (es decir, hoja1! A$2 en la fórmula. . Si los datos del encabezado están en la 4ta fila y la tercera columna, modifíquelo a hoja1!C$4). Si es un número par de filas, use la función INDEX() para obtener el número. El primer parámetro de esta función es especificar un rango de números en la tabla de salarios (es decir, hoja1!$A:$L. Si no es de la columna A a L, entonces puede modificar este parámetro, como cambiarlo a hoja1! $B$P , lo que significa tomar el número entre las columnas B a P). Por supuesto, si desea colocar los datos convertidos en la Hoja3 en lugar de la Hoja2, entonces solo necesita realizar las operaciones anteriores en la Hoja3 y no es necesario modificar el contenido de la fórmula (consulte la Figura 4).

El uso de este método no puede insertar automáticamente filas en blanco, lo que causará algunos problemas al cortar después de la impresión. Por lo tanto, se recomienda seleccionar todas las celdas después de terminar y ajustar la altura de la fila y el ancho de la columna. resolver este problema.

Método 3: Método de combinación de correspondencia en Word

Para aquellos que no son muy hábiles en el uso de macros y fórmulas, no os preocupéis, hay otro truco esperándoos aquí.

Primero, determinamos el documento principal (formulario de salario) y la fuente de datos (tabla de registros en formato Excel o Access), y luego fusionamos la información del campo en la fuente de datos a través del asistente "Combinar correspondencia".

Haga clic en "Herramientas → Cartas y correo → Combinar correspondencia" y luego ingrese al asistente "Combinar correspondencia" en el lado derecho de la pantalla. Paso 1: seleccione el tipo de documento. Seleccione "Carta". Paso 2: seleccione Iniciar documento. Seleccione el valor predeterminado "Usar documento actual". Paso 3: seleccione los destinatarios. Haga clic en el botón "Examinar" en el área "Usar lista existente", use el cuadro de diálogo "Seleccionar fuente de datos" para ubicar la ubicación de almacenamiento de la fuente de datos de formato, selecciónela y ábrala. Luego aparece el cuadro de diálogo "Destinatarios de combinación de correspondencia", donde puede especificar los registros que participan en la combinación de correspondencia, seleccionar el valor predeterminado "Todos" y confirmar para regresar a la ventana de edición de Word. Paso 4: escribe la carta. Coloque el punto de inserción en la primera celda de la segunda fila de la tabla, haga clic en el botón "Insertar campo" a la izquierda de "Insertar campo de Word" en la barra de herramientas "Combinar correspondencia", abra el cuadro de diálogo "Insertar campo de combinación", y seleccione "Campo" Seleccione el campo "Número de serie" en el cuadro de lista a continuación y haga clic en el botón "Insertar" para fusionar el campo "Número de serie" en el documento principal. Luego utilice el mismo método para insertar los campos restantes en las posiciones correspondientes en la tabla del documento principal. Paso 5: vista previa de la carta. Aquí podemos explorar el efecto general de la nómina y también ajustar el ancho de la tabla "Nombre" para que el nombre se muestre en una línea. Luego seleccione el área de la tabla después de "Nombre", haga clic con el botón derecho del mouse y seleccione "Distribuir columnas uniformemente" en el menú emergente para que estas columnas tengan el mismo ancho y hacer que la franja salarial sea más hermosa. Si ingresa a la operación de impresión directamente de esta manera, solo puede imprimir un recibo de salario en una página, así que seleccione toda la tabla de recibos de salario, cópiela y péguela en el lugar después de la línea vacía debajo de la tabla original y coloque el punto de inserción. en el primer y segundo lugar del documento principal. En la fila en blanco entre las tablas, haga clic en el botón "Insertar campo de Word" en la barra de herramientas "Combinar correspondencia", seleccione el comando "Siguiente registro" en el menú emergente y. Así sucesivamente, puede crear una página en una página y organizar algunos programas salariales más para aprovechar al máximo los recursos. Finalmente ingresa al sexto paso: completar la fusión. Luego imprima el recibo de sueldo y se completará la producción (ver Figura 5).

Bien, ya no necesita duplicar laboriosamente el trabajo para crear una tabla de datos de nómina. Simplemente convirtiendo una tabla de datos, puede lograr dos funciones completamente diferentes.

Puedes consultarlo y darme puntos después de leerlo