Majuscule dans colonnes

Résolu
Bonjour,
j'ai un fichier ou dans les colonnes D H et O par macro je mets en majuscule
la macro fonctionne bien jusqu'à ce que je sélectionne plusieurs cellules et que je veux effacer la macro se met en erreur de type.
je comprends que les cellules sélectionnées ne sont pas dans la plage "zone_maj "
que j'ai définie de 3 a 250 dans les colonnes D H et O.
comment contourner ce problème?
peut on définir les cellules a mettre en majuscule sur toute la colonne ou au fur et a mesure que l'on rajoute des lignes?
je vous mets le fichier en exemple
https://www.cjoint.com/c/DEkqExeGhxC
merci de votre aide
a bientot
surplus

3 réponses

  1. Bonjour,

    essaye comme cela

    Private Sub Worksheet_Change(ByVal Target As Range)
    'if Range("zone_maj")
    On Error Resume Next
    Application.EnableEvents = False
    If Not Intersect(Target, Range("zone_maj")) Is Nothing Then
    Application.EnableEvents = False
    Target = UCase(Target)
    End If
    Application.EnableEvents = True
    End Sub

    A+
    Mike-31

    Une période d'échec est un moment rêvé pour semer les graines du savoir.
    0
    1. bonjour
      cela fonctionne bien
      pour que je comprenne bien
      vous avez rajouté
      On Error Resume Next
      cela veut dire que si y a erreur d"abandonner la macro?
      merci
      a bientot
      0
      1. Re,

        Oui c'est exactement cela, ça évite de mettre le Visual en Erreur
        j'ai également libéré cette ligne
        Application.EnableEvents = False
        si on applique l'Application.EnableEvents en début avec un False il faut rétablir l'application en fin de procédure avec Application.EnableEvents = True

        uniquement Application.EnableEvents = True en fin de procédure comme tu avais fait ne sert à rien, autant le supprimer puisqu'en début tu n'avais pas suspendu l'application
        0
        1. Re,
          merci pour tes lumières
          a bientôt
          0