Grupos de Google ya no admite nuevas publicaciones ni suscripciones de Usenet. El contenido anterior sigue siendo visible.

Tablas Dinámicas con VBA Excel.

Visto 40 veces
Saltar al primer mensaje no leído

Daniel R

no leída,
3 oct 2006, 16:32:013/10/06
a
Saludos Programadores

Tengo una tabla dinámica en Excel 2003 cuyo origen de datos es un vista en
Sql Server 2000. Esta Tabla Dinámica (Pivot Table), tiene un "campo de
página" el cuál deseo cambiar de valor mediante VBA. Es decir, seleccionar un
valor de la lista de este campo mediante código en VBA.

Muchas gracias

Daniel R.
Caracas - Venezuela.

Héctor Miguel

no leída,
4 oct 2006, 0:25:294/10/06
a
hola, Daniel !

> ... tabla dinamica... origen de datos... en Sql Server 2000
> ... tiene un "campo de pagina"... deseo cambiar de valor mediante VBA
> ... seleccionar un valor de la lista de este campo mediante codigo en VBA.

1) la siguiente instruccion establece como valor 'seleccionado' del campo de pagina 1: -> (Todos)
-> [toma nota que 'este' elemento debe ser en ingles si se utiliza por codigo vba: -> (All) :D

ActiveSheet.PivotTables(1).PageFields(1).CurrentPage = "(all)"

2) si suponemos que sabes/conoces/... [+/- exactamente] el nombre/valor del elemento 'a seleccionar'...
solo sustituye el dato entre comillas -> "(all)" por el dato 'real' que necesitas ;)

3) si suponemos que NO sabes/conoces/... cuales son los elementos 'seleccionables'... -?-
el siguiente ejemplo te los muestra en un cuadro de mensajes [obviamente, puedes utilizar matrices, etc.]

Dim Sig As Byte, Msj As String
With ActiveSheet.PivotTables(1).PageFields(1)
Msj = "Elementos de " & .Name
For Sig = 1 To .PivotItems.Count
Msj = Msj & vbCr & Sig & ") " & .PivotItems(Sig).Name
Next
End With
MsgBox Msj

4) si suponemos que 'la cosa' [en la realidad] es ligeramente menos... 'sencilla' -?-
-> ya puedes comenzar a proporcionar los detalles faltantes ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.


Daniel R

no leída,
4 oct 2006, 8:30:014/10/06
a
Estimado Hector.

Gracias por tu respuesta, me ha servido, aunque tienes un forma muy
particular y graciosa de expresarte en tu redacción, imagino orientada a
muchos que ni siquiera saben que es lo que quieren...

Estaba bien encaminado en mi solución... sólo que en vez de PageField
utilizaba PivotField...

Thanks again

Daniel R

0 mensajes nuevos