extraire un seul mot avec vb - VB/VBA/VBS - Programmation
Marsh Posté le 30-05-2005 à 15:04:05
dim mot = ton_mot As String
dim NouveauMot As String
dim gauche as Integer ' le nombre de caracteres a gauche
dim droite as Integer ' le nombre de caracteres a droite
NouveauMot = left(mot, gauche) & right(mot,droite)
Ca ne marche pas ? Ou est la difficulté ?
Marsh Posté le 30-05-2005 à 15:24:15
je ne connais pas le nombre de caractère espace à extraire : il peut être variable voire inexistant
je pensais plutôt à une structure du type :
for i=1 to len(mot)
if caractere = right (left (mot, i)), 1) <> ' ' Then
mot = caractere + mot
end if
next (i)
l'enchainement de right et left avec le paramètre 1 pour right permet d'avancer caractère par caractère dans le champ.
mais visiblement, ca ne fonctionne pas...
Marsh Posté le 30-05-2005 à 19:14:21
Donne-nous un exemple concret d'un contenu et de ce que tu veux extraire ainsi que la version d'Office (ou de VB) que tu utilises.
Marsh Posté le 31-05-2005 à 21:44:42
Ca va pas??????
Tu as une instruction qui fait cela tres judicieisement. C'est INSTR, tu lui donnes le mot string, la chaine string ou chercher, et le début de la chaine integer, pour démarrer la recherche
Instr$ te renvoie la position, ensuite tu obtiens le mot avec la position dans la chaine et la longueur via l'instruction MID$
Voilà
En gros
chaine$= la chaine de caracteres string
debut%= le premier caractere au départ 1
motcherché$= le mot en question
donc:
position%=instr(debut%,chaine$,motcherché$)
extraction:
motextrait$=mid$(chaine$,position%,len(motcherché$))
ensuite pour aller chercher le suivant
remplace debut% par debut% = position£+len(motcherché$
ensuite tu peux remplacer le mot par un autre string etc..
etc...
Voila j'ai essayé d'etre clair.
Alain
Marsh Posté le 30-05-2005 à 14:36:55
bonjour
je cherche à extraire un seul mot d'un champ qui peut en choisir plusieurs
je ne sais pas si je me fais bien comprendre...
en fait, au moyen de left et de right, je recherche le début et la fin du mot, j'extrais les caractères qui se trouvent entre les 2 extrémités et j'obtiens le mot
j'ai auparavant supprimé les espaces du début et de la fin avec LTrim et RTrim
mais je ne parviens à extraire le mot
help me please
merci d'avance