Insertar Pivot con Macro

Hola Prozac, sigo con mis macros.
El de ahora consiste en insertar una Pivot con un macro, tengo el código listo, pero una vez más me encuentro con el problema de los rangos, el código establece un rango determinado, pero el mio siempre va a variar. Adjunto el código para ver si tienes alguna solución. Gracias nuevamente experto!

ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Report!A1:AS43", Version:=xlPivotTableVersion12).CreatePivotTable _
TableDestination:="", TableName:="PivotTable1", DefaultVersion _
:=xlPivotTableVersion12

Mi rango es cierto, siempre va a empezar en a1, pero no se en cual celda terminará, siempre va a variar. Alguna idea?

Respuesta
1

Lo más sencillo es crear un rango con nombre. No sé que Excel usas, pero en 2007 está en Formula / Name Management y creas un rango con el nombre que más te guste. En la fórmula escribes:

= OFFSET(Report!$A$2,0,0,COUNTA(Report!$A$2:$A$200),1)

Esto hace que el nombre que hayas elegido se refiera a un rango que cambia según la fórmula (celdas consecutivas no vacías). Y ese nombre lo puedes usar en otras partes, como tu código, fórmulas, listas desplegables...

Otra opción, solo válida para código es usar las funciones End(xlup) o End(xldown) aplicadas a rangos que son el equivalente a seleccionar una celda y pulsar control+flecha arriba o flecha abajo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas