Sur le site Excelabo j'ai utilisé une macro qui permet de mettre en forme du
texte dans une plage de données après saisie.
Private Sub Worksheet_Change(ByVal zz As Range)
If Intersect(zz, [B2:B200]) Is Nothing Then Exit Sub
Application.EnableEvents = False
zz = UCase(zz)
Application.EnableEvents = True
End Sub
Cette macro permet effectivement de passer le texte de la plage de cellule
référencée en majuscule.
Dans mon fichier je souhaite modifier après saisie plusieurs plages.
Soit la première en majuscule, la deuxième en minuscule et la troisième en
"Nom Propre"
Mon compétences et connaissances ne m'ont pas permis d'arriver à ce résultat.
Quelqu'un pourrait-il me conseiller ?
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
Dav
Bonjour Papou
Merci pour ta participation. C'est vrai qu'en se bottant un peu les fesses et en se donnant la peine de réflechir, on peut arriver à quelque chose de concluant.
Voici ce à quoi je suis arrivé :
Private Sub Worksheet_Change(ByVal zz As Range) For Each Cell In [B2:B200] If Intersect(zz, [B2:B200]) Is Nothing Then Exit For Application.EnableEvents = False zz = LCase(zz) Application.EnableEvents = True Next For Each Cell In [C2:C200] If Intersect(zz, [C2:C200]) Is Nothing Then Exit For Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True Next If Intersect(zz, [A2:A200]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = Application.WorksheetFunction.Proper(zz) Application.EnableEvents = True End Sub
Ca fonctionne correctement à priori.
-- Dav
Bonjour Tu as le point de départ avec le code exemple. Tu devrais donc pouvoir adapter en : - ajoutant un test sur d'autres plages - utilisant la fonction LCase pour minuscules - utilisant la fonction Proper (disponible à partir de Application.WorksheetFunctions) pour Nom propre
Cordialement Pascal
"Dav" a écrit dans le message de news:
Bonjour
Sur le site Excelabo j'ai utilisé une macro qui permet de mettre en forme du texte dans une plage de données après saisie.
Private Sub Worksheet_Change(ByVal zz As Range) If Intersect(zz, [B2:B200]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True End Sub
Cette macro permet effectivement de passer le texte de la plage de cellule référencée en majuscule.
Dans mon fichier je souhaite modifier après saisie plusieurs plages. Soit la première en majuscule, la deuxième en minuscule et la troisième en "Nom Propre" Mon compétences et connaissances ne m'ont pas permis d'arriver à ce résultat. Quelqu'un pourrait-il me conseiller ?
Merci d'avance -- Dav
Bonjour Papou
Merci pour ta participation.
C'est vrai qu'en se bottant un peu les fesses et en se donnant la peine de
réflechir, on peut arriver à quelque chose de concluant.
Voici ce à quoi je suis arrivé :
Private Sub Worksheet_Change(ByVal zz As Range)
For Each Cell In [B2:B200]
If Intersect(zz, [B2:B200]) Is Nothing Then Exit For
Application.EnableEvents = False
zz = LCase(zz)
Application.EnableEvents = True
Next
For Each Cell In [C2:C200]
If Intersect(zz, [C2:C200]) Is Nothing Then Exit For
Application.EnableEvents = False
zz = UCase(zz)
Application.EnableEvents = True
Next
If Intersect(zz, [A2:A200]) Is Nothing Then Exit Sub
Application.EnableEvents = False
zz = Application.WorksheetFunction.Proper(zz)
Application.EnableEvents = True
End Sub
Ca fonctionne correctement à priori.
--
Dav
Bonjour
Tu as le point de départ avec le code exemple.
Tu devrais donc pouvoir adapter en :
- ajoutant un test sur d'autres plages
- utilisant la fonction LCase pour minuscules
- utilisant la fonction Proper (disponible à partir de
Application.WorksheetFunctions) pour Nom propre
Cordialement
Pascal
"Dav" <Dav@discussions.microsoft.com> a écrit dans le message de news:
49B6FEC1-3E15-43AE-A56C-AA2C72EED790@microsoft.com...
Bonjour
Sur le site Excelabo j'ai utilisé une macro qui permet de mettre en forme
du
texte dans une plage de données après saisie.
Private Sub Worksheet_Change(ByVal zz As Range)
If Intersect(zz, [B2:B200]) Is Nothing Then Exit Sub
Application.EnableEvents = False
zz = UCase(zz)
Application.EnableEvents = True
End Sub
Cette macro permet effectivement de passer le texte de la plage de cellule
référencée en majuscule.
Dans mon fichier je souhaite modifier après saisie plusieurs plages.
Soit la première en majuscule, la deuxième en minuscule et la troisième en
"Nom Propre"
Mon compétences et connaissances ne m'ont pas permis d'arriver à ce
résultat.
Quelqu'un pourrait-il me conseiller ?
Merci pour ta participation. C'est vrai qu'en se bottant un peu les fesses et en se donnant la peine de réflechir, on peut arriver à quelque chose de concluant.
Voici ce à quoi je suis arrivé :
Private Sub Worksheet_Change(ByVal zz As Range) For Each Cell In [B2:B200] If Intersect(zz, [B2:B200]) Is Nothing Then Exit For Application.EnableEvents = False zz = LCase(zz) Application.EnableEvents = True Next For Each Cell In [C2:C200] If Intersect(zz, [C2:C200]) Is Nothing Then Exit For Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True Next If Intersect(zz, [A2:A200]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = Application.WorksheetFunction.Proper(zz) Application.EnableEvents = True End Sub
Ca fonctionne correctement à priori.
-- Dav
Bonjour Tu as le point de départ avec le code exemple. Tu devrais donc pouvoir adapter en : - ajoutant un test sur d'autres plages - utilisant la fonction LCase pour minuscules - utilisant la fonction Proper (disponible à partir de Application.WorksheetFunctions) pour Nom propre
Cordialement Pascal
"Dav" a écrit dans le message de news:
Bonjour
Sur le site Excelabo j'ai utilisé une macro qui permet de mettre en forme du texte dans une plage de données après saisie.
Private Sub Worksheet_Change(ByVal zz As Range) If Intersect(zz, [B2:B200]) Is Nothing Then Exit Sub Application.EnableEvents = False zz = UCase(zz) Application.EnableEvents = True End Sub
Cette macro permet effectivement de passer le texte de la plage de cellule référencée en majuscule.
Dans mon fichier je souhaite modifier après saisie plusieurs plages. Soit la première en majuscule, la deuxième en minuscule et la troisième en "Nom Propre" Mon compétences et connaissances ne m'ont pas permis d'arriver à ce résultat. Quelqu'un pourrait-il me conseiller ?