Bonsoir le forum,
J'ai récupéré cette macro (ci-dessous) pour renommer automatiquement un onglet d'après une cellule qui fonctionne très bien. Or quand je supprime le contenu de la dite cellule cela me met un message d'erreur !!!
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'MAcro Dan le 08/12/2010
If Not Intersect(Target, Range("E7")) Is Nothing Then
ActiveSheet.Name = Target
End If
End Sub
N'y aurait-il pas un moyen pour supprimer ce message ?
D'avance merci pour vos réponses
Re : Message d'erreur sur une macro pour renommer onglet suivant cellule
Bonsoir,
non testé mais peut-être :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'MAcro Dan le 08/12/2010
If Not Intersect(Target, Range("E7")) Is Nothing and Target.value<>"" Then
ActiveSheet.Name = Target
End If
End Sub
ou alors :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'MAcro Dan le 08/12/2010
on error resume next
If Not Intersect(Target, Range("E7")) Is Nothing Then
ActiveSheet.Name = Target
End If
End Sub
A+
Edit : bonsoir Victor, décidément, t'es plus rapide que moi ce soir (et en plus je ne sais pas si ce que j'ai proposé répond réellement à la demande...).
Félicitations pour ton passage de cap
Re : Message d'erreur sur une macro pour renommer onglet suivant cellule
Bonsoir Victor21, David84,
David84 : c'est exactement ce que je voulais. Maintenant il n'y a plus d'erreur quand j'efface le contenu la cellule.
Merci à vous deux.
Bonne soirée
Re : Message d'erreur sur une macro pour renommer onglet suivant cellule
Re bonsoir,
Je voulais savoir comment faire car le "renommage" correspond en fait à 2 cellules soit la E7 soit la E8 : si la cellule E7 est déjà renseignée je ne veux pas que la cellule E8 modifie le nom de l'onglet....
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'MAcro Dan le 08/12/2010
On Error Resume Next
If Not Intersect(Target, Range("E7")) Is Nothing Then
ActiveSheet.Name = Target
End If
End Sub
Re : Message d'erreur sur une macro pour renommer onglet suivant cellule
Re
je me répète : sans fichier exemple, pas moyen de tester et de réellement comprendre ton attente...
donc, peut-être :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'MAcro Dan le 08/12/2010
if [E7]<>"" then exit sub
On Error Resume Next
If Not Intersect(Target, Range("E7")) Is Nothing Then
ActiveSheet.Name = Target
End If
End Sub
@ Libellule : heureux que ton problème soit résolu
@David
Plus rapide pour proposer des cochoncetés ! Merci pour tes congratulances.
@CC
Les DADA, ils n'y ont pas droit ? Après tout, ce sont aussi des équidés !