Attribuer à feuille excel le contenu d'une cellule de cette feuille

  • Initiateur de la discussion Initiateur de la discussion pepeye66
  • 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 !

pepeye66

XLDnaute Nouveau
Bonsoir tous,
J'ai saisi la macro suivante:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B2")) Is Nothing Then
ThisWorkbook.ActiveSheet.Name = Range("B2")
End If
End Sub

Elle fonctionne bien mais si après avoir entré une valeur dans la cellule je la supprime, la macro se "coince" je dois l'arrêter et le nom précédemment saisi dans la cellule reste comme nom de feuille.
Une idée ? un correctif est il possible ?
Merci
 
et si j'efface B2 nom de feuille revient à AH1
Pourquoi ne l'as-tu pas fait toi-même en remplaçant Me.CodeName par [AH1].Value ?‼
Et puis donner les explications au compte-gouttes …

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
     With Target
        If .Address = "$B$2" Then Me.Name = IIf(.Value > "", .Value, [AH1].Value)
    End With
End Sub
_______________________________________________________________________________
Merci de cliquer sur J'aime ce post en bas à gauche de chaque message ayant aidé …

 
Re : Attribuer à feuille excel le contenu d'une cellule de cette feuille

Pourquoi ne l'as-tu pas fait toi-même en remplaçant Me.CodeName par [AH1].Value ?‼
Et puis donner les explications au compte-gouttes …

Je ne l'ai pas fait moi même parce que je suis totalement néophyte en macro et VBA ! même si je commence à m'instruire sur le sujet je suis loin de comprendre les subtilités proposées (entre autre la différence entre ta macro et celle de thebenoit59 alors que toutes les deux fonctionnent à merveille.)
Quant aux explications au compte goutte, eh bien c'est juste qu'au début je les pense suffisantes (ne pas noyer dans trop de précisions/explications) et qu'au fur et à mesure des réponses je me rends compte qu'il me faut préciser...ou bien m'orienter vers une autre voie (c'est le cas pour la cellule AH1 que je n'avais pas envisagée au début).

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
     With Target
        If .Address = "$B$2" Then Me.Name = IIf(.Value > "", .Value, [AH1].Value)
    End With
End Sub
_______________________________________________________________________________

Ta macro fonctionne bien et je vais essayer de la comprendre même si, pour le moment, je n'en ai pas la capacité.
Merci de cliquer sur J'aime ce post en bas à gauche de chaque message ayant aidé …


Encore merci et peut être à bientôt,
😉
 
- 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

Discussions similaires

Réponses
9
Affichages
447
Retour