SUMAR DE VARIAS HOJAS ??

14/01/2009 - 00:52 por Orfao | Informe spam
Hola Grupo ! Felicidades a todos..
Tengo un problemita :
En un libro con cerca de 200 hojas
deseo obtener la Suma de todos las celdas a1 desde la hoha 3 hasta la 89 (Ej)
Tal vez con una formula matricial?? o sumaproducto, o indirecto o desref o
algo por el estilo ??? (para un archivo que no se haya guardado aun, es decir
sin usar el vinculo a la ruta del archivo)
Nesecito de vuestra valiosa ayuda.

Me alimento del conocimiento de todos

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
14/01/2009 - 02:15 | Informe spam
hola, moises !

En un libro con cerca de 200 hojas deseo obtener la Suma de todos las celdas a1 desde la hoha 3 hasta la 89 (Ej)
Tal vez con una formula matricial?? o sumaproducto, o indirecto o desref o algo por el estilo ???
(para un archivo que no se haya guardado aun, es decir sin usar el vinculo a la ruta del archivo) ...



se entiende +/- asi:
- de un libro con 200 hojas (ya guardado y abierto en la sesion)
- necesitas en un libro nuevo (SIN guardar) sumar la celda A1 desde la hoja3 a la hoja89 del otro libro
es correcto ?

asumiendo que las hojas estan ordenadas (hoja1, hoja2... hoja200) prueba la funcion suma en directo (en el libro nuevo)
[celda X] =suma(
- te cambias al libro con las 200 hojas
- seleccionas la hoja3 y la celda A1
- desplazas la barra horizontal hasta "ver" la hoja89
- pulsas la tecla shift y seleccionas esa hoja89
- cierras el parentesis de la funcion suma -> ) y pulsas enter

luego, una vez obtenido el resultado, pulsas las teclas {F2} {F9} {enter}
listo... se elimina la referencia y se conserva el valor de la suma

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Orfao
14/01/2009 - 04:42 | Informe spam
Hola Hector ! Gracias.
En realidad lo que necesito es que en el mismo libro aplique una formula
que me sume de diferentes hojas, Es decir por ejemplo:
nombre de la hoja5»-C
nombre de la hoja7¿-A
nombre de la hoja8=GN-L
nombre de la hoja15=GO-L
nombre de la hoja19=IA-C
y necesito sumar BB-C!A1 + BF-A!A1 + GN-L!A1
entonces trate de hacer algo asi:
en una hoja cualquiera coloco en columnas sucesivas los nombres de las hojas
que deseo sumar ej:
b c d
3 BB-C!A1 BF-A!A1 GN-L!A1

y luego intente suma(indirecto(b3:d3))

pero no me funciona ??

Los nombres de las hojas colocados en b3:d3 son producto de una funcion que
une los nombres de una lista y les agrega la direccion de fila y columna que
obtiene de otros resultados. en otras celdas
por lo que no siempre se sumaran las hojas en forma consecutiva y no siempre
sera la misma celda.

Podra Lograrse esto sin el uso de macros ??
tal vez con ??? desref, indirecto, direccion, celda, sumar.si, o quiza
(en ultima instancia) con una funcion personalizada .. ???
ah ! seme olvidaba.. trabajo con 2003.

Gracias de nuevo..

Respuesta Responder a este mensaje
#3 Héctor Miguel
14/01/2009 - 05:17 | Informe spam
hola, moises !

