Tabla dinámica en macro
Tengo inconvenientes en el funcionamiento de una macro que utilizo y que paso a comentarte
Todos los meses corro una macro que toma datos de una planilla excel y los convierte en una tabla dinámica.
La cantidad de registros se incrementa mes a mes y mi macro de tabla dinámica se mantiene siempre invariable en el rango que utilizo.
Para actualizar ese rango debo hacerlo de forma manual y saber que rango debe tomar de ese archivo.
¿Cómo se puede hacer para actualizar ese rango en forma automática cada vez que se procesa la macro?
Este es el detalle de la macro donde muestra el rango a tomar para la tabla dinámica.
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Hoja1!R1C1: (ESTE EL DATO QUE TENGO QUE CAMBIAR TODOS LOS MESES )---------> R2083C5").CreatePivotTable TableDestination:="", TableName:="Tabla dinámica1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
With ActiveSheet.PivotTables("Tabla dinámica1").PivotFields("pep")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("Tabla dinámica1").PivotFields("Ejercicio SAP")
.Orientation = xlColumnField
.Position = 1
End With
ActiveSheet.PivotTables("Tabla dinámica1").AddDataField ActiveSheet.PivotTables _
("Tabla dinámica1").PivotFields(" Alta"), "Suma de Alta", _
xlSum
ActiveWorkbook.ShowPivotTableFieldList = False
Application.CommandBars("PivotTable").Visible = False
Todos los meses corro una macro que toma datos de una planilla excel y los convierte en una tabla dinámica.
La cantidad de registros se incrementa mes a mes y mi macro de tabla dinámica se mantiene siempre invariable en el rango que utilizo.
Para actualizar ese rango debo hacerlo de forma manual y saber que rango debe tomar de ese archivo.
¿Cómo se puede hacer para actualizar ese rango en forma automática cada vez que se procesa la macro?
Este es el detalle de la macro donde muestra el rango a tomar para la tabla dinámica.
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Hoja1!R1C1: (ESTE EL DATO QUE TENGO QUE CAMBIAR TODOS LOS MESES )---------> R2083C5").CreatePivotTable TableDestination:="", TableName:="Tabla dinámica1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
With ActiveSheet.PivotTables("Tabla dinámica1").PivotFields("pep")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("Tabla dinámica1").PivotFields("Ejercicio SAP")
.Orientation = xlColumnField
.Position = 1
End With
ActiveSheet.PivotTables("Tabla dinámica1").AddDataField ActiveSheet.PivotTables _
("Tabla dinámica1").PivotFields(" Alta"), "Suma de Alta", _
xlSum
ActiveWorkbook.ShowPivotTableFieldList = False
Application.CommandBars("PivotTable").Visible = False
1 respuesta
Respuesta de ivnxls
1