Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recherche caractere dans un champ

7 réponses
Avatar
Exodus
Bonjour,

Un petit problème pour lequel je ne trouve pas de solution simple :
Dans une table Access j'ai un champ qui contient des adresses mail avec
comme séparateur une virgule comme par ex "titi@tt.com,vtiti@hj.com". Or je
voudrais pouvoir extraire que la première adresse mail. Existe-t-il une
fonction permettant de récupérer tout ce qui est à gauche de la virgule ?

Voilà c'est tout.
Merci pour vos infos.

7 réponses

Avatar
Thierry (ze Titi)
Hello Exodus !

taVariable=Left(tonChamps, Instr(tonChamp,",")-1)

En ce jour mémorable du mercredi 11/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour,

Un petit problème pour lequel je ne trouve pas de solution simple :
Dans une table Access j'ai un champ qui contient des adresses mail avec
comme séparateur une virgule comme par ex ",". Or je
voudrais pouvoir extraire que la première adresse mail. Existe-t-il une
fonction permettant de récupérer tout ce qui est à gauche de la virgule ?

Voilà c'est tout.
Merci pour vos infos.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
Exodus

Hello Exodus !

taVariable=Left(tonChamps, Instr(tonChamp,",")-1)

En ce jour mémorable du mercredi 11/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour,

Un petit problème pour lequel je ne trouve pas de solution simple :
Dans une table Access j'ai un champ qui contient des adresses mail avec
comme séparateur une virgule comme par ex ",". Or je
voudrais pouvoir extraire que la première adresse mail. Existe-t-il une
fonction permettant de récupérer tout ce qui est à gauche de la virgule ?

Voilà c'est tout.
Merci pour vos infos.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info






Avatar
Gloops
Thierry (ze Titi) a écrit, le 11/07/2007 15:23 :
Hello Exodus !

taVariable=Left(tonChamps, Instr(tonChamp,",")-1)


Salut,

Effectivement, on peut faire comme ça et c'est le plus simple.

Comme j'ai un esprit un peu compliqué, j'anticipe l'intention de pouvoi r
extraire les différentes adresses mail inscrites dans le champ.

Dim ListeAdresses() as String
'très importantes, les parenthèses
'Attention qu'il existe deux syntaxes de Split selon la plateforme
utilisée (si je ne me trompe, DAO ou ADO)


ListeAdresses = Split(tonChamps, ",")

premiereadresse = ListeAdresses(0)

deuxiemeadresse = ListeAdresses(1)

NombreDadresses = UBound(ListeAdresses)

Pour vérifier à quel indice on commence : LBound(ListeAdresses)

Ce qui n'empêche, bien entendu, de considérer que ça serait plus
rationnel d'avoir une adresse par enregistrement, et autant
d'enregistrements par correspondant qu'il propose d'adresses pour le
contacter. Mais à ce moment-là, on n'utilise plus ni Instr, ni Split.


Bien entendu, une fois que la base est faite comme ça ...

Avatar
christian
Bonjour,

Tu importe ta table dans excel tu fais remplacé ( , *)par rien
et tu teretrouve avec une table sans les caractères se situant à droite de
ta virgule

Bye Christian

"Exodus" a écrit dans le message de
news:
Bonjour,

Un petit problème pour lequel je ne trouve pas de solution simple :
Dans une table Access j'ai un champ qui contient des adresses mail avec
comme séparateur une virgule comme par ex ",". Or
je
voudrais pouvoir extraire que la première adresse mail. Existe-t-il une
fonction permettant de récupérer tout ce qui est à gauche de la virgule ?

Voilà c'est tout.
Merci pour vos infos.


Avatar
Thierry (ze Titi)
Bonjour Gloops

Effectivement, on peut imaginer d'extraire une adresse quelconque.
Dans ce cas, utilisons ce que tu proposes:

Function exrtaireAdresse(chaineAdresses As String, Optional indiceAdresse As Integer =1, Optional separateur As String = ",") As String
Dim listeAdresses() As String
listeAdresses=split(chaineAdresses,separateur)
extraireAdresse=listeAdresses(indiceAdress-1)
End Function

Si on veut connaître le nombre d'adresses présentes dans la chaîne:

Function nombreAdresses(chaineAdresses As String, Optional separateur As String = ",") As Integer
Dim listeAdresses() As String
listeAdresses=split(chaineAdresses,separateur)
nombreAdresses=UBound(listeAdresses)+1
End Function

Thierry (ze Titi) a écrit, le 11/07/2007 15:23 :
Hello Exodus !

taVariable=Left(tonChamps, Instr(tonChamp,",")-1)


Salut,

Effectivement, on peut faire comme ça et c'est le plus simple.

Comme j'ai un esprit un peu compliqué, j'anticipe l'intention de pouvoir
extraire les différentes adresses mail inscrites dans le champ.

Dim ListeAdresses() as String
'très importantes, les parenthèses
'Attention qu'il existe deux syntaxes de Split selon la plateforme
utilisée (si je ne me trompe, DAO ou ADO)


ListeAdresses = Split(tonChamps, ",")

premiereadresse = ListeAdresses(0)

deuxiemeadresse = ListeAdresses(1)

NombreDadresses = UBound(ListeAdresses)

Pour vérifier à quel indice on commence : LBound(ListeAdresses)

Ce qui n'empêche, bien entendu, de considérer que ça serait plus rationnel
d'avoir une adresse par enregistrement, et autant d'enregistrements par
correspondant qu'il propose d'adresses pour le contacter. Mais à ce
moment-là, on n'utilise plus ni Instr, ni Split.


Bien entendu, une fois que la base est faite comme ça ...


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info


Avatar
Exodus
En fait dans ma requête j'ai utilisé cette formule qui permet d'extraire
seulement la 1ère adresse mail et cela fonctionne parfaitement :
Email1: VraiFaux(DansChaîne([Internet Address];",");Gauche([Internet
Address];DansChaîne([Internet Address];",")-1);[Internet Address])

Merci à tous.


Bonjour,

Tu importe ta table dans excel tu fais remplacé ( , *)par rien
et tu teretrouve avec une table sans les caractères se situant à droite de
ta virgule

Bye Christian

"Exodus" a écrit dans le message de
news:
Bonjour,

Un petit problème pour lequel je ne trouve pas de solution simple :
Dans une table Access j'ai un champ qui contient des adresses mail avec
comme séparateur une virgule comme par ex ",". Or
je
voudrais pouvoir extraire que la première adresse mail. Existe-t-il une
fonction permettant de récupérer tout ce qui est à gauche de la virgule ?

Voilà c'est tout.
Merci pour vos infos.






Avatar
Gloops
ça, au moins, c'est fignolé :)

Pour finir, Exodus a choisi ta première version, mais traduite en
Français. Il faut bien être un peu chauvin, de temps en temps :)

________________________________________________
Thierry (ze Titi) a écrit, le 12/07/2007 12:34 :
Bonjour Gloops

Effectivement, on peut imaginer d'extraire une adresse quelconque.
Dans ce cas, utilisons ce que tu proposes:

Function exrtaireAdresse(chaineAdresses As String, Optional indiceAdres se As Integer =1, Optional separateur As String = ",") As String
Dim listeAdresses() As String
listeAdresses=split(chaineAdresses,separateur)
extraireAdresse=listeAdresses(indiceAdress-1)
End Function

Si on veut connaître le nombre d'adresses présentes dans la chaîn e:

Function nombreAdresses(chaineAdresses As String, Optional separateur A s String = ",") As Integer
Dim listeAdresses() As String
listeAdresses=split(chaineAdresses,separateur)
nombreAdresses=UBound(listeAdresses)+1
End Function