para el ejemplo que expones, prueba combinando sumaproducto(... con sumar.si(... e indirecto(...
- pon SOLO los nombres de las hojas en "el rango" (p.e.) [B3] bb-c [C3] bf-a [D3] gn-l

- en la celda donde necesites la suma de la celda [A1] de esas hojas, usa esta formula (en la misma hoja):
=sumaproducto(sumar.si(indirecto("'"&b3:d3&"'!a1"),"<>"))

OJO: la celda o el rango (en este caso la celda [A1]) habra de ser la misma para todas las hojas :-((

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

__ OP __
En realidad lo que necesito es que en el mismo libro aplique una formula que me sume de diferentes hojas
Es decir por ejemplo:
nombre de la hoja5»-C
nombre de la hoja7¿-A
nombre de la hoja8=GN-L
nombre de la hoja15=GO-L
nombre de la hoja19=IA-C
y necesito sumar BB-C!A1 + BF-A!A1 + GN-L!A1
entonces trate de hacer algo asi:
en una hoja cualquiera coloco en columnas sucesivas los nombres de las hojas que deseo sumar ej:
b c d
3 BB-C!A1 BF-A!A1 GN-L!A1
y luego intente suma(indirecto(b3:d3))
pero no me funciona ??

Los nombres de las hojas colocados en b3:d3 son producto de una funcion que une los nombres de una lista
y les agrega la direccion de fila y columna que obtiene de otros resultados en otras celdas
por lo que no siempre se sumaran las hojas en forma consecutiva y no siempre sera la misma celda.

Podra Lograrse esto sin el uso de macros ??
tal vez con ??? desref, indirecto, direccion, celda, sumar.si, o quiza (en ultima instancia) con una funcion personalizada .. ???
ah ! seme olvidaba.. trabajo con 2003.
Respuesta Responder a este mensaje
#4 Orfao
15/01/2009 - 03:04 | Informe spam
Hola Hector !
probe tu formula =sumaproducto(sumar.si(indirecto("'"&b3:d3&"'!a1"),"<>"))
y funciona !, pero...
si no existe alguna de las hojas que aparenen en el rango me genera un error
#!REF!
como puedo evitar el error ?
siguiendo con el mismo ejemplo y supongiendo que:
BB-C!A1 (existe)
BF-A!A1 (no existe)
GN-L!A1(Existe)
como logro que sume BB-C!A1 + GN-L!A1 y obvie BF-A!A1 (No existe)
y...otra cosita
me podrias explicar lo del criterio "<>" (Diferente a que ? )
y por que no funciona simplemente con
{=SUMA(INDIRECTO("'"&B3:D3&"'!f45"))}
ni siquiera que coloque esta formula en una celda Ej: C10
y luego en D10 coloque sumaproducto(C10)
Gracias.
( se que aun me queda mucho por aprender )


Me alimento del conocimiento de todos
Respuesta Responder a este mensaje
#5 Héctor Miguel
15/01/2009 - 07:46 | Informe spam
hola, moises !

1) la funcion indirecto(... (hasta donde se)
- no trabaja de manera transparente con rangos 3-d (hay que "pasarla" por otro tipo de "filtrado")
- tampoco trabaja sobre libros cerrados (y es por esta misma razon que...)
- tampoco trabaja con nombres de hojas que no existen :-((

2) es solo "por llenar" el segundo argumento de la funcion sumar.si(... (o sea, el criterio)
y da igual si lo cambias (p.e.) por ">0" o "<>0" o... ???

3) al usar solamente la funcion =indirecto("'"&b3:d3&"'!f45")

a) si pulsas {F2} + {F9} podras ver la matriz resultante -> los valores de [F45] de las hojas indicadas en [B3:D3]

b) la formula matricial: -> {=suma(indirecto("'"&b3:d3&"'!f45"))} solo considera el primer elemento de "la matriz"
esta es una de las "restricciones" de la funcion indirecto(... :-((

c) para poder "acumular" los valores en dicha matriz utilizas:
-> un sumaproducto(... "filtrando" la funcion indirecto(... dentro de la funcion contar.si(...

si cualquier duda... comentas ?
saludos,
hector.

__ 1 __
probe tu formula =sumaproducto(sumar.si(indirecto("'"&b3:d3&"'!a1"),"<>")) y funciona !, pero...
si no existe alguna de las hojas que aparenen en el rango me genera un error #!REF!
como puedo evitar el error ? siguiendo con el mismo ejemplo y supongiendo que:
BB-C!A1 (existe)
BF-A!A1 (no existe)
GN-L!A1(Existe)
como logro que sume BB-C!A1 + GN-L!A1 y obvie BF-A!A1 (No existe)


__ 2 __
y...otra cosita me podrias explicar lo del criterio "<>" (Diferente a que ?)


__ 3 __
y por que no funciona simplemente con {=SUMA(INDIRECTO("'"&B3:D3&"'!f45"))}
ni siquiera que coloque esta formula en una celda Ej: C10 y luego en D10 coloque sumaproducto(C10)
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida