Mise en majuscule d'une cellule

Résolu
Bonjour,
Je désire mettre une cellule en majuscule après la saisie de l'utilisateur, j'ai donc utilisé la fonction suivante :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("e1:f11" )) Is Nothing Then Target = UCase(Target)
End Sub

qui fonctionne parfaitement.
Mon problème survient lorsque j'efface la valeur de la cellule, j'ai l"erreur suivante :

Erreur d'éxecution '13'
Incompatibilité de type

lorsque je clique sur débogage il surligne en jaune :
Target = UCase(Target)

Quelqu'un aurait-il une idée sur ce problème ?

Merci

Gif50

1 réponse

  1. Contributeur
    Hello,
    à mon avis il faut vérifier si la cellule est vide : un truc genre
    If Target = Null Or Target = "" Then
    ...
    End if


    Ou alors, mettre On Error Resume Next :o) Pas très conventionel mais bon...
    0
    1. Bonjour BloodyAngel et merci pour ta réponse,

      J'ai bien essayé en testant la cellule vide : Target = Null or Target = "" mais cela ne fonctionne pas.
      Par contre la commande On Error Resume Next fonctionne puisque l'on passe outre l'erreur. Pour l'instant j'utilise cette méthode, mais ça n'est pas très conventionnel.

      Cordialement,

      Gif50
      0