Sobre PivotTables

16/06/2005 - 09:16 por Farners | Informe spam
Hola a todos,

Tengo un libro donde en algunas hojas hay una tabla dinámica.
Intento escribir un código que haga lo siguiente
1)Recorrer todas las hojas de libro
2) Mirar si en la hoja existe una tabla dinámica (PRIMER PROBLEMA! como
saber si hay tabla dinámica).
3) Si hay tabla dinámica mirar si el campo de página es uno llamado "mes"
(SEGUNDO PROBLEMA! como saber si esa tabla dinámica tiene campo página... en
caso de que no lo tenga, mi código da error)
4) Si el campo página es el campo "mes" quiero que seleccione uno de los
valores de ese campo (TERCER Y GRAN PROBLEMA)
Alguien puede ayudarme en cualquiera (o todos ;-) de los problemas con los
que me encuentro?
Muchísimas gracias a todos,

Farners

Preguntas similare

Leer las respuestas

#1 Luis Garcia
16/06/2005 - 09:44 | Informe spam
"Farners" escribió en el...
Hola a todos,

Tengo un libro donde en algunas hojas hay una tabla dinámica.
Intento escribir un código que haga lo siguiente
1)Recorrer todas las hojas de libro



For Each oSheet In WorkBook.Worksheets

2) Mirar si en la hoja existe una tabla dinámica (PRIMER PROBLEMA! como
saber si hay tabla dinámica).



For Each oPVT In oSheet.PivotTables

3) Si hay tabla dinámica mirar si el campo de página es uno llamado "mes"
(SEGUNDO PROBLEMA! como saber si esa tabla dinámica tiene campo página...


en
caso de que no lo tenga, mi código da error)



For Each oPVF In oPVT.PageFields
If Ucase$(oPVF.Name) = "MES" Then

4) Si el campo página es el campo "mes" quiero que seleccione uno de los
valores de ese campo (TERCER Y GRAN PROBLEMA)



oPVF.CurrentPage = "(Todas)"

Alguien puede ayudarme en cualquiera (o todos ;-) de los problemas con los
que me encuentro?
Muchísimas gracias a todos,

Farners



Saludos
Respuesta Responder a este mensaje
#2 KL
16/06/2005 - 09:57 | Informe spam
Hola Farners,

Prueba el codigo que te pongo a continuacion. Cambia el valor de nombre de
pagina que quieres seleccionar (MiPagina) al valor real. Este codigo ignora
los errores. Si quieres que te avise en caso de que la hoja no tenga tablas
dinamicas, el campo "mes" no exista, la opcion de mes eligida no exista,
etc, tendras que anadir tu manejo de errores.

Saludos,
KL

'--Inicio Codigo
Sub Test()
Dim pt As PivotTable
Dim hoja As Worksheet
Dim MiPagina As String

MiPagina = "Junio"

For Each hoja In ThisWorkbook.Worksheets
For Each pt In hoja.PivotTables
On Error Resume Next
pt.PageFields("mes").CurrentPage = MiPagina
Next pt
Next hoja
End Sub
'--Fin Codigo



"Farners" wrote in message
news:
Hola a todos,

Tengo un libro donde en algunas hojas hay una tabla dinámica.
Intento escribir un código que haga lo siguiente
1)Recorrer todas las hojas de libro
2) Mirar si en la hoja existe una tabla dinámica (PRIMER PROBLEMA! como
saber si hay tabla dinámica).
3) Si hay tabla dinámica mirar si el campo de página es uno llamado "mes"
(SEGUNDO PROBLEMA! como saber si esa tabla dinámica tiene campo página...
en caso de que no lo tenga, mi código da error)
4) Si el campo página es el campo "mes" quiero que seleccione uno de los
valores de ese campo (TERCER Y GRAN PROBLEMA)
Alguien puede ayudarme en cualquiera (o todos ;-) de los problemas con los
que me encuentro?
Muchísimas gracias a todos,

Farners


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida