Majuscule dans colonnes
Résolu
surplus
Messages postés
673
Date d'inscription
Statut
Membre
Dernière intervention
-
surplus Messages postés 673 Date d'inscription Statut Membre Dernière intervention -
surplus Messages postés 673 Date d'inscription Statut Membre Dernière intervention -
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
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
A voir également:
- Majuscule dans colonnes
- Comment faire deux colonnes indépendantes dans word - Guide
- É majuscule - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Majuscule - Guide
- Code ascii de a majuscule - Guide
3 réponses
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.
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.
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
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
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
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