Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Nommer une ZONE EN VBA

  • Initiateur de la discussion Initiateur de la discussion EMMANUEL
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

EMMANUEL

Guest
Bonjour
j'ai une macro qui me crée automatiquement un TCD
Un onglet où l'on trouve un tableau avec la fonction liredonnéestabcroisdynamique
Seulement dans ma formule, je fais appel à une plage nommée 'TCD'
Chaque fois que je lance la macro, elle m'écrase les données et crée un nouvel onglet avec le tableau croisé dynamique.
Je voudrais (cf ci-dessous), insérer la formule me permettant de séléctionner le tableau croisé et le renommer en 'TCD'

J'ai essayé ceci mais cela marche que si l'onglet s'appelle feuille1 et que si le tableau a toujours la même taille (ce qui n'est pas le cas)

il faudrait que je corrige cette formule!!!!??

Selection.CurrentRegion.Select
ActiveWorkbook.Names.Add Name:='TCD', RefersToR1C1:='=Feuil1!R3C1:R252C6' :unsure:


MERCI
 
bonjour
j'ai essayé ce qui suit et ok

Public Sub essaitcd()
'sélectionne feuille avec tcd(donner un nom à la feuille)
Sheets('TcdVentes2001').Select
'sélectionne une cellule non vide
Range('B5').CurrentRegion.Select
'compte ligne sélection
L = Selection.Rows.Count
'compte colonne sélection
C = Selection.Columns.Count
'attribue le nom à la sélection
ActiveWorkbook.Names.Add Name:='TcdVentes', RefersToR1C1:='=TcdVentes2001!R4C2:R' & L & 'C' & C & ''
End Sub
à bientôt
 
Oui
mais le nom de la feuille est également une variable
je peux lancer plusieurs fois la macro pour créer le TCD
par défaut c'est l'onglet feuill1 qui est crée ,puis feuill2 et ainsi de suite.... 😱hmy:
 
Désolé Hervé et BEBERE
Je ne crois pas avoir bien compris
je crée un tcd en vba
excel attribue pas défaut comme nom d'onglet feuille1...

Ensuite je dois nommer la plage du Tableau croisé dynamique
Zone = TCD

Sheets(Sheets.Count).Range('B5').CurrentRegion.Name = 'TCD'

Cette formule va sélectionner par défaut le premier onglet du classeur
et non l'onglet crée en vba




😱hmy:
 
De plus Hervé comment faire pour que la dernière feuille crée soit classée en dernier

Je cherche sinon à selectionner la feuille active ? Comment faire

Sheets(Feuill1).Select
Sheets(Feuill1).Name = 'TCD' 🙁
 
Salut,
pas sur d'avoir compris mais:

dès la création du tcd , tu peux alors renommer la feuille non ?
voilà ce que donne l'enregistreur :

ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
'Feuil1!R1C5:R12C6').CreatePivotTable TableDestination:='', TableName:= _
'Tableau croisé dynamique1'
' ici le nom de la feuille
ActiveSheet.Name = 'test'
' la déplacer:
Worksheets('test').Move _
after:=Worksheets('feuil3')

Patrick
 
Ton ton post original :

Remplace cette ligne:
ActiveWorkbook.Names.Add Name:='TCD', RefersToR1C1:='=Feuil1!R3C1:R252C6'


Par ceci:
ActiveWorkbook.Names.Add Name:='TCD', RefersToR1C1:=Selection


Salutations
Eric
 
dernière solution: je crée un onglet 'TCD' et à chaque lancement de la macro, il efface tout, on peux alors utiliser le programme de BEBERE



Sheets('TCD').Select
Cells.Select
Selection.Clear
Range('A1').Select

Merci BEBERE ,le forum
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

D
Réponses
0
Affichages
2 K
Demha_2022
D
A
Réponses
2
Affichages
1 K
A
Réponses
3
Affichages
1 K
AlicePrince
A
B
Réponses
2
Affichages
1 K
P
Réponses
12
Affichages
2 K
Pauliakov
P
Réponses
46
Affichages
8 K
D
Réponses
5
Affichages
1 K
Dimebag
D
J
Réponses
4
Affichages
2 K
jmten92
J
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…