datos de origen de una tabla dinamica

25/07/2008 - 02:22 por Paolita | Informe spam
Tengo una macro donde actualizo una tabla dinamica y quiero que su
fuente de origen sea otra tabla dinamica tengo este codigo y me marca
error como hago referencia despues de SourceData a la tabla

ActiveSheet.PivotTableWizard SourceType:=xlPivotTable,
SourceData:="noti!Tb_din"


la tabla dinamica tiene el nonbre Tb_din y la hoja se llama noti

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
25/07/2008 - 02:45 | Informe spam
hola, Paolita !

Tengo una macro donde actualizo una tabla dinamica y quiero que su fuente de origen sea otra tabla dinamica
tengo este codigo y me marca error como hago referencia despues de SourceData a la tabla
ActiveSheet.PivotTableWizard SourceType:=xlPivotTable, SourceData:="noti!Tb_din"
la tabla dinamica tiene el nonbre Tb_din y la hoja se llama noti



1) el metodo PivotTableWizard (aunque no presenta al asistente)...
-> crea el origen (o re-defne el arreglo) de una TD
es lo mismo que usar el asistente para casi-casi empezar desde CERO la definicion y el arreglo de los campos de la TD
REQUIERE: que la hoja donde se ha de activar el asistente...
a) o NO contenga ninguna TD (dicha hoja se auto-activa despues del asistente) o...
b) o SEA la hoja activa y la primer celda de la TD este como activa -tambien-
de lo contrario, el metodo PovotTableWizard fallara !!!

2) si lo que buscas es (efectivamente) modificar el origen de tu TD de manera interactiva (a traves del asistente) ?
se necesita activar el rango (de la TD en concreto) y mostrar el (dialogo del) asistente de TD's
el siguiente ejemplo supone que tienes activa una seleccion (de varias celdas) y quieres -despues- regresar ahi...
Sub Modificar_TD_x_Asistente()
Dim Volver_A As String, Activa As String
Volver_A = Selection.Address
Activa = ActiveCell.Address
ActiveSheet.PivotTables(1).TableRange1.Activate
Application.Dialogs(xlDialogPivotTableWizard).Show
Range(Volver_A).Activate
Range(Activa).Activate
End Sub

probablemente haya otras formas de "ver" y buscar soluciones a tu situacion, por lo que...
si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Paolita
25/07/2008 - 03:46 | Informe spam
On 24 jul, 20:45, "Héctor Miguel"
wrote:
hola, Paolita !

> Tengo una macro donde actualizo una tabla dinamica y quiero que su fuente de origen sea otra tabla dinamica
> tengo este codigo y me marca error como hago referencia despues de SourceData a la tabla
> ActiveSheet.PivotTableWizard SourceType:=xlPivotTable, SourceData:="noti!Tb_din"
> la tabla dinamica tiene el nonbre Tb_din y la hoja se llama noti

1) el metodo PivotTableWizard (aunque no presenta al asistente)...
-> crea el origen (o re-defne el arreglo) de una TD
    es lo mismo que usar el asistente para casi-casi empezar desde CERO la definicion y el arreglo de los campos de la TD
    REQUIERE: que la hoja donde se ha de activar el asistente...
    a) o NO contenga ninguna TD (dicha hoja se auto-activa despues del asistente) o...
    b) o SEA la hoja activa y la primer celda de la TD este como activa -tambien-
        de lo contrario, el metodo PovotTableWizard fallara !!!

2) si lo que buscas es (efectivamente) modificar el origen de tu TD de manera interactiva (a traves del asistente) ?
    se necesita activar el rango (de la TD en concreto) y mostrar el (dialogo del) asistente de TD's
    el siguiente ejemplo supone que tienes activa una seleccion (de varias celdas) y quieres -despues- regresar ahi...
Sub Modificar_TD_x_Asistente()
  Dim Volver_A As String, Activa As String
  Volver_A = Selection.Address
  Activa = ActiveCell.Address
  ActiveSheet.PivotTables(1).TableRange1.Activate
  Application.Dialogs(xlDialogPivotTableWizard).Show
  Range(Volver_A).Activate
  Range(Activa).Activate
End Sub

probablemente haya otras formas de "ver" y buscar soluciones a tu situacion, por lo que...
si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.



ME MARCA EL ERROR:
Se ha producido el erro '1004' en tiempo de ejecución
Error en el método PivoTableWizard de la clase Worksheet.
lo que quiero es hacer referencia a otra tabla dinamica que esta en
otra hoja
Respuesta Responder a este mensaje
#3 Héctor Miguel
25/07/2008 - 06:38 | Informe spam
hola, Paolita !

ME MARCA EL ERROR:
Se ha producido el erro '1004' en tiempo de ejecucion
Error en el metodo PivoTableWizard de la clase Worksheet.
lo que quiero es hacer referencia a otra tabla dinamica que esta en otra hoja



1) existen varias (posibles) causas para que usando el metodo de la forma "sugerida" presente fallas
una de ellas es que NO exista (aun) una tabla dinamica en la hoja activa -?-
(revisa los comentarios previos en el mensaje anterior)

2) en tu consulta original, expusiste (solamente) una "fraccion/linea/..." de tu codigo (original ?)
ActiveSheet.PivotTableWizard SourceType:=xlPivotTable, SourceData:="noti!Tb_din"


por lo que no es posible adivinar (y acertar) la situacion exacta que se presenta en tu caso -?-

3) si suponemos que deseas CREAR una nueva TD en la hoja activa (y a partir de la celda activa)
si "proporcionar" (al codigo) las instrucciones necesarias para el arreglo de los campos en la nueva tabla dinamica
el siguiente ejemplo solo pone la tabla dinamica (SIN campos) y muestra al asistente para que completes la informacion:

Sub NuevaTD_y_Asistente()
ActiveSheet.PivotTableWizard _
SourceType:=xlPivotTable, _
SourceData:="Noti!Tb_din"
Application.Dialogs(xlDialogPivotTableWizard).Show
End Sub

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida