Sumar varias archivos de excel

Buen día, quisiera saber si me puede ayudar, tengo 4 archivos que tienen el mismo formato, solo cambian los datos numéricos y tengo un quinto archivo en el cual va el resultado de la suma de estos datos numéricos. Ejemplo:
celda(B2)archivo5=celda(B2)archivo1+celda(B2)archivo2+celda(B2)archivo3+celda(B2)archivo4
Podría generar una macro para que se hiciera esta suma, por que actualmente me tardo mucho abriendo cada archivo y sumándolo manualmente.
De antemano agradezco la atención que me de.

1 Respuesta

Respuesta
-1
A continuación te envío una macro que ejecuto desde un archivo que se llama "Consolidado" vendría a ser como el 5 archivo que manejas donde guardaras la información de todos los otros archivos.
Te coloco el código completo de 4 archivos diferentes que se copian en uno mismo, la diferencia es que este archivo copia una información de un archivo debajo del anterior, según me comentas solo necesitas las datos de una celda en particular para que después haga una suma, pero te coloco en negritas los eventos que debes hacer (4 veces si son 4 archivos)
Sub Consolidar()
' Asumimos que los archivos están en una carpeta llamada Consolidar bajo el disco C}
ruta = "D:\Documents and Settings\javier.mitrotti\Desktop\ARCHIVOS\CONSOLIDADO\"
' Abrimos los 4 archivos
Workbooks.Open Filename:=ruta + "APEREZ.xls"
Workbooks.Open Filename:=ruta + "BMARTINEZ.xls"
Workbooks.Open Filename:=ruta + "CLINARES.xls"
Workbooks.Open Filename:=ruta + "DCENIO.xls"
' Seleccionamos la hoja Base del archivo Consolidado y la inicializamos.
' Dejamos los nombres de los campos, que se supone que están en la fila 1
Workbooks("Consolidado.xls").Activate
Sheets("Base").Select
' Averiguamos la última fila grabada en este archivo
ufila = Range("A1").End(xlDown).Row
' Borramos los datos
Range("A2:Z" + Format(ufila)).ClearContents
' Copiamos los datos del primer archivo
Workbooks("APEREZ.xls").Activate
Sheets("hoja1").Select
ufila1 = Range("A1").End(xlDown).Row
Range("A2:Z" + Format(ufila1)).Copy
Workbooks("Consolidado.xls").Activate
Sheets("Base").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

Workbooks("BMARTINEZ.xls").Activate
Sheets("hoja1").Select
ufila2 = Range("A1").End(xlDown).Row
Range("A2:Z" + Format(ufila2)).Copy
Workbooks("Consolidado.xls").Activate
Sheets("Base").Select
Range("A" + Format(ufila1 + 1)).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Workbooks("CLINARES.xls").Activate
Sheets("hoja1").Select
ufila3 = Range("A1").End(xlDown).Row
Range("A2:Z" + Format(ufila3)).Copy
Workbooks("Consolidado.xls").Activate
Sheets("Base").Select
Range("A" + Format(ufila1 + ufila2)).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Workbooks("DCENIO.xls").Activate
Sheets("hoja1").Select
ufila4 = Range("A1").End(xlDown).Row
Range("A2:Z" + Format(ufila4)).Copy
Workbooks("Consolidado.xls").Activate
Sheets("Base").Select
Range("A" + Format(ufila1 + ufila2 + ufila3)).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Workbooks("APEREZ.xls").Close
Workbooks("BMARTINEZ.xls").Close
Workbooks("CLINARES.xls").Close
Workbooks("DCENIO.xls").Close
No es muy complicado, pero si no me he explicado bien, preguntame o enviame los datos exactos que deseas utilizar de los archivos, si puedes enviame un archivo con el formato para colocarte las celdas a copiar.
Perdón, pero no te entendí, ¿a dónde te puedo mandar los archivos?
Envialo a:
[email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas