Plage de donnée pour tableau croisé dynamique

[Résolu/Fermé]
Signaler
Messages postés
2
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
11 juin 2013
-
Messages postés
149
Date d'inscription
mercredi 23 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
-
Bonjour,

Je souhaite créer une macro actualisant un tableau croisé dynamique (TCD) à partir de données se trouvant sur une autre feuille (mais du même classeur). Comme il s'agit d'un inventaire, le nombre de ligne est amené à varier...

La difficulté est alors que le nombre de ligne n'est pas connu à l'avance...

J'ai donc envisagé de rédiger une procédure pour récupérer les coordonnées de la dernière cellule (celle en bas à droite des données) et de définir la plage de donnée à utiliser pour le TCD à partir des coordonées:

voilà ce que j'ai fait:

Sheets("inventaire").Select

i = Range("vide").Row - 2
j = Range("vide").Column + 11

ActiveWorkbook.Names.Add Name:="zone_de_traçage", RefersToR1C1:= _
"=inventaire!R3C2:R37C13"

End Sub

Ce que je voudrais, c'est remplacer la plage de donnée sélectionnée (inventaire!R3C2:R37C13) par une plage de donnée qui dépend de i et j (inventaire!R3C2:RiCj).
Vous vous en doutez, i=37 et j=13 actuellement dans mon tableau, mais si je mets à jour l'inventaire (donc ajoute de lignes...) le tableau croisé obtenu ne sera pas bon..

Je ne sais pas si c'est possible, mais utiliser une structure similaire à la suivante par exemple:
ActiveSheet.Range(Cells(3, 2), Cells(i, j)).Select

Pouvez-vous, svp, m'aider?
merci de votre aide =)!

A voir également:

3 réponses

Messages postés
149
Date d'inscription
mercredi 23 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
11
Bonjour,

Si tu possèdes un Excel récent (2007 et +) pas besoin de macro :

Tu mets ta base en format tableau :

Dans l'onglet principal, tu sélectionnes ta base, puis mettre au format tableau, tu choisis le format qui te plait.

Ensuite tu te positionnes dans ton tableau, un nouvelle onglet apparaît "tableau".
Tu le renommes comme tu l'entends.

Ensuite quand tu créés ton TCD, tu ne sélectionnes pas une plage de donnée mais tu écris le nom de ton tableau.


Comme les tableaux sont flexibles, la plage de données du tableau se met à jour automatiquement à chaque ajout de ligne (même en copier/coller et autre manipulations).


J'espère que ça te suffira.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41713 internautes nous ont dit merci ce mois-ci

Messages postés
2
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
11 juin 2013

ça marche!!! milles merci!!!

ça fait 2jours que je bloque dessus! merci infiniment!

vous venez d'illuminer ma journée!
Encore une fois, merci!

bonne journée!
Messages postés
149
Date d'inscription
mercredi 23 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
11
Je t'en prie, c'est une focntion d'Excel que tout le monde n'utilise pas alors qu'elle présente de gros avantages (plus facile pour écrire des formules avec le nom des colonnes du tableau et pas le nom des colonnes Excel, et bien d'autres ...)




Si la réponse te convient passe le sujet en résolu ;)