Dans une cellule (A1), une phrase variable contient un mot en majuscules,
variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une
majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1.
Si par hasard la phrase contient deux mots en majuscule, je ne souhaite
récupérer que le premier (le plus à gauche).
En utilisant des len, left et des Ucase, j'ai maladroitement tenté diverses
choses qui ne fontionnent pas bien.
Bonjour, essaie cette macro Sub trouver_majuscule x = Range("a1").Value For i = 1 To Len(x) lettre = Right(Left(x, i), 1) If lettre = UCase(lettre) And lettre <> " " Then mot = mot & lettre End If Next MsgBox mot End Sub
Amicalement Sisting Hoax "Coriandre" a écrit dans le message de news:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diverses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
Bonjour,
essaie cette macro
Sub trouver_majuscule
x = Range("a1").Value
For i = 1 To Len(x)
lettre = Right(Left(x, i), 1)
If lettre = UCase(lettre) And lettre <> " " Then
mot = mot & lettre
End If
Next
MsgBox mot
End Sub
Amicalement
Sisting Hoax
"Coriandre" <nospam-wattin@free.fr.invalid> a écrit dans le message de news:
ugHeGaEgIHA.536@TK2MSFTNGP06.phx.gbl...
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules,
variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une
majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1.
Si par hasard la phrase contient deux mots en majuscule, je ne souhaite
récupérer que le premier (le plus à gauche).
En utilisant des len, left et des Ucase, j'ai maladroitement tenté
diverses choses qui ne fontionnent pas bien.
Bonjour, essaie cette macro Sub trouver_majuscule x = Range("a1").Value For i = 1 To Len(x) lettre = Right(Left(x, i), 1) If lettre = UCase(lettre) And lettre <> " " Then mot = mot & lettre End If Next MsgBox mot End Sub
Amicalement Sisting Hoax "Coriandre" a écrit dans le message de news:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diverses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
JB
Bonjour,
Function Mot(ph) i = 1 Do While i <= Len(ph) - 2 And Not témoin If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1 Mot = Mid(ph, i, p - i) témoin = True End If i = i + 1 Loop End Function
JB
On 7 mar, 12:28, "Coriandre" wrote:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
Bonjour,
Function Mot(ph)
i = 1
Do While i <= Len(ph) - 2 And Not témoin
If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then
p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1
Mot = Mid(ph, i, p - i)
témoin = True
End If
i = i + 1
Loop
End Function
JB
On 7 mar, 12:28, "Coriandre" <nospam-wat...@free.fr.invalid> wrote:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules,
variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une
majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1.
Si par hasard la phrase contient deux mots en majuscule, je ne souhaite
récupérer que le premier (le plus à gauche).
En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses
choses qui ne fontionnent pas bien.
Function Mot(ph) i = 1 Do While i <= Len(ph) - 2 And Not témoin If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1 Mot = Mid(ph, i, p - i) témoin = True End If i = i + 1 Loop End Function
JB
On 7 mar, 12:28, "Coriandre" wrote:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
francois.forcet
On 7 mar, 12:28, "Coriandre" wrote:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
Salut Coriandre
Ce code devrait faire :
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next
Dis moi !!!!
On 7 mar, 12:28, "Coriandre" <nospam-wat...@free.fr.invalid> wrote:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules,
variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une
majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1.
Si par hasard la phrase contient deux mots en majuscule, je ne souhaite
récupérer que le premier (le plus à gauche).
En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses
choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
--
Coriandre
Salut Coriandre
Ce code devrait faire :
For i = 0 To UBound(Split(Range("A1")))
If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i))
Then
Range("B1") = Split(Range("A1"), " ")(i)
Exit For
End If
Next
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
Salut Coriandre
Ce code devrait faire :
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next
Dis moi !!!!
francois.forcet
On 7 mar, 12:28, "Coriandre" wrote:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
Rebonjour Coriandre
Dans ma proposition je n'ai pas tenu compte des mots à 1 lettre !!!! Mille excuses Ce code qui en tient compte :
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) And Len(Split(Range("A1"), " ")(i)) > 1 Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next
Celà devrait être nettement mieux
Dis moi !!!!
On 7 mar, 12:28, "Coriandre" <nospam-wat...@free.fr.invalid> wrote:
Bonjour,
Dans une cellule (A1), une phrase variable contient un mot en majuscules,
variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une
majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1.
Si par hasard la phrase contient deux mots en majuscule, je ne souhaite
récupérer que le premier (le plus à gauche).
En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses
choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
--
Coriandre
Rebonjour Coriandre
Dans ma proposition je n'ai pas tenu compte des mots à 1 lettre !!!!
Mille excuses
Ce code qui en tient compte :
For i = 0 To UBound(Split(Range("A1")))
If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i))
And Len(Split(Range("A1"), " ")(i)) > 1 Then
Range("B1") = Split(Range("A1"), " ")(i)
Exit For
End If
Next
Dans une cellule (A1), une phrase variable contient un mot en majuscules, variable aussi et de place variable dans la phrase.
Ce mot contient au moins 2 lettres (pour éliminer les mots contenant une majuscule de début de phrase).
Je souhaite récupérer ce seul mot dans la cellule B1. Si par hasard la phrase contient deux mots en majuscule, je ne souhaite récupérer que le premier (le plus à gauche). En utilisant des len, left et des Ucase, j'ai maladroitement tenté diver ses choses qui ne fontionnent pas bien.
Comment faire ?
Merci de votre aide.
-- Coriandre
Rebonjour Coriandre
Dans ma proposition je n'ai pas tenu compte des mots à 1 lettre !!!! Mille excuses Ce code qui en tient compte :
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) And Len(Split(Range("A1"), " ")(i)) > 1 Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next
Celà devrait être nettement mieux
Dis moi !!!!
Coriandre
"JB" a écrit dans le message de news:
Function Mot(ph) i = 1 Do While i <= Len(ph) - 2 And Not témoin If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1 Mot = Mid(ph, i, p - i) témoin = True End If i = i + 1 Loop End Function
JB
----------------------------------------
Merci de ton aide.
Intuitivement, la macro semble tenir compte de l'élimination d'un second mot en majuscules. (Je ne vois pas bien en revanche comment elle récupère les mots majuscules : Grâce à Like "[A-Z][A-Z]" ?)
Mais je ne peux le vérifier car n'arrive pas à utiliser la fonction. Une fois placée la fonction dans un module à part, faut-il créer une macro nommée : Sub trouver_majuscule_2() 'blablabla End Sub et que mettre dans cette macro pour que le résultat du mot en majuscule se place en B1 ?
-- Coriandre
"JB" <boisgontier@hotmail.com> a écrit dans le message de
news:40da692a-9f07-49f7-bed2-d25a568fcc81@59g2000hsb.googlegroups.com...
Function Mot(ph)
i = 1
Do While i <= Len(ph) - 2 And Not témoin
If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then
p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1
Mot = Mid(ph, i, p - i)
témoin = True
End If
i = i + 1
Loop
End Function
JB
----------------------------------------
Merci de ton aide.
Intuitivement, la macro semble tenir compte de l'élimination d'un second mot
en majuscules.
(Je ne vois pas bien en revanche comment elle récupère les mots majuscules :
Grâce à Like "[A-Z][A-Z]" ?)
Mais je ne peux le vérifier car n'arrive pas à utiliser la fonction.
Une fois placée la fonction dans un module à part, faut-il créer une macro
nommée :
Sub trouver_majuscule_2()
'blablabla
End Sub
et que mettre dans cette macro pour que le résultat du mot en majuscule se
place en B1 ?
Function Mot(ph) i = 1 Do While i <= Len(ph) - 2 And Not témoin If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1 Mot = Mid(ph, i, p - i) témoin = True End If i = i + 1 Loop End Function
JB
----------------------------------------
Merci de ton aide.
Intuitivement, la macro semble tenir compte de l'élimination d'un second mot en majuscules. (Je ne vois pas bien en revanche comment elle récupère les mots majuscules : Grâce à Like "[A-Z][A-Z]" ?)
Mais je ne peux le vérifier car n'arrive pas à utiliser la fonction. Une fois placée la fonction dans un module à part, faut-il créer une macro nommée : Sub trouver_majuscule_2() 'blablabla End Sub et que mettre dans cette macro pour que le résultat du mot en majuscule se place en B1 ?
-- Coriandre
Coriandre
a écrit dans le message de news: On 7 mar, 12:28, "Coriandre" wrote:
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) And Len(Split(Range("A1"), " ")(i)) > 1 Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next --------------------------------------
Cela fonctionne très bien, à condition que la phrase ne contienne pas de caractère type : ou ; etc. avant le mot en majuscules.
Mais je dois pouvoir adapter le code comme avec celui de Sitting Hoax.
Grand merci.
-- Coriandre
<francois.forcet@wanadoo.fr> a écrit dans le message de
news:2beb1d3c-383f-4b31-a290-fdd5794bf349@q78g2000hsh.googlegroups.com...
On 7 mar, 12:28, "Coriandre" <nospam-wat...@free.fr.invalid> wrote:
For i = 0 To UBound(Split(Range("A1")))
If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i))
And Len(Split(Range("A1"), " ")(i)) > 1 Then
Range("B1") = Split(Range("A1"), " ")(i)
Exit For
End If
Next
--------------------------------------
Cela fonctionne très bien, à condition que la phrase ne contienne pas de
caractère type : ou ; etc. avant le mot en majuscules.
Mais je dois pouvoir adapter le code comme avec celui de Sitting Hoax.
a écrit dans le message de news: On 7 mar, 12:28, "Coriandre" wrote:
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) And Len(Split(Range("A1"), " ")(i)) > 1 Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next --------------------------------------
Cela fonctionne très bien, à condition que la phrase ne contienne pas de caractère type : ou ; etc. avant le mot en majuscules.
Mais je dois pouvoir adapter le code comme avec celui de Sitting Hoax.
Grand merci.
-- Coriandre
Coriandre
"Sitting Hoax" a écrit dans le message de news:
Bonjour, essaie cette macro Sub trouver_majuscule x = Range("a1").Value For i = 1 To Len(x) lettre = Right(Left(x, i), 1) If lettre = UCase(lettre) And lettre <> " " Then mot = mot & lettre End If Next MsgBox mot End Sub
Merci de ta proposition.
Adaptée ainsi : ------------- Sub trouver_majuscule() x = Range("a1").Value For i = 1 To Len(x) Lettre = Right(Left(x, i), 1) If Lettre = UCase(Lettre) And Lettre <> " " _
'Ajout de condition pour éliminer les chiffres And Not IsNumeric(Lettre) Then
'Ajout de condition pour éliminer les caractères non lettrés (exemple les :) If Asc(Lettre) > 64 And Asc(Lettre) < 91 Then
Mot = Mot & Lettre End If End If Next MsgBox Mot End Sub -------------
ça fonctionne avec un hic : tous les mots en majuscule sont récupérés et accolés les uns aux autres.
Comment, sur la base de ton code, ne récupérer que le premier mot en majuscules de la phrase ?
-- Coriandre
"Sitting Hoax" <l_a_u_r_e_n_t_._d_a_u_r_e_s_sansles_@orange.fr> a écrit dans
le message de news:uDzljpEgIHA.4684@TK2MSFTNGP06.phx.gbl...
Bonjour,
essaie cette macro
Sub trouver_majuscule
x = Range("a1").Value
For i = 1 To Len(x)
lettre = Right(Left(x, i), 1)
If lettre = UCase(lettre) And lettre <> " " Then
mot = mot & lettre
End If
Next
MsgBox mot
End Sub
Merci de ta proposition.
Adaptée ainsi :
-------------
Sub trouver_majuscule()
x = Range("a1").Value
For i = 1 To Len(x)
Lettre = Right(Left(x, i), 1)
If Lettre = UCase(Lettre) And Lettre <> " " _
'Ajout de condition pour éliminer les chiffres
And Not IsNumeric(Lettre) Then
'Ajout de condition pour éliminer les caractères non lettrés (exemple les :)
If Asc(Lettre) > 64 And Asc(Lettre) < 91 Then
Mot = Mot & Lettre
End If
End If
Next
MsgBox Mot
End Sub
-------------
ça fonctionne avec un hic : tous les mots en majuscule sont récupérés et
accolés les uns aux autres.
Comment, sur la base de ton code, ne récupérer que le premier mot en
majuscules de la phrase ?
Bonjour, essaie cette macro Sub trouver_majuscule x = Range("a1").Value For i = 1 To Len(x) lettre = Right(Left(x, i), 1) If lettre = UCase(lettre) And lettre <> " " Then mot = mot & lettre End If Next MsgBox mot End Sub
Merci de ta proposition.
Adaptée ainsi : ------------- Sub trouver_majuscule() x = Range("a1").Value For i = 1 To Len(x) Lettre = Right(Left(x, i), 1) If Lettre = UCase(Lettre) And Lettre <> " " _
'Ajout de condition pour éliminer les chiffres And Not IsNumeric(Lettre) Then
'Ajout de condition pour éliminer les caractères non lettrés (exemple les :) If Asc(Lettre) > 64 And Asc(Lettre) < 91 Then
Mot = Mot & Lettre End If End If Next MsgBox Mot End Sub -------------
ça fonctionne avec un hic : tous les mots en majuscule sont récupérés et accolés les uns aux autres.
Comment, sur la base de ton code, ne récupérer que le premier mot en majuscules de la phrase ?
-- Coriandre
JB
http://cjoint.com/?dho1cyIb2K
JB
On 7 mar, 14:13, "Coriandre" wrote:
"JB" a écrit dans le message denews:40da692a-9
Function Mot(ph) i = 1 Do While i <= Len(ph) - 2 And Not témoin If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1 Mot = Mid(ph, i, p - i) témoin = True End If i = i + 1 Loop End Function
JB
----------------------------------------
Merci de ton aide.
Intuitivement, la macro semble tenir compte de l'élimination d'un second mot en majuscules. (Je ne vois pas bien en revanche comment elle récupère les mots majusc ules : Grâce à Like "[A-Z][A-Z]" ?)
Mais je ne peux le vérifier car n'arrive pas à utiliser la fonction. Une fois placée la fonction dans un module à part, faut-il créer une macro nommée : Sub trouver_majuscule_2() 'blablabla End Sub et que mettre dans cette macro pour que le résultat du mot en majuscule se place en B1 ?
-- Coriandre
http://cjoint.com/?dho1cyIb2K
JB
On 7 mar, 14:13, "Coriandre" <nospam-wat...@free.fr.invalid> wrote:
"JB" <boisgont...@hotmail.com> a écrit dans le message denews:40da692a-9 f07-49f7-bed2-d25a568fcc81@59g2000hsb.googlegroups.com...
Function Mot(ph)
i = 1
Do While i <= Len(ph) - 2 And Not témoin
If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then
p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1
Mot = Mid(ph, i, p - i)
témoin = True
End If
i = i + 1
Loop
End Function
JB
----------------------------------------
Merci de ton aide.
Intuitivement, la macro semble tenir compte de l'élimination d'un second mot
en majuscules.
(Je ne vois pas bien en revanche comment elle récupère les mots majusc ules :
Grâce à Like "[A-Z][A-Z]" ?)
Mais je ne peux le vérifier car n'arrive pas à utiliser la fonction.
Une fois placée la fonction dans un module à part, faut-il créer une macro
nommée :
Sub trouver_majuscule_2()
'blablabla
End Sub
et que mettre dans cette macro pour que le résultat du mot en majuscule se
place en B1 ?
Function Mot(ph) i = 1 Do While i <= Len(ph) - 2 And Not témoin If Mid(ph, i, 2) Like "[A-Z][A-Z]" Then p = InStr(i, ph, " "): If p = 0 Then p = Len(ph) + 1 Mot = Mid(ph, i, p - i) témoin = True End If i = i + 1 Loop End Function
JB
----------------------------------------
Merci de ton aide.
Intuitivement, la macro semble tenir compte de l'élimination d'un second mot en majuscules. (Je ne vois pas bien en revanche comment elle récupère les mots majusc ules : Grâce à Like "[A-Z][A-Z]" ?)
Mais je ne peux le vérifier car n'arrive pas à utiliser la fonction. Une fois placée la fonction dans un module à part, faut-il créer une macro nommée : Sub trouver_majuscule_2() 'blablabla End Sub et que mettre dans cette macro pour que le résultat du mot en majuscule se place en B1 ?
-- Coriandre
francois.forcet
On 7 mar, 14:22, "Coriandre" wrote:
a écrit dans le message denews:2beb1d3c-383 On 7 mar, 12:28, "Coriandre" wrote:
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) And Len(Split(Range("A1"), " ")(i)) > 1 Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next --------------------------------------
Cela fonctionne très bien, à condition que la phrase ne contienne pas de caractère type : ou ; etc. avant le mot en majuscules.
Mais je dois pouvoir adapter le code comme avec celui de Sitting Hoax.
Grand merci.
-- Coriandre
Rebonjours Coriandre Les caractères type (ou; etc) sont des mots à par entière Si tu souhaites récupérer le 1° mots en majuscule ayant minimum 2 lettres tous ce qui est écrit en lettres dans ta phrase répondant au critère du nombre est un résultat valable si tant est qu'il soit en majuscule Je ne vois pas quel code pourrais les différencier si ce n'est celui qui prendrait en compte une liste d'exclusion établit
Si je me trompe que l'on me dise en quoi ?????
On 7 mar, 14:22, "Coriandre" <nospam-wat...@free.fr.invalid> wrote:
<francois.for...@wanadoo.fr> a écrit dans le message denews:2beb1d3c-383 f-4b31-a290-fdd5794bf349@q78g2000hsh.googlegroups.com...
On 7 mar, 12:28, "Coriandre" <nospam-wat...@free.fr.invalid> wrote:
For i = 0 To UBound(Split(Range("A1")))
If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i))
And Len(Split(Range("A1"), " ")(i)) > 1 Then
Range("B1") = Split(Range("A1"), " ")(i)
Exit For
End If
Next
--------------------------------------
Cela fonctionne très bien, à condition que la phrase ne contienne pas de
caractère type : ou ; etc. avant le mot en majuscules.
Mais je dois pouvoir adapter le code comme avec celui de Sitting Hoax.
Grand merci.
--
Coriandre
Rebonjours Coriandre
Les caractères type (ou; etc) sont des mots à par entière
Si tu souhaites récupérer le 1° mots en majuscule ayant minimum 2
lettres tous ce qui est écrit en lettres dans ta phrase répondant au
critère du nombre est un résultat valable si tant est qu'il soit en
majuscule
Je ne vois pas quel code pourrais les différencier si ce n'est celui
qui prendrait en compte une liste d'exclusion établit
a écrit dans le message denews:2beb1d3c-383 On 7 mar, 12:28, "Coriandre" wrote:
For i = 0 To UBound(Split(Range("A1"))) If Split(Range("A1"), " ")(i) = UCase(Split(Range("A1"), " ")(i)) And Len(Split(Range("A1"), " ")(i)) > 1 Then Range("B1") = Split(Range("A1"), " ")(i) Exit For End If Next --------------------------------------
Cela fonctionne très bien, à condition que la phrase ne contienne pas de caractère type : ou ; etc. avant le mot en majuscules.
Mais je dois pouvoir adapter le code comme avec celui de Sitting Hoax.
Grand merci.
-- Coriandre
Rebonjours Coriandre Les caractères type (ou; etc) sont des mots à par entière Si tu souhaites récupérer le 1° mots en majuscule ayant minimum 2 lettres tous ce qui est écrit en lettres dans ta phrase répondant au critère du nombre est un résultat valable si tant est qu'il soit en majuscule Je ne vois pas quel code pourrais les différencier si ce n'est celui qui prendrait en compte une liste d'exclusion établit
Si je me trompe que l'on me dise en quoi ?????
Coriandre
"JB" a écrit dans le message de news: http://cjoint.com/?dho1cyIb2K JB ----------------------------------
Cela fonctionne parfaitement. Merci !
-- Coriandre
"JB" <boisgontier@hotmail.com> a écrit dans le message de
news:3aab45d7-e7ca-431c-9332-f34ff698e312@q78g2000hsh.googlegroups.com...
http://cjoint.com/?dho1cyIb2K
JB
----------------------------------