Valeur cellule = nom d'onglet si valeur = 0

Verchain Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -  
Verchain Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

j'ai un petit souci avec un fichier que je construis pour un collègue.

J'ai mis un peu de code dans un onglet pour que le nom de l'onglet soit défini par la valeur qu'on donne à une cellule (un numéro de devis).

Le fichier est destiné à des utilisateurs peu avancés, et je crains qu'ils n'en viennent à supprimer la valeur en voulant la changer, ce qui génère une erreur macro (ex : ils tapent 12345, se rendent compte que c'est 34567 qu'ils voulaient taper, appuient sur Suppr... bien sur la macro se plante, ils laissent tomber l'outil...)

Ci-dessous le code :

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Application.Intersect(Target, Range("D3")) Is Nothing Then
ActiveSheet.Name = Range("D3")

End If

End Sub


Je ne trouve pas comment exprimer le fait que si la cellule D3 est vide (ou vidée), l'onglet prenne une autre valeur.
On doit pouvoir le faire avec un Else... Mais c'est ce que je dois écrire derrière qui me bloque...

Toute aide est bienvenue...

1 réponse

cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
bonjour,

comme ceci:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("D3")) Is Nothing Then
If Target.Value = "" Then Exit Sub
ActiveSheet.Name = Range("D3")
End If
End Sub

0
Verchain Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
 
Merci, ça fonctionne bien !
0