Dependiendo de las hojas de cálculo con las que esté trabajando, puede resultar beneficioso aprender unir libros de Excel en uno solo,en lugar de abrirlos simultáneamente. Para algunas computadoras, abrir dos o más documentos Excel grandes puede causar retrasos en su sistema.
unir libros de Excel en uno solo también puede ayudarle a trabajar más rápido, ya que localizar y abrir dos archivos puede llevar más tiempo que abrir solo uno. Utilizar un archivo puede permitirle encontrar el conjunto de datos que busca más rápidamente y comenzar a trabajar o presentar su información.
Aquí hay cuatro formas diferentes de fusionar archivos donde también usamos macro VBA.
Mover o Copiar para unir libros de Excel en uno solo
Se pueden copiar inmediatamente una o más hojas de Excel de un libro de trabajo a otro utilizando la herramienta Mover o copiar hoja en Excel. Este método mantendrá cada hoja de trabajo intacta.
- Abra su archivo de Excel.
- Mientras mantiene presionados los botonesCtrl(Windows) oCmd(Mac), elija las hojas que desea copiar al libro de destino. Las hojas que has seleccionado se resaltarán. (Al hacer clic nuevamente en las hojas, se anulará su selección).Nota: alternativamente, si las hojas están adyacentes entre sí, puede seleccionar la primera hoja, mantener presionada la tecla Mayús y seleccionar la última hoja en el rango de hojas.
- Haga clic derecho en la pestaña de una hoja seleccionada y elija;Mover o Copiar;.
- En el cuadro de diálogo resultante, elija el libro de destino.
- Elija dónde insertar las hojas enAntes de la hoja.(Podrás moverlos más tarde si así lo deseas).
- Si desea dejar una copia de las hojas seleccionadas en el archivo fuente, haga clic enCrear una copia.
- SeleccioneAceptar.
Ahora el libro de destino incluirá las hojas seleccionadas.(si necesita unir libros de Excel en uno solo, también puede hacerlo con el método Power Query).
Combinar libros de Excel en uno solo manualmente
Copiar los datos de un archivo a otro es la forma más sencilla y directa de combinar dos archivos de Excel. Este método le permite copiar datos en hojas de trabajo de destino separadas o en una sola hoja de trabajo simplemente por cómo los pega.
- Navegue hasta la hoja de trabajo de origen.
- PresioneCtrl + A(Windows) Cmd + A(Mac) para seleccionar la hoja completa, o seleccione un rango específico para copiar y use Ctrl + Co Cmd + Cpara copiar la selección.
- «>Navegue hasta el libro de destino y agregue una nueva hoja de trabajo si es necesario.
- Después de seleccionar una celda para indicarle a Excel dónde insertar los datos, presione;Ctrl + V;Cmd +V.
Al realizar un Pegar estándar (con Ctrl + V), Excel pegará no solo los valores, sino también las fórmulas, el formato y otros atributos de la celda.
Si solo desea transferir los valores, en lugar de realizar un pegado estándar con Ctrl + V, realice unPegado especial > Valores.Esto pegará solo los valores de las celdas y convertirá las celdas de fórmula en sus valores estáticos resultantes.
Este método funciona en muchas situaciones diferentes, pero no está muy automatizado. Por lo tanto, probablemente sea mejor utilizar esta estrategia en un proyecto único con conjuntos de datos pequeños.
Cómo combinar archivos de Excel mediante enlaces
En Excel, puede utilizar enlaces pegados en una celda de un libro para vincular a otro libro.Este método le permite recuperar un valor de una celda individual ubicada en un libro de trabajo diferente.
- Inicie ambos documentos de Excel.
- Copie una celda en el libro de origen al que le gustaría hacer referencia.
- Navegue hasta el libro de destino.
- Haga clic en la celda donde desea pegar el enlace, seleccione Pegado especial y luegoPegar enlace.
Cuando selecciona Pegar enlace, Excel debería generar la siguiente fórmula automáticamente:
='[archivo.xlsx]hoja'!$A$1
Si desea mostrar otras celdas, puede eliminar los signos de dólar de la fórmula anterior, haciendo que la referencia de la celda sea relativa.Luego simplemente copie y pegue esa fórmula en las otras celdas que desea mostrar.
Si bien este método funciona en escenarios extremadamente simples, no es el método preferido para conectar varias celdas y varias hojas. Estos enlaces externos son frágiles y pueden romperse fácilmente.
Si tiene un conjunto de datos grande o complejo, este método será innecesariamente complicado.Puede terminar con errores que son difíciles de corregir si se insertan filas o columnas, cambia la ubicación de la celda o se mueve, se cambia el nombre o se elimina un archivo sin querer.
Unir libros de Excel en uno solo con una macro
Si desea unir libros de Excel en uno solo usando una macro VBA, considere estos pasos:
Seleccionar cinta: debajo de la cinta Desarrollador en el lado derecho, seleccione la marca Desarrollador. Si la cinta Desarrollador no está visible, haga clic derecho en cualquier cinta y seleccione Personalizar cinta. Desde sus opciones dentro de esta ventana, puede habilitar la cinta Desarrollador.
Usar el comando Visual basic y luego del lado derecho en el nombre de su libro de trabajo y haga clic en Insertar, luego en Módulo. Una vez que lo haga, aparecerá un módulo que requiere código de Visual Basic y podrá ingresar la siguiente información:
- ¡Nota IMPORTANTE! La macro funciona con la siguiente advertencia: los archivos que se van a fusionar no deben estar abiertos físicamente ni en la memoria. En tal caso, obtendrá un error de tiempo de ejecución
Sub MergeExcelFiles() Dim fnameList, fnameCurFile As Variant Dim countFiles, countSheets As Integer Dim wksCurSheet As Worksheet Dim wbkCurBook, wbkSrcBook As Workbook fnameList = Application.GetOpenFilename(FileFilter:="Microsoft Excel Workbooks (*.xls;*.xlsx;*.xlsm),*.xls;*.xlsx;*.xlsm", Title:="Choose Excel files to merge", MultiSelect:=True) If (vbBoolean <> VarType(fnameList)) Then If (UBound(fnameList) > 0) Then countFiles = 0 countSheets = 0 Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Set wbkCurBook = ActiveWorkbook For Each fnameCurFile In fnameList countFiles = countFiles + 1 Set wbkSrcBook = Workbooks.Open(Filename:=fnameCurFile) For Each wksCurSheet In wbkSrcBook.Sheets countSheets = countSheets + 1 wksCurSheet.Copy after:=wbkCurBook.Sheets(wbkCurBook.Sheets.Count) Next wbkSrcBook.Close SaveChanges:=False Next Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic MsgBox "Processed " & countFiles & " files" & vbCrLf & "Merged " & countSheets & "worksheets", Title:="Merge Excel files" End If Else MsgBox "No files selected", Title:="Merge Excel files" End If End Sub
Tenga siempre cuidado al fusionar datos de Excel
Los libros de Excel tienden a volverse más difíciles de mantener cuanto más grandes se vuelven. Incluso si utiliza los métodos más seguros para combinar datos, siempre es mejor planificar con anticipación y pensar en cómo los cambios futuros afectarán sus conjuntos de datos.
También es una buena idea hacer siempre una copia de seguridad de sus archivos antes de fusionarlos (o simplemente mantener copias de seguridad en general). De esa manera, sus libros de trabajo originales seguirán intactos si algo sale mal al combinarlos.
Puede ayudarte a mejorar la documentación.
Si está documentando grandes cantidades de datos para el trabajo diario, combinar periódicamente archivos de Excel más antiguos y utilizar un archivo separado para los datos más recientes puede ayudarle a administrar los datos más fácilmente.
Cuando agrega datos al mismo archivo todos los días, puede resultar difícil trabajar con este archivo y puede tardar más en cargarse a medida que aumenta de tamaño. Combinar archivos de Excel en un archivo que contiene datos anteriores y usar otro archivo para datos recientes puede ayudarle a documentar sus datos diarios más rápidamente y también puede ayudar a establecer un procedimiento de actualización regular.