Bonjour,
J'ai une série de champs contenant comme données les chaines de caractères
suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux
champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour,
J'ai une série de champs contenant comme données les chaines de caractères
suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux
champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour,
J'ai une série de champs contenant comme données les chaines de caractères
suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux
champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
"Marc" écrivait
news:#:Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour Marc
Je ne sais pas si sous Access97, tu dispose de la fonction InstrRev. Si
c'est le cas, tu peux faire ca par une requête. Si absent, il
t'apparatiendra de rechercher la 2eme occurence de "-" en partant de la
position donnée par la 1ere
Par contre je n'ai pas compris pourquopi sur le 3eme exemple, le 3eme
champ a un A.
Je te donne la requête:
1er champ : Mot1: Gauche([chptexte];3)
2e : Mot2: ExtracChaîne([chptexte];DansChaîne(1;[chptexte];"-")+
1;instrrev([chptexte];"-")-DansChaîne(1;[chptexte];"-")-1)
3e:Mot3: Gauche(ExtracChaîne([chptexte];instrrev([chpTexte];"-")+1);1)
tu utilises pour se faire les fonctions Gauche() ou Left ou Left$, les
fonctions Instr() et InstrRev() et la fonction Mid ou Mid$
le sql equivalent est :
SELECT Left([chptexte],3) AS Mot1, Mid([chptexte],InStr(1,[chptexte],"-")
+1,instrrev([chptexte],"-")-InStr(1,[chptexte],"-")-1) AS Mot2, Left(Mid
([chptexte],instrrev([chpTexte],"-")+1),1) AS Mot3
FROM Table1;
Instr : Renvoie une valeur de type Variant (Long) indiquant la position
de la première occurrence d'une chaîne à l'intérieur d'une autre chaîne.
InstrREv : Renvoie la position d'une occurrence d'une chaîne dans une
autre, à partir de la fin de la chaîne.
A+
Eric
"Marc" <marc.badjou@ulb.ac.be> écrivait
news:#ku8Ol6UEHA.1764@TK2MSFTNGP10.phx.gbl:
Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour Marc
Je ne sais pas si sous Access97, tu dispose de la fonction InstrRev. Si
c'est le cas, tu peux faire ca par une requête. Si absent, il
t'apparatiendra de rechercher la 2eme occurence de "-" en partant de la
position donnée par la 1ere
Par contre je n'ai pas compris pourquopi sur le 3eme exemple, le 3eme
champ a un A.
Je te donne la requête:
1er champ : Mot1: Gauche([chptexte];3)
2e : Mot2: ExtracChaîne([chptexte];DansChaîne(1;[chptexte];"-")+
1;instrrev([chptexte];"-")-DansChaîne(1;[chptexte];"-")-1)
3e:Mot3: Gauche(ExtracChaîne([chptexte];instrrev([chpTexte];"-")+1);1)
tu utilises pour se faire les fonctions Gauche() ou Left ou Left$, les
fonctions Instr() et InstrRev() et la fonction Mid ou Mid$
le sql equivalent est :
SELECT Left([chptexte],3) AS Mot1, Mid([chptexte],InStr(1,[chptexte],"-")
+1,instrrev([chptexte],"-")-InStr(1,[chptexte],"-")-1) AS Mot2, Left(Mid
([chptexte],instrrev([chpTexte],"-")+1),1) AS Mot3
FROM Table1;
Instr : Renvoie une valeur de type Variant (Long) indiquant la position
de la première occurrence d'une chaîne à l'intérieur d'une autre chaîne.
InstrREv : Renvoie la position d'une occurrence d'une chaîne dans une
autre, à partir de la fin de la chaîne.
A+
Eric
"Marc" écrivait
news:#:Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour Marc
Je ne sais pas si sous Access97, tu dispose de la fonction InstrRev. Si
c'est le cas, tu peux faire ca par une requête. Si absent, il
t'apparatiendra de rechercher la 2eme occurence de "-" en partant de la
position donnée par la 1ere
Par contre je n'ai pas compris pourquopi sur le 3eme exemple, le 3eme
champ a un A.
Je te donne la requête:
1er champ : Mot1: Gauche([chptexte];3)
2e : Mot2: ExtracChaîne([chptexte];DansChaîne(1;[chptexte];"-")+
1;instrrev([chptexte];"-")-DansChaîne(1;[chptexte];"-")-1)
3e:Mot3: Gauche(ExtracChaîne([chptexte];instrrev([chpTexte];"-")+1);1)
tu utilises pour se faire les fonctions Gauche() ou Left ou Left$, les
fonctions Instr() et InstrRev() et la fonction Mid ou Mid$
le sql equivalent est :
SELECT Left([chptexte],3) AS Mot1, Mid([chptexte],InStr(1,[chptexte],"-")
+1,instrrev([chptexte],"-")-InStr(1,[chptexte],"-")-1) AS Mot2, Left(Mid
([chptexte],instrrev([chpTexte],"-")+1),1) AS Mot3
FROM Table1;
Instr : Renvoie une valeur de type Variant (Long) indiquant la position
de la première occurrence d'une chaîne à l'intérieur d'une autre chaîne.
InstrREv : Renvoie la position d'une occurrence d'une chaîne dans une
autre, à partir de la fin de la chaîne.
A+
Eric
Bonjour Eric.
ce n'est pas supporté sous 97, mais il existe une fonction de
remplacement:
http://access.vba.free.fr/instrrev.htm
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Eric" a écrit dans le message de
news:"Marc" écrivait
news:#:Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour Marc
Je ne sais pas si sous Access97, tu dispose de la fonction InstrRev. Si
c'est le cas, tu peux faire ca par une requête. Si absent, il
t'apparatiendra de rechercher la 2eme occurence de "-" en partant de la
position donnée par la 1ere
Par contre je n'ai pas compris pourquopi sur le 3eme exemple, le 3eme
champ a un A.
Je te donne la requête:
1er champ : Mot1: Gauche([chptexte];3)
2e : Mot2: ExtracChaîne([chptexte];DansChaîne(1;[chptexte];"-")+
1;instrrev([chptexte];"-")-DansChaîne(1;[chptexte];"-")-1)
3e:Mot3: Gauche(ExtracChaîne([chptexte];instrrev([chpTexte];"-")+1);1)
tu utilises pour se faire les fonctions Gauche() ou Left ou Left$, les
fonctions Instr() et InstrRev() et la fonction Mid ou Mid$
le sql equivalent est :
SELECT Left([chptexte],3) AS Mot1,
Mid([chptexte],InStr(1,[chptexte],"-")
+1,instrrev([chptexte],"-")-InStr(1,[chptexte],"-")-1) AS Mot2, Left(Mid
([chptexte],instrrev([chpTexte],"-")+1),1) AS Mot3
FROM Table1;
Instr : Renvoie une valeur de type Variant (Long) indiquant la position
de la première occurrence d'une chaîne à l'intérieur d'une autre chaîne.
InstrREv : Renvoie la position d'une occurrence d'une chaîne dans une
autre, à partir de la fin de la chaîne.
A+
Eric
Bonjour Eric.
ce n'est pas supporté sous 97, mais il existe une fonction de
remplacement:
http://access.vba.free.fr/instrrev.htm
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Eric" <f_framZZ@hotmail.com> a écrit dans le message de
news:XnF950AA8195A29AfframZZhotmailcom@207.46.248.16...
"Marc" <marc.badjou@ulb.ac.be> écrivait
news:#ku8Ol6UEHA.1764@TK2MSFTNGP10.phx.gbl:
Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour Marc
Je ne sais pas si sous Access97, tu dispose de la fonction InstrRev. Si
c'est le cas, tu peux faire ca par une requête. Si absent, il
t'apparatiendra de rechercher la 2eme occurence de "-" en partant de la
position donnée par la 1ere
Par contre je n'ai pas compris pourquopi sur le 3eme exemple, le 3eme
champ a un A.
Je te donne la requête:
1er champ : Mot1: Gauche([chptexte];3)
2e : Mot2: ExtracChaîne([chptexte];DansChaîne(1;[chptexte];"-")+
1;instrrev([chptexte];"-")-DansChaîne(1;[chptexte];"-")-1)
3e:Mot3: Gauche(ExtracChaîne([chptexte];instrrev([chpTexte];"-")+1);1)
tu utilises pour se faire les fonctions Gauche() ou Left ou Left$, les
fonctions Instr() et InstrRev() et la fonction Mid ou Mid$
le sql equivalent est :
SELECT Left([chptexte],3) AS Mot1,
Mid([chptexte],InStr(1,[chptexte],"-")
+1,instrrev([chptexte],"-")-InStr(1,[chptexte],"-")-1) AS Mot2, Left(Mid
([chptexte],instrrev([chpTexte],"-")+1),1) AS Mot3
FROM Table1;
Instr : Renvoie une valeur de type Variant (Long) indiquant la position
de la première occurrence d'une chaîne à l'intérieur d'une autre chaîne.
InstrREv : Renvoie la position d'une occurrence d'une chaîne dans une
autre, à partir de la fin de la chaîne.
A+
Eric
Bonjour Eric.
ce n'est pas supporté sous 97, mais il existe une fonction de
remplacement:
http://access.vba.free.fr/instrrev.htm
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Eric" a écrit dans le message de
news:"Marc" écrivait
news:#:Bonjour,
J'ai une série de champs contenant comme données les chaines de
caractères suivantes :
AAA-1-ABCD4
AAA-2-ABGT45
AAA-01-10
BBB-10-ARRRE20
Je voudrais faire une extraction qui me donnerais comme résultat 3
nouveaux champs contenant :
AAA 1 A
AAA 2 A
AAA 01 A
BBB 10 A
Quelle fonction utiliser ?
Merci
Marc
Bonjour Marc
Je ne sais pas si sous Access97, tu dispose de la fonction InstrRev. Si
c'est le cas, tu peux faire ca par une requête. Si absent, il
t'apparatiendra de rechercher la 2eme occurence de "-" en partant de la
position donnée par la 1ere
Par contre je n'ai pas compris pourquopi sur le 3eme exemple, le 3eme
champ a un A.
Je te donne la requête:
1er champ : Mot1: Gauche([chptexte];3)
2e : Mot2: ExtracChaîne([chptexte];DansChaîne(1;[chptexte];"-")+
1;instrrev([chptexte];"-")-DansChaîne(1;[chptexte];"-")-1)
3e:Mot3: Gauche(ExtracChaîne([chptexte];instrrev([chpTexte];"-")+1);1)
tu utilises pour se faire les fonctions Gauche() ou Left ou Left$, les
fonctions Instr() et InstrRev() et la fonction Mid ou Mid$
le sql equivalent est :
SELECT Left([chptexte],3) AS Mot1,
Mid([chptexte],InStr(1,[chptexte],"-")
+1,instrrev([chptexte],"-")-InStr(1,[chptexte],"-")-1) AS Mot2, Left(Mid
([chptexte],instrrev([chpTexte],"-")+1),1) AS Mot3
FROM Table1;
Instr : Renvoie une valeur de type Variant (Long) indiquant la position
de la première occurrence d'une chaîne à l'intérieur d'une autre chaîne.
InstrREv : Renvoie la position d'une occurrence d'une chaîne dans une
autre, à partir de la fin de la chaîne.
A+
Eric
Bonjour Eric.
ce n'est pas supporté sous 97, mais il existe une fonction de
remplacement: http://access.vba.free.fr/instrrev.htm
Bonjour Eric.
ce n'est pas supporté sous 97, mais il existe une fonction de
remplacement: http://access.vba.free.fr/instrrev.htm
Bonjour Eric.
ce n'est pas supporté sous 97, mais il existe une fonction de
remplacement: http://access.vba.free.fr/instrrev.htm
Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Bonjour Jessy.
c'est pas la grosse artillerie pour faire une telle fonction.
J'ai lancé un appel à cotisation pour qu'on se groupe et que tu puisses
bénéficier d'un raccordement personnel à internet très rapidement.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jessy Sempere [MVP]" a écrit dans le message
de
news:capmhj$4sl$Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Bonjour Jessy.
c'est pas la grosse artillerie pour faire une telle fonction.
J'ai lancé un appel à cotisation pour qu'on se groupe et que tu puisses
bénéficier d'un raccordement personnel à internet très rapidement.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jessy Sempere [MVP]" <jessy.sempere@prg.sncf.fr> a écrit dans le message
de
news:capmhj$4sl$1@muguet.sncf.fr...
Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Bonjour Jessy.
c'est pas la grosse artillerie pour faire une telle fonction.
J'ai lancé un appel à cotisation pour qu'on se groupe et que tu puisses
bénéficier d'un raccordement personnel à internet très rapidement.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jessy Sempere [MVP]" a écrit dans le message
de
news:capmhj$4sl$Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Ah ben j'ai hate... ;-))
Bon j'ai vu ta fonction, effectivement rien de spécial si ce n'est un test
sur tous les caractères...
Perso j'aurais plutôt fait ça :
Public Function fInStrRev(strText As String, strSearch As String) As Long
Dim lngFind As Long
lngFind = InStr(1, strText, strSearch)
Do While lngFind > 0
fInStrRev = lngFind
lngFind = InStr(lngFind + Len(strSearch), strText, strSearch)
Loop
End Function
Ah ben j'ai hate... ;-))
Bon j'ai vu ta fonction, effectivement rien de spécial si ce n'est un test
sur tous les caractères...
Perso j'aurais plutôt fait ça :
Public Function fInStrRev(strText As String, strSearch As String) As Long
Dim lngFind As Long
lngFind = InStr(1, strText, strSearch)
Do While lngFind > 0
fInStrRev = lngFind
lngFind = InStr(lngFind + Len(strSearch), strText, strSearch)
Loop
End Function
Ah ben j'ai hate... ;-))
Bon j'ai vu ta fonction, effectivement rien de spécial si ce n'est un test
sur tous les caractères...
Perso j'aurais plutôt fait ça :
Public Function fInStrRev(strText As String, strSearch As String) As Long
Dim lngFind As Long
lngFind = InStr(1, strText, strSearch)
Do While lngFind > 0
fInStrRev = lngFind
lngFind = InStr(lngFind + Len(strSearch), strText, strSearch)
Loop
End Function
Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97
Tiens je veux bien que tu m'envois ça pour voir... ;-))
vu que je suis fidèle à Access 97