Tout en majuscules sauf une colonne

  • Initiateur de la discussion Initiateur de la discussion Busard
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Busard

XLDnaute Nouveau
Bonjour à tous,
Je suis nul en VBE. J'ai trouvé sur ce forum comment convertir automatiquement le texte en majuscules lors de la saisie (ci-dessous), mais je voudrais exclure une colonne (par exemple la colonne F). Je ne sais pas comment l'écrire...
Quelqu'un peut-il m'aider ?

Merci par avance.


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
codeA = "ÉÈÊËÔéèêëàçùôûïî"
codeB = "EEEEOeeeeacuouii"
temp = Target
For i = 1 To Len(temp)
p = InStr(codeA, Mid(temp, i, 1))
If p > 0 Then Mid(temp, i, 1) = Mid(codeB, p, 1)
Next
Application.EnableEvents = False
Target = UCase(temp)
Application.EnableEvents = True
End If
End Sub
 
Re : Tout en majuscules sauf une colonne

Bonjour Busard

essaye en modifiant comme suit :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Or Target.Column = 6 Then Exit Sub
codeA = "ÉÈÊËÔéèêëàçùôûïî"
codeB = "EEEEOeeeeacuouii"
temp = Target
For i = 1 To Len(temp)
p = InStr(codeA, Mid(temp, i, 1))
If p > 0 Then Mid(temp, i, 1) = Mid(codeB, p, 1)
Next
Application.EnableEvents = False
Target = UCase(temp)
Application.EnableEvents = True
End Sub

Bone journée
@+
 
Re : Tout en majuscules sauf une colonne

Bonjour,

dans la condition de départ, tu ajoutes la colonne à exclure comme ceci:

Code:
If Target.Count = 1 [B][COLOR=blue]And Target.Column <>  6 Then[/COLOR][/B]
[COLOR=black]......[/COLOR]

Edit: arrfff, 2mn de retard, salut Pierrot 🙂
 
Re : Tout en majuscules sauf une colonne

Merci beaucoup Pierrot.

Cela marche très bien.

J'ai aussi intégré dans une autre feuille une formule plus compléte (ci-dessous) qui évite aussi qu'Excel ne transforme le format date dd/mm/aaaa de certaines colonnes en mm/dd/aaaa. Cette formule marche très bien. Mais du coup, comment intégrer dedans le fait que la colonne F soit exclue de la transformation en majuscules ? C'est dire à quel point je suis mauvais...

Merci par avance.


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 And Target.Column <> 11 And Target.Column <> 20 Then
codeA = "ÀÁÂÃÄÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜàâäçéèêëìíïîñôóòöùúûü"
codeB = "AAAAAEEEEIIIINOOOOOUUUUaaaceeeeiiiinoooouuuu"
temp = Target
For i = 1 To Len(temp)
P = InStr(codeA, Mid(temp, i, 1))
If P > 0 Then Mid(temp, i, 1) = Mid(codeB, P, 1)
Next
Application.EnableEvents = False
Target = UCase(temp)
Application.EnableEvents = True
End If
End Sub
 
Re : Tout en majuscules sauf une colonne

Merci à tous les deux pour votre aide.
Je viens de m'apercevoir qu'en fait lorsque l'on exclut une colonne de la transformation en majuscules, cela évite aussi le changement de format de date dd/mm/aaaa en mm/dd/aaaa...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
317
Réponses
3
Affichages
504
Retour