Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1070 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Résolu : Récupérer le nom d'un tableau dynamique sous Excel2007

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Résolu : Récupérer le nom d'un tableau dynamique sous Excel2007

n°1922908
wolfaryx
Posté le 10-09-2009 à 11:33:38  profilanswer
 

Bonjours à tous,
Je me suis récemment (re)-mis à la programmation de Macro sous Excel 2007, mais je désespère depuis quelques jours, parce que je ne trouve pas le moyen de renvoyer dans une variable chaîne le nom d'un tableau dynamique.
Ce que je voudrais faire, c'est : lorsque je sélectionne une cellule d'un tableau dynamique, en lançant la macro, j'arrive à récupérer le nom du tableau dynamique de la sélection en cours :D, pour ensuite rajouter une ligne sur ce tableau et diverses autres fonctions :D
...Mais, je n'y arrive pas
 
Merci de votre aide
 
Cordialement


Message édité par wolfaryx le 10-09-2009 à 19:07:31
mood
Publicité
Posté le 10-09-2009 à 11:33:38  profilanswer
 

n°1922911
Wysi
Posté le 10-09-2009 à 11:46:20  profilanswer
 

Code :
  1. ActiveCell.PivotTable.Name


 
Par contre, si ta cellule ne fait pas partie d'un TCD ça génére une erreur.
 
(oh et j'ai pas 2007 mais je pense que ca doit marcher quand même)

n°1922914
wolfaryx
Posté le 10-09-2009 à 11:55:34  profilanswer
 

Wysi a écrit :

Code :
  1. ActiveCell.PivotTable.Name


 
Par contre, si ta cellule ne fait pas partie d'un TCD ça génére une erreur.
 
(oh et j'ai pas 2007 mais je pense que ca doit marcher quand même)


Helas, cela ne fonctionne pas :(
voici mon code, pourtant tout simple :
 

Code :
  1. Sub name()
  2.     Dim actseet As String
  3.     Dim Nom As String
  4.    
  5.     actseet = ActiveSheet.name
  6.     Nom = ActiveCell.PivotTable.name
  7.     Range("J2" ).Select
  8.     ActiveCell.FormulaR1C1 = Nom
  9. End Sub


 
La macro est appelé par un bouton
J'obient une erreur 1004 : Impossible de lire la propriété PivotTable de la Classe Range en me surbrillant la ligne 6.

n°1922918
Wysi
Posté le 10-09-2009 à 12:03:45  profilanswer
 

C'est en effet l'erreur qui est générée quand ta cellule ne fait pas partie d'un tableau croisé dynamique.
 
Tu rajoutes une gestion d'erreur là dessus du genre :

Code :
  1. on error resume next
  2. msgbox ActiveCell.PivotTable.name
  3. if err then
  4.      msgbox "La cellule ne fait pas partie d'un TCD"
  5. endif


 
et ça roule tranquille normalement.
 
J'ai un 2003 au boulot et le code marche sans probleme.
 
 
 
 
 

n°1922926
wolfaryx
Posté le 10-09-2009 à 12:43:43  profilanswer
 

Merci à vous deux pour votre aide, sa marche correctement et sa m'a vraiment débloqué ma situation !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Résolu : Récupérer le nom d'un tableau dynamique sous Excel2007

 

Sujets relatifs
[Résolu] warning friend declarationVBA - excel - Tableau croisé dynamique - grouper...
[RESOLU] Lors de l'éxecution un coup ca marche, un coup ca marche pas[RESOLU]J2ME et la génération de timestamp...
[Résolu]pb compilation operator ++[RESOLU]Limiter le nombre de résultats d'un fichier xml
[Résolu] problème de CSS sur un menu[Résolu] Macro excel pour tri tableau par semaine
Plus de sujets relatifs à : Résolu : Récupérer le nom d'un tableau dynamique sous Excel2007


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR