OVH Cloud OVH Cloud

Comment écrire en VBA Cellule en Majuscules ?

22 réponses
Avatar
Michel.Girard
Je désire écrire en VBA :
Si dans ActiveCell.Offset(0, 1) les lettres sont en majuscules, alors :
msgbox "toto"
Merci beaucoup

2 réponses

1 2 3
Avatar
Corona
Bonsoir Michel,
Voici le code d'une fonction qui te renvoie "Vrai" si "tout est
majuscule " et "Faux" s'il y a au moins une minuscule.
Philippe

Function TestMaj(Nom As String) As Boolean
Count = Len(Nom): TestMaj = True
For x = 1 To Count
Select Case Asc(Mid(Nom, x, 1))
Case 65 To 90, 32
Case Else
TestMaj = False: Exit Function
End Select
Next
End Function

Sub Test()
If TestMaj("CECI EST EN MAJUSCULE ") Then MsgBox ("Tout est en majuscule")
Else MsgBox "Il y a au moins une minuscule"
End Sub


"Michel.Girard" a écrit dans le message de
news: %
Bonsoir Pounet95
Voilà mon sujet :
J'ai un Userform dans lequel j'ai entre autres un textbox1 Nom et un
Textbox 2 Prénom., mais il faut que je puisse rentrer un nom de société
dans le textbox1 de temps en temps.
Dans les "change", j'ai Textbox1=Ucase(Texbox1) et
Textbox2=Lcase(Textbox2)
Lorsque je veux modifier qqchose dans mon Userform Initialize, j'ai :

If ActiveCell.Offset(0, 1) = UCase(ActiveCell.Offset(0, 1)) Then
ActiveCell.Offset(0, 1) = TextBox1
Label4.Visible = True
Label4.Caption = " Raison sociale"
TextBox1.Visible = True
TextBox2.Visible = False
Label28.Visible = False
OptionButton4 = True
Else
'Raison sociale
Label4.Visible = True
Label4.Caption = "Nom et prénom"
Label27.Visible = True
Label28.Visible = True
TextBox1.Visible = True
TextBox2.Visible = True
OptionButton3 = True
initial = ActiveCell.Offset(0, 1)
For I = 1 To Len(initial)
If Mid(initial, I, 1) <> UCase(Mid(initial, I, 1)) Then
TextBox2 = Right(initial, Len(initial) - I + 1)
TextBox1 = Left(initial, I - 2)
Exit For
End If
Next I
End If
Cela fonctionne très bien, même avec des chiffres dans le nom de la
société
Qu'en penses-tu ?
Michel




"Pounet95" a écrit dans le message de news:

Re, .... pour rire
Ce n'est pas parce qu'il n'y a pas que des majuscules, qu'il y a des
majuscules et des minuscules !
Quelle différence entre 0 et 0, entre ( et ), etc. Tout ça pour dire :
et les autres caractères ?

--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
Conseillé :
http://dj.joss.free.fr/netiquet.htm
(charte, nétiquette, conseils, abréviations, souriettes...)
http://www.excelabo.net/mpfe/connexion.php
(connexion, conseils...)

"Michel.Girard" a écrit dans le message
de news:
Merci beaucoup Raimond, cela fonctionne parfaitement.
J'ai fait cela :
If ActiveCell.Offset(0, 1) = UCase(ActiveCell.Offset(0, 1)) Then
MsgBox "Majuscules"
Else
MsgBox "Maj et min"
End If
Encore merci
Michel

"Rai" a écrit dans le message de news:

Bonsoir,

Si tu veux tester le cas où tous les caractères sont en majuscules :

If ActiveCell.Offset(0, 1) = Ucase(ActiveCell.Offset(0, 1)) then
blabla ..
Endif

Bonne soirée

Rai

Je désire écrire en VBA :
Si dans ActiveCell.Offset(0, 1) les lettres sont en majuscules, alors
:
msgbox "toto"
Merci beaucoup
















Avatar
Michel.Girard
Merci beaucoup Corona, je garde ta proc, c'est très sympa de ta part
Michel

"Corona" <Philippe Tulliez> a écrit dans le message de news:

Bonsoir Michel,
Voici le code d'une fonction qui te renvoie "Vrai" si "tout est
majuscule " et "Faux" s'il y a au moins une minuscule.
Philippe

Function TestMaj(Nom As String) As Boolean
Count = Len(Nom): TestMaj = True
For x = 1 To Count
Select Case Asc(Mid(Nom, x, 1))
Case 65 To 90, 32
Case Else
TestMaj = False: Exit Function
End Select
Next
End Function

Sub Test()
If TestMaj("CECI EST EN MAJUSCULE ") Then MsgBox ("Tout est en
majuscule")
Else MsgBox "Il y a au moins une minuscule"
End Sub


"Michel.Girard" a écrit dans le message
de news: %23Y3$
Je désire écrire en VBA :
Si dans ActiveCell.Offset(0, 1) les lettres sont en majuscules, alors :
msgbox "toto"
Merci beaucoup








1 2 3