Acumula datos

Hola Fernando
Me copie una rutina de visual, que vi en una de tus respuestas, quisiera adaptarla a mis necesidades, pero como no soy muy diestro en visual a continueción te muestro la rutina y expongo mis dudas.
Sub FormCarga()
OrigSheet = ActiveSheet.Name
Range("A5:G5").Copy
'================== Modificar de acuerdo a tus datos reales
HojaDest = "ACUMULA"
Firstcell = "A1"
'==================
Sheets(HojaDest).Select
Range(Firstcell).Select
LCol = Selection.Column
LCell = Selection.Row
LCell = LCell + Selection.CurrentRegion.Rows.Count
Cells(LCell, LCol).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Cells(LCell, LCol).Select
Sheets(OrigSheet).Select
Range("A5:G5").ClearContents
Range("A5").Select
End Sub
Quisiera saber:
- Como introducir la información en un archivo Nomina1.xls y que acumule en Acumulado.xls.
- Y que otro archivo Nomina2.xls lo acumule en el mismo archivo Acumulado.xls pero en la columna siguiente.
De antemano agradezco tu atención y los conocimientos adquiridos a través de su ayuda.
Williamv

1 respuesta

Respuesta
1
Estuve tratando de buscar la relación entre tu pedido y la macro que copiaste.
Así planteado pareciera que faltan datos porque no indicas en qué momento se debería efectuar la actualización, ni qué datos tomar, ni cual sería la hoja de destino ni la celda/columna...
No te preocupes, pasa con frecuencia: quien escribe la pregunta imagina que uno está viendo el mismo archivo que él. (Y esto, obviamente, no es así)
Sin embargo, tu segunda pregunta hecha un poco de luz y me orienta a pensar que no necesitas una macro.
Usualmente resuelvo este problema con una referencia a las celdas de cada archivo.
Por ejemplo, en tu archivo Acumulado Nominas.xls, en la hoja y celda que quieres mostrar el total de la Semana 1, ingresa una fórmula como esta:
='C:\williamb\Nominas\Semanas\[Nomina Semana 1.xls]TOTAL'!F16
Esta fórmula trae el valor que haya en la celda F16 de una hoja llamada TOTAL, incluida en el archivo Nomina Semana 1.xls que está en un supuesto directorio ('C:\williamb\Nominas\Semanas)
Obviamente adapta esta fórmula a tu escenario.
Si copias esta fórmula a la columna siguiente, simplemente tendrás que cambiar el 1 por dos para que lea tu otro archivo:
='C:\williamb\Nominas\Semanas\[Nomina Semana 2.xls]TOTAL'!F16
Y así con otros archivos que pudieses tener.
La ventaja de usar fórmulas en lugar de macros es que estas se actualizan simplemente usando la opción de actualizar vínculos sin necesidad de abrir los archivos involucrados.
(Algo que puede hacerse, también, al abrir el archivo acumulado a fin de asegurarte que todos los valores estén al día).
Mi sugerencia es que intentes esta solución.
Espero que te ayude a resolver tu problema.
Un abrazo grande1
Fernando
Pues: disculpa la demora pero estuve (y estoy) bastante ocupado estos días y tu pregunta presentaba algún grado de complejidad para resolverla.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas