Saltar al contenido

Recommended Posts

publicado

Saludos comunidad

Tengo una pregunta y les agradecería si algunos de ustedes pudiera ayudarme

Es posible que se pueda obter el rago de datos de un pivot table en una celda con alguna formula, si tener que ir al menu, pivot table y luego data source

publicado

Saludos cordiales a todos.

Para evitar conjeturas y deducciones al lector se recomienda dejar un libro de ejemplo, esto ayuda a proponer ideas específicas en caso de tenerlas. En base a lo leído del tema un código como este debería servir. Debe editar a su conveniencia.

Saludos.

Sub ObtenerRangoTablaDinamica()
    Dim pt As PivotTable
    Dim rangoDatos As Range

    ' Ajuste "Hoja2" al nombre de su hoja y "TablaDinamica1" al nombre de su tabla dinámica
    Set pt = Worksheets("Hoja2").PivotTables("TablaDinamica1")

    ' Obtener el rango de datos de la tabla dinámica
    Set rangoDatos = pt.TableRange1

    ' Mostrar el rango de datos en una caja de mensaje
    MsgBox "El rango de datos es: " & rangoDatos.Address
End Sub

image.thumb.png.b499af69b303b47dbb75d74081c5285d.png

publicado

Por si quiere el rango en la celda.

Sub ColocarRangoEnCelda()
    Dim pt As PivotTable
    Dim rangoDatos As Range

    ' Ajuste "Hoja2" al nombre de su hoja y "TablaDinamica1" al nombre de su tabla dinámica
    Set pt = Worksheets("Hoja2").PivotTables("TablaDinamica1")

    ' Obtener el rango de datos de la tabla dinámica
    Set rangoDatos = pt.TableRange1

    ' Colocar el rango de datos en la celda C1 de la Hoja2
    Worksheets("Hoja2").Range("C1").Value = rangoDatos.Address
End Sub

image.thumb.png.2a64fb5338d314d679e70380df4cb85c.png

publicado

Saludos

Despues de probar este ejemplo, veo que me trae el rango que ocupa el pivot table,  pero lo que en realidad busco es que me traiga el rango que ocupa la data de donde se alimenta el pivot

por ejemplo

en la hoja2 tengo el pivot que se alimenta de los datos que estan en la hoja3, lo que me gustaria ver es que rango de datos esta abarcando el pivot de la hoja3 (que es donde estan los datos)

nuevamente muchas gracias

 

publicado

Hola, podrías cambiar esta línea del código de Israel

En 18/6/2024 at 15:11 , Israel Cassales dijo:
Worksheets("Hoja2").Range("C1").Value = rangoDatos.Address

Por esto otro

Worksheets("Hoja2").Range("C1").Value = pt.SourceData

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.