INITIALE EN MAJUSCULE POUR PLUSIEURS NOMS INSCRITS A LA SUITE, EGALEMENT PRENOMS

tmcuh Messages postés 458 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 18 avril 2009 - 5 mars 2003 à 18:52
akastels Messages postés 5 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 2 juin 2003 - 17 mai 2003 à 17:23
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/6312-initiale-en-majuscule-pour-plusieurs-noms-inscrits-a-la-suite-egalement-prenoms-avec-tiret

akastels Messages postés 5 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 2 juin 2003
17 mai 2003 à 17:23
Voici le code que j'emploie depuis longtemps (je dis ça au cas où...):
Function PremMaj()
Dim SD As Variant, mc As Control, I As Integer
Dim mf As Form
Set mf = Screen.ActiveForm
mf.HelpContextId = 1
Set mc = Screen.ActiveControl
mc = UCase(Left(Trim(mc), 1)) & Mid(Trim(mc), 2)
For I = 1 To Len(mc) - 1
SD = Mid(mc, I, 1)
If SD "-" Or SD "_" Or SD = " " Or Asc(SD) = 13 Or Asc(SD) = 10 Then
mc = Left(mc, I) & UCase(Mid(mc, I + 1, 1)) & Mid(mc, I + 2)
Else
mc = Left(mc, I) & LCase(Mid(mc, I + 1))
End If
Next I
mc = Trim(mc)
End Function

Celui-ci a l'avantage de mettre la majuscule au 2ème prénom si celui-ci est composé, puis après un retour chariot, à la ligne, ou séparé par "_".
cs_mariochk Messages postés 11 Date d'inscription vendredi 1 février 2002 Statut Membre Dernière intervention 7 octobre 2004
6 mars 2003 à 22:18
Autant pour moi, je l'ai pourtant cherchée cette commande, mais depuis l'aide ACCESS avec des mots clés (INITIALE, MAJUSCULE, etc ) NADA ! MERCI A TOI ça me réconcilie avec VB car je trouvais un peu débile de devoir créer à la main une commande qui aurait dû être inclue ...
VicoLaChips2 Messages postés 436 Date d'inscription dimanche 20 janvier 2002 Statut Membre Dernière intervention 2 février 2010 2
6 mars 2003 à 18:22
Autrement il y a une fonction incluse à vba :
dim result as string
result = strConv(MaChaineDeCaractere,vbProperCase)
@+
KaViDee Messages postés 262 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 18 juin 2008
6 mars 2003 à 00:15
Mes 12 Fonctions super utiles, c'est un vieux truc tout pourri que j'avais fais il y longtemps et qd je venais tout juste de découvrir ces fonctions.
Et l'algo qui permet de mettre tous les mots en majuscule je viens de le trouver aujourd'hui.
Salut grand Dieu...
cs_mariochk Messages postés 11 Date d'inscription vendredi 1 février 2002 Statut Membre Dernière intervention 7 octobre 2004
5 mars 2003 à 23:39
EN +, TES 12 SUPER FONCTIONS SUPER UTILES NE SONT PAS FICHUES DE METTRE L'INITIALE EN MAJUSCULE A CHAQUE NOM INSERES SUR UNE LIGNE BEURK ! ENCORE UNE PREUVE QUE JE T'AI PAS COPIE ET J'AI BIEN FAIT, SINON JE DEVRAIS ENCORE ME CREUSER POUR TROUVER LA SOLUCE ! Salut petit dieu
cs_mariochk Messages postés 11 Date d'inscription vendredi 1 février 2002 Statut Membre Dernière intervention 7 octobre 2004
5 mars 2003 à 23:28
En + t'as fait un mid pour chercher l'espace alors que j'ai fait un right, si je t'avais copié, j'aurais changé une virgule pas une commande (...)Quant à la ligne
txtTitre = Left(txtTitre, i) & ... etc
n'importe quel tdc de programmeur aurait fait de même pour concaténer les 3 éléments !!!!! salut DIEU LE SAUVEUR
cs_mariochk Messages postés 11 Date d'inscription vendredi 1 février 2002 Statut Membre Dernière intervention 7 octobre 2004
5 mars 2003 à 22:53
N'importe quoi, j'ai cherché dans le code source avec majuscule ou initiale et rien n'est sorti, alors j'ai créé qqch, sans savoir qu'un autre flan faisait de même, POUR QUI TU ME PRENDS TAS DE NEIGE ? CHUI PAS TOMBE DE LA POUSSETTE !
KaViDee Messages postés 262 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 18 juin 2008
5 mars 2003 à 20:27
Pour la peine je te mets 1
KaViDee Messages postés 262 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 18 juin 2008
5 mars 2003 à 20:23
T'as pas l'impression de t'être inspiré de ma source.
http://www.vbfrance.com/article.aspx?Val=7956
Comme par hazard, juste qd je poste ma source, tu me chies ça dessuite après.
Même si c'est un peu modifié, ya des parties de codes de ma sources.
T'es vraiment pas fin, t'as juste changé la boucle For par une Do:

txtTitre = UCase(Left(txtTitre, 1)) & Right(txtTitre, Len(txtTitre) - 1)
For i = 1 To Len(txtTitre)
If Mid(txtTitre, i, 1) = " " Then
txtTitre = Left(txtTitre, i) & UCase(Mid(txtTitre, i + 1, 1)) & Right(txtTitre, Len(txtTitre) - i - 1)
End If
Next i

(C'est un morceau de ma source)

Copieur
tmcuh Messages postés 458 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 18 avril 2009
5 mars 2003 à 18:52
Super à vrai dire il va me servir pour un prog mais je n'avais jamais pensé à le faire.
9/10 car il manque end if à la fin. ;-)