Excel - estoy deseperada

 
Vista:

estoy deseperada

Publicado por ahayyhy (16 intervenciones) el 30/04/2007 10:08:50
Hola,

Recurro a ustedes porque ya estoy desesperado, no sé que hacer.

Tengo un libro con unas 500 hojas y quisiera hacer unos resúmenes, para eso necesito realizar fórmulas condicionadas, pero no me deja porque son demasiado grandes, por tanto recurro a macros, el problema reside en que no sé como decirle a la macro que busque en todo el libro.



Me explico: La macro debería decir algo así como:

SI la celda (1,3) es = A y la celda (1,7) es = B, entonces suma en esta celda el valor de la celda (b,8). Y esto para todas las hojas, podrían ayudarme??

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:estoy deseperada

Publicado por José Luis (700 intervenciones) el 04/05/2007 17:20:13
Pues con lo que explicas poco podemos hacer.
¿Podrías aclararlo un poco?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:estoy deseperada

Publicado por ahayyhy (16 intervenciones) el 04/05/2007 22:24:14
si claro.

Vamos a ver.
Tengo un libro de excel con 500 hojas que almacenan datos.
Pretendo hacer unos "resúmenes" de estos datos, para ello necesitaría utilizar la fórmula si, pero no puedo porque me dice que es demasiado grande.
Entonces tengo que utilizar una macro del tipo If ... then. El problema lo tengo en que yo, hasta ahora, siempre había realizado este tipo de macros sobre una hoja en concreto, y ahroa necesito que en vez de buscar las condiciones en una determinada hoja, lo haga en todas las hojas del libro.

Ejemplo a ver si me entendeis mejor.

Hoja 1.
Lunes Martes Miercoles Jueves Viernes
Pedro 8 8 8 8 8
Juan 8 6 8 8 8
Luis 8 8 8 8 8
Hoja 2.
Lunes Martes Miercoles Jueves Viernes
Pedro 3 8 8 8 8
Juan 8 8 8 5 8
Luis 8 8 8 8 4

.... así hasta 500 hojas:
Entonces lo que necesito es: Si celda (de todas las hojas) A2 = Pedro y celdas (rango b2 hasta g2) mayor o igual a 8, súmamelo en un determinado sitio (una celda cualquiera de la hoja resumen).
Yo sé hacerlo de la siguiente manera:
for x = X to XX
for y = Y to YY
if hoja1.cells(2,1)=Pedro and hoja1.cells(2,y)>=8 then
hojaresumen.cells(1,1) =sum hoja1.cells(2,y)
end if
(lo mismo para la hoja 2, 3 ... hasta todas las hojas)
next

Pero lo que quisiera es sustituir ese Hoja1por algo que me buscase automáticamente en todas las hojas. No sé si ahora ha quedado más o menos claro que antes.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:estoy deseperada

Publicado por José Luis (700 intervenciones) el 04/05/2007 23:28:46
Esto te puede servir, asume que la hojaresumen está en la hoja3.

Suma = 0
For i = 1 To Sheets.Count ' Recorre las hojas
For x = 2 To 10 ' Recorre la columna A desde la celda 2 hasta la 10
For y = 2 To 7 ' Recorre la fila X desde B hasta G
If Sheets(i).Cells(x, 1) = "PEDRO" And Sheets(i).Cells(x, y) >= 8 Then
Suma = Suma + Sheets(i).Cells(x, y).Value
End If
Next y
Next x
Next i

Hoja3.Cells(1, 1) = Suma

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:estoy deseperada

Publicado por ahayyhy (16 intervenciones) el 05/05/2007 08:50:53
Muchiiiisimas gracias!!! lo que no sabia era que poniendo desde 1 hasta sheets.count te recorria todas las hojas, muchas gracias de nuevo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar