subtotales en una sola linea

23/07/2008 - 11:56 por SOREN | Informe spam
Hola compañeros:
Tengo una lista de datos los cuales los quiero subtotalizar con un campo (
el de la columna a, es decir cuando cambien ese dato que me subtotalice las
demas columnas) como indice de seleccion, pero en cada columna quiero usar
una funcion, es decir, en la columna b que es importe, usar "suma", en la C
que es fecha, usar " maximo" en la columna D que es operacion, usar
"promedio", y todo esto que me lo subtotalice en una sola linea, es decir,
sin que me haga los subtotales en lineas consecutivas.

Hasta ahora tengo que condensar todos los totales en una fila " a mano".
He buscado informacion y no he visto este caso.
¿Me podeis ayudar?

Un saludo
Soren
 

Leer las respuestas

#1 Héctor Miguel
23/07/2008 - 14:19 | Informe spam
hola, 'anonimo/a' ! (de "emagister" ?)

Tengo una lista de datos los cuales los quiero subtotalizar con un campo
(el de la columna a, es decir cuando cambien ese dato que me subtotalice las demas columnas)
como indice de seleccion, pero en cada columna quiero usar una funcion, es decir
en la columna b que es importe, usar "suma", en la C que es fecha, usar "maximo" en la columna D que es operacion, usar "promedio"
y todo esto que me lo subtotalice en una sola linea, es decir, sin que me haga los subtotales en lineas consecutivas.
Hasta ahora tengo que condensar todos los totales en una fila " a mano".
He buscado informacion y no he visto este caso...



necesitas aplicar subtotales por macro (una sola funcion) y agregar/modificar las otras funciones SIN usar ya los subtotales (p.e.)

Dim Celda As Range
Application.ScreenUpdating = False
With Range("a2").CurrentRegion
.Subtotal GroupBy:=1, Function:=xlSum, TotalList:=2, Replace:=1, PageBreaks:=0, SummaryBelowData:=1
End With
For Each Celda In Range("a2").CurrentRegion.Offset(, 1).Resize(, 1).SpecialCells(xlCellTypeFormulas)
Celda.Copy
With Celda.Offset(, 1): .PasteSpecial xlPasteFormulas: .Replace "9,", "4,": End With
Celda.Copy
With Celda.Offset(, 2): .PasteSpecial xlPasteFormulas: .Replace "9,", "1,": End With
Next
Application.CutCopyMode = False

saludos,
hector.

Preguntas similares