procedure evenementielle change

alexane

XLDnaute Occasionnel
Bonjour à tous,
J'ai une procédure événementielle qui me permet lorsque je valide une cellule dans la zone A1:A10 de mettre en majuscule automatiquement ce qui a été saisi :
Code:
Dim pl As Range
    Set pl = Range("A1:A10")
    If Not Intersect(pl, Target) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = UCase(Target.Value)
        Application.EnableEvents = True
    End If

Elle marche mais génère un code erreur 13 lorsque je cherche à effacer le contenu de plusieurs cellules de cette zone (bug sur target.value=ucase(target.value)
Comment puis-je eviter ce bug
Merci
 

Gareth

XLDnaute Impliqué
Re : procedure evenementielle change

Bonsoir,

Tu peux essayer ceci :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim pl As Range
     Set pl = Range("A1:A10")
     If Not Intersect(pl, Target) Is Nothing And Target.Count = 1 Then
         Application.EnableEvents = False
         Target.Value = UCase(Target.Value)
         Application.EnableEvents = True
     End If
End Sub
 

Discussions similaires

  • Résolu(e)
XL 2021 macro
Réponses
9
Affichages
498

Statistiques des forums

Discussions
312 502
Messages
2 089 047
Membres
104 011
dernier inscrit
dfr