Como hago para anidar con la función sumar. ¿Si?

Hola a todos:
Tengo un libro de excel llamado pago transportadores en el que hago la liquidación de cada persona en una hoja y tengo 21 hojas activas esto lo hago para cada colegio, al final debo hacer una liquidación que tengo en otro libro, para realizar la sumatoria de cuanto debo pagarle a cada transportador, pero debe tener en cuenta el criterio que es el nombre de cada uno. Ejemplo:
Libro 1 se llama pagos y tengo la hoja 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 estas hojas tienen la misma estructura, pero cada una pertenece a un transportador y al final de cda una en la columna por aparece el total por cada ruta, estos totales debo tenerlos en cuenta para realizar la liquidación en otro libro y verificar que si el nombre del transportador es "tal" debe sumarme todas las columnas por que aparece en las 20 rutas.
Estoy intentando hacerlo con la función sumar.si pero solo me toma la ruta 1, no se como hago para enlazar para que me sume las otras 20 hojas.
De antemano les agradezco su ayuda lo más pronto posible, porque estoy muy angustiada..
Un abrazo...

1 Respuesta

Respuesta
1
Supongo que tienes conocimientos de macros
Suponiendo que el archivo en donde tienes lainformacion se llama Transportes.xls
Primero debemos declarar en que archivo, en que hoja y celda esta el nombre del transportador para que haga la validación.
Suponiendo que esta el la celda a1 de la hoja1 del archivo pagos
Dim Rura As String
Ruta = WorkBooks("Pagos.xls").Sheets("Hoja1").Range("a1").value
'Con este codigo habres el archivo transportes
ChDir "C:\Respaldo Sist Fact"
    Workbooks.Open Filename:="C:\Transportes.xls"
Seleccionamos la Hojacon que tiene el nombre que tu pusiste en la celda a1 de la hoja1 del archivo pagos
Sheets("Ruta").select
Seleccionamos la celda x2 en donde va a inicial el conteo
Range("x2").select
Creamos un Bucle para que realice la suma
Declaramos que Total es igual a cero
Total = 0
Indicamos que el buleva a iniciar en la celda x2 y va a terminar cuando la celda activa de la columna por este vacía
Do Until ActiveCell.Value = ""
Total = Total + ActiveCell.Value
ActiveCell.Offset(1,0).select
Loop
la suma que se obtuvo la ponemos en la celda c1 de la hoja1 del archivo pagos
WorkBooks("Pagos.xls").Sheets("Hoja1").Range("c1").Value = Total
Range("a1").select
Cerramos el libro Transportes
ActiveWorkBook. Close
Seleccionamos la hoja1
Sheets("hoja1").select
Eset proceso te realiza la sumatoria de la columna por de la hoja que se encuentra en el archivo transportes de la hoja que tu escriber es la celda a1 de la hoja1 delarchivo pagos
y la suma te la pone en la celda c1 del mismo archivo
el proceso reconoce el nombre de la hoja que quieres sumar con el valor que hay en la celda a1 de la hoja1
para que la macro seleccione esa hoja y hay realice la suma de la cilumna por comenzando en la x2
Nota:
No debe haber celdas vaciar dentro dela columna, en la primera celda vacía que encuentre hay terminara de sumar.
Más información
Hola: Experto
Muchísimas gracias por tus indicaciones, quiero contarte que no manejo macros pero que ya solucione el problema, cree dentro de cada hoja de calculo de los transportadores por cada colegio una hoja llamada resumen y allí agrupe los valores, luego en otro libro llamado liquidaciones que es donde deben ir los consolidados de todos los colegios y empresas, utilice la función sumar si y me funciona perfectamente.
Ahora tengo otro inconveniente que es como hago para copiar esta formula de sumar si =SUMAR.SI('RESUMEN SANTA MARIA'!A5:A25;A103;'RESUMEN SANTA MARIA'!C5:C25) para 160 celdas verticalmente  y que se conserve como una constante, ya que hasta el momento me ha tocado modificarla manual, pero son 50 empresas y se me hace demasiado dificil, si puedes ayudame te lo agradeceria toda la vida.
Muchísimas gracias y que Dios te bendiga.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas