Changer le nom de feuilles sans affecter les macros qui font référence à ces feuilles

OLIVIERR

XLDnaute Nouveau
Bonsoir à tous, je me permets de vous solliciter car un petit PB se pose pour moi :

Lorsque je change le nom des feuilles de mon classeur, les macros qui font référence à ces feuilles ne fonctionnement plus... J'ai bien essayé de faire référence à mes feuilles par leur numéro. (sous VBA les feuilles sont définies par leur numéro suivi de leur nom entre parenthèses). Mais je n'y arrive pas...

Ci-après le début de ma macro qui fait référence à la feuille s'appelant BADEN.
SI je change le nom de mon onglet la macro plante au niveau de la ligne : woorksheets ("BADEN").Activate

Si quelqu'un a une solution, je suis preneur.
Par avance merci de vous pencher sur mon PB


Option Explicit

Private Sub Label1_Click()
End Sub

Private Sub Label9_Click()
End Sub

Private Sub Camp_Click()
End Sub

Private Sub ScoreAller_Change()
End Sub

Private Sub TextBox1_Change()
End Sub

Private Sub Trou1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

If KeyCode = 17 Then ActiveControl.MaxLength = 2
Worksheets("BADEN").Activate
TextBox1.Value = Range("B26").Value
End Sub[/COLOR]
 

Dranreb

XLDnaute Barbatruc
Re : Changer le nom de feuilles sans affecter les macros qui font référence à ces feu

Bonsoir.
Je vous conseille d'utiliser les noms de la rubrique Microsoft Excel Objets, ceux qui sont suivi du nom de la feuille Excel correspondante rappelé entre parenthèses. Ce sont directement des noms d'objets Worksheet utilisables en tant qu'expressions Worksheet, inutile de les spécifier derrière Worksheets(etc.
On appelle aussi parfois ces noms les CodeName des feuilles, parce que CodeName est le nom d'une propriété String en lecture seule qui reproduit ce nom d'objet Worksheet.
 

OLIVIERR

XLDnaute Nouveau
Re : Changer le nom de feuilles sans affecter les macros qui font référence à ces feu

Bonsoir, Dranreb
merci de vos conseils. J'ai bien compris que le nom des feuilles est associé à un numéro de feuille (ou l'inverse plus précisément). Dans Microsoft Excel Objets,je retrouve bien mon numéro de feuille nommé BADEN, c'est la Feuil11. mais j'ai essayé de remplacer le nom par le numéro de feuille, mais je dois mal l'écrire et ca bugg... Comment me conseilleriez vous de réécrire le Worksheets("BADEN") ???

merci pour vos éclaircissements???
 

Dranreb

XLDnaute Barbatruc
Re : Changer le nom de feuilles sans affecter les macros qui font référence à ces feu

Je vous conseille de l'écrire Feuil11. Par exemple: Feuil11.Activate
Ou mieux, de renommer d'abord ce Feuil11 par quelque chose de plus mnémonique. C'est la toute première propriété dans la fenêtre de propriétés (Name).
 

OLIVIERR

XLDnaute Nouveau
Re : Changer le nom de feuilles sans affecter les macros qui font référence à ces feu

Danreb, encore moi.... je crois que j'ai trouvé. J'ai tout bêtement remplacé mon Worksheets("BADEN") par Feuil11 et cela semble fonctionner. Je vais le tester sur toutes mes macros.... Vous m'avez mis sur la voie. Mille mercis
 

OLIVIERR

XLDnaute Nouveau
Re : Changer le nom de feuilles sans affecter les macros qui font référence à ces feu

Bonjour,
effectivement cela foctionne. Le numéro de feuille me convient parfaitement.... car :
1 il apparait dans le VB Projets (donc facile à identifier
2 on peut rajouter des feuilles au classeur ou déplacer la feuille en question, son numéro ne varie pas....(j'ai fait l'essai).
Donc pb résolu pour moi.
Merci beaucoup.
Dois je cloturer quelquechose pour terminer le fil de notre discussion ???
Bonne journée à tous et merci encore. Grâce à vous, le VBA est un peu moins obscur pour un néophyte comme moi
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa