Je souhaite mettre en forme automatiquement (en majuscules par exemple)
du texte saisi dans différentes cellules. J'ai trouvé la macro suivante
(sur Excelabo) qui marche trés bien (tant que je reste avec une zone
continue et une seule mise en forme) :
Private Sub Worksheet_Change(ByVal zz As Range)
If Intersect(zz, [A3:A4502]) Is Nothing Then Exit Sub
Application.EnableEvents = False
zz = UCase(zz)
Application.EnableEvents = True
End Sub
Mais je n'arrive pas à la modifier :
* pour des plages discontinues (clonne A, Colonne C, Colonne R...) avec
la meme mise en forme (tout en majuscules, par exemple);
* ou plus compliqué, des résultats différents par plages (minuscules,
premiere lettre majuscule... par colonnes).
Est ce possible ?
Si quelqu'un a des dées là dessus, merci de m'en faire part.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Bonjour,
Essaie comme ceci :
La procédure s'applique pour les colonnes 1, 3, 18 (A, C, R) Tu peux ajouter toutes les colonnes que tu désires...
'-------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Dim C As Range, Cel As Range For Each C In Target.Columns Select Case C.Column Case 1, 3, 18 Application.EnableEvents = False For Each Cel In C.Cells Cel.Value = UCase(Cel) Next Application.EnableEvents = True End Select Next End Sub '--------------------------------------
MichD --------------------------------------------------------------- "glop" a écrit dans le message de groupe de discussion : k0ft83$ck5$
Bonjour
Je souhaite mettre en forme automatiquement (en majuscules par exemple) du texte saisi dans différentes cellules. J'ai trouvé la macro suivante (sur Excelabo) qui marche trés bien (tant que je reste avec une zone continue et une seule mise en forme) :
Private Sub Worksheet_Change(ByVal zz As Range) If Intersect(zz, [A3:A4502]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True End Sub
Mais je n'arrive pas à la modifier : * pour des plages discontinues (clonne A, Colonne C, Colonne R...) avec la meme mise en forme (tout en majuscules, par exemple); * ou plus compliqué, des résultats différents par plages (minuscules, premiere lettre majuscule... par colonnes).
Est ce possible ? Si quelqu'un a des dées là dessus, merci de m'en faire part.
Bonjour,
Essaie comme ceci :
La procédure s'applique pour les colonnes 1, 3, 18 (A, C, R)
Tu peux ajouter toutes les colonnes que tu désires...
'--------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim C As Range, Cel As Range
For Each C In Target.Columns
Select Case C.Column
Case 1, 3, 18
Application.EnableEvents = False
For Each Cel In C.Cells
Cel.Value = UCase(Cel)
Next
Application.EnableEvents = True
End Select
Next
End Sub
'--------------------------------------
MichD
---------------------------------------------------------------
"glop" a écrit dans le message de groupe de discussion : k0ft83$ck5$1@dont-email.me...
Bonjour
Je souhaite mettre en forme automatiquement (en majuscules par exemple)
du texte saisi dans différentes cellules. J'ai trouvé la macro suivante
(sur Excelabo) qui marche trés bien (tant que je reste avec une zone
continue et une seule mise en forme) :
Private Sub Worksheet_Change(ByVal zz As Range)
If Intersect(zz, [A3:A4502]) Is Nothing Then Exit Sub
Application.EnableEvents = False
zz = UCase(zz)
Application.EnableEvents = True
End Sub
Mais je n'arrive pas à la modifier :
* pour des plages discontinues (clonne A, Colonne C, Colonne R...) avec
la meme mise en forme (tout en majuscules, par exemple);
* ou plus compliqué, des résultats différents par plages (minuscules,
premiere lettre majuscule... par colonnes).
Est ce possible ?
Si quelqu'un a des dées là dessus, merci de m'en faire part.
La procédure s'applique pour les colonnes 1, 3, 18 (A, C, R) Tu peux ajouter toutes les colonnes que tu désires...
'-------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Dim C As Range, Cel As Range For Each C In Target.Columns Select Case C.Column Case 1, 3, 18 Application.EnableEvents = False For Each Cel In C.Cells Cel.Value = UCase(Cel) Next Application.EnableEvents = True End Select Next End Sub '--------------------------------------
MichD --------------------------------------------------------------- "glop" a écrit dans le message de groupe de discussion : k0ft83$ck5$
Bonjour
Je souhaite mettre en forme automatiquement (en majuscules par exemple) du texte saisi dans différentes cellules. J'ai trouvé la macro suivante (sur Excelabo) qui marche trés bien (tant que je reste avec une zone continue et une seule mise en forme) :
Private Sub Worksheet_Change(ByVal zz As Range) If Intersect(zz, [A3:A4502]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True End Sub
Mais je n'arrive pas à la modifier : * pour des plages discontinues (clonne A, Colonne C, Colonne R...) avec la meme mise en forme (tout en majuscules, par exemple); * ou plus compliqué, des résultats différents par plages (minuscules, premiere lettre majuscule... par colonnes).
Est ce possible ? Si quelqu'un a des dées là dessus, merci de m'en faire part.
glop
Dans son message précédent, MichD a écrit :
Bonjour,
Essaie comme ceci :
La procédure s'applique pour les colonnes 1, 3, 18 (A, C, R) Tu peux ajouter toutes les colonnes que tu désires...
'-------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Dim C As Range, Cel As Range For Each C In Target.Columns Select Case C.Column Case 1, 3, 18 Application.EnableEvents = False For Each Cel In C.Cells Cel.Value = UCase(Cel) Next Application.EnableEvents = True End Select Next End Sub '--------------------------------------
MichD --------------------------------------------------------------- "glop" a écrit dans le message de groupe de discussion : k0ft83$ck5$
Bonjour
Je souhaite mettre en forme automatiquement (en majuscules par exemple) du texte saisi dans différentes cellules. J'ai trouvé la macro suivante (sur Excelabo) qui marche trés bien (tant que je reste avec une zone continue et une seule mise en forme) :
Private Sub Worksheet_Change(ByVal zz As Range) If Intersect(zz, [A3:A4502]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True End Sub
Mais je n'arrive pas à la modifier : * pour des plages discontinues (clonne A, Colonne C, Colonne R...) avec la meme mise en forme (tout en majuscules, par exemple); * ou plus compliqué, des résultats différents par plages (minuscules, premiere lettre majuscule... par colonnes).
Est ce possible ? Si quelqu'un a des dées là dessus, merci de m'en faire part.
Bonjour
Super ! Merci pour cette efficace et trés rapide réponse ^^
Dans son message précédent, MichD a écrit :
Bonjour,
Essaie comme ceci :
La procédure s'applique pour les colonnes 1, 3, 18 (A, C, R)
Tu peux ajouter toutes les colonnes que tu désires...
'--------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim C As Range, Cel As Range
For Each C In Target.Columns
Select Case C.Column
Case 1, 3, 18
Application.EnableEvents = False
For Each Cel In C.Cells
Cel.Value = UCase(Cel)
Next
Application.EnableEvents = True
End Select
Next
End Sub
'--------------------------------------
MichD
---------------------------------------------------------------
"glop" a écrit dans le message de groupe de discussion :
k0ft83$ck5$1@dont-email.me...
Bonjour
Je souhaite mettre en forme automatiquement (en majuscules par exemple)
du texte saisi dans différentes cellules. J'ai trouvé la macro suivante
(sur Excelabo) qui marche trés bien (tant que je reste avec une zone
continue et une seule mise en forme) :
Private Sub Worksheet_Change(ByVal zz As Range)
If Intersect(zz, [A3:A4502]) Is Nothing Then Exit Sub
Application.EnableEvents = False
zz = UCase(zz)
Application.EnableEvents = True
End Sub
Mais je n'arrive pas à la modifier :
* pour des plages discontinues (clonne A, Colonne C, Colonne R...) avec
la meme mise en forme (tout en majuscules, par exemple);
* ou plus compliqué, des résultats différents par plages (minuscules,
premiere lettre majuscule... par colonnes).
Est ce possible ?
Si quelqu'un a des dées là dessus, merci de m'en faire part.
Bonjour
Super ! Merci pour cette efficace et trés rapide réponse ^^
La procédure s'applique pour les colonnes 1, 3, 18 (A, C, R) Tu peux ajouter toutes les colonnes que tu désires...
'-------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Dim C As Range, Cel As Range For Each C In Target.Columns Select Case C.Column Case 1, 3, 18 Application.EnableEvents = False For Each Cel In C.Cells Cel.Value = UCase(Cel) Next Application.EnableEvents = True End Select Next End Sub '--------------------------------------
MichD --------------------------------------------------------------- "glop" a écrit dans le message de groupe de discussion : k0ft83$ck5$
Bonjour
Je souhaite mettre en forme automatiquement (en majuscules par exemple) du texte saisi dans différentes cellules. J'ai trouvé la macro suivante (sur Excelabo) qui marche trés bien (tant que je reste avec une zone continue et une seule mise en forme) :
Private Sub Worksheet_Change(ByVal zz As Range) If Intersect(zz, [A3:A4502]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True End Sub
Mais je n'arrive pas à la modifier : * pour des plages discontinues (clonne A, Colonne C, Colonne R...) avec la meme mise en forme (tout en majuscules, par exemple); * ou plus compliqué, des résultats différents par plages (minuscules, premiere lettre majuscule... par colonnes).
Est ce possible ? Si quelqu'un a des dées là dessus, merci de m'en faire part.
Bonjour
Super ! Merci pour cette efficace et trés rapide réponse ^^