Extraire un mot dans un champ access

Fao -  
 Fao -
Bonjour,

J'ai un champ texte qui contient des infos sous cette forme : XXXXX - AAAAAA

XXXXXX n'a pas toujours la même longueur.

Je veux extraire XXXXXX.

y'a-t-il une formule pour extraiere cela dans Access ?

Merci
A voir également:

4 réponses

Utilisateur anonyme
 
tes AAAAAA ils ont toujous la même longueur ?
C quoi ta version d'Access ?
0
Fao
 
non.
0
Fao
 
J'ai access 2000
0
Utilisateur anonyme
 
Tes XXX et AAA sont toujous séparés d'un espace, d'un - et d'un espace ?
0
Fao > Utilisateur anonyme
 
yes
0
Utilisateur anonyme
 
Autre chose, si par exemple tes xxx font 6 caractères, tes aaa feront 6 aussi ou pas ?
0
Fao > Utilisateur anonyme
 
non.
0
Utilisateur anonyme > Utilisateur anonyme
 
Bon ça va être + compliqué alors.
Je pense ke ça doit être faisable kan même.
Là il faut que je m'en aille, mais je regarderai ça en fin d'aprème.
@+
0
Utilisateur anonyme
 
Je ne sais pas si qq'1 a une meilleure solution que la mienne, car c vrai que c bourrin, mais j'y ai réfléchi, et je ne vois rien d'autre (vu kon ne connait pas le nb de caractères avant et après).
L'idée en question :
tu mets ton champ dans un formulaire.
a un moment choisi (quand tu as saisi dans ce champ, à l'ouverture du form,... peu importe en fait) tu attribues la valeur de ce champ à une variable définie auparavant en 'string' (ma_variable par exemple).
Auparavant tu aura créé un ficher à l'aide du bloc note, que tu appelles comme tu veux (mon_champ.txt par exemple).
tu ouvre ce fichier avec vba : open "c:\mon_champ.txt" for output as #1
tu inscrit la valeur de ton champ :
write #1, ma_variable
tu ferme ton fichier (close #1)
tu le réouvre en mode lecture : open "c:\mon_champ.txt" for input as #1
tu définies deux variables string (variable_ecrite et variable_lue) et un compteur (compteur) que tu initialise à 1
avec une boucle, tu ecrit dans cette variable tant que tu n'as pas trouvé d'espace dans ton fichier (ou de - si ta chaine de ton xxxxx peut contenir des espaces)
input #1,variable_lue
while left(variable_lue,compteur)<>" "
variable_ecrite=variable_ecrite&variable_lue
compteur=compteur+1
wend
ta variable "variable_ecrite" contient maintenant tous les caractères avant le premier espace rencontré dans ton champ (pour le tiret, tu changes le while)
En espérant que ça marche, mais y'a pas de raisons.
@+
0
Fao
 
c'est vrai que c'est une solution de bourrin mais j'ai trouvé une solution plus simple.

En faisant un copié collé de mon champ dans excel. Ensuite j'applique la formule CHERCHE et ensuite un STXT et ca marche nickel.

Merci quand même pour ton aide.
0
Utilisateur anonyme > Fao
 
Je croyais que tu voulais qqc d'automatisé !
Pourquoi tu ne sélectionne pas juste ta partie xxxxx pour la copier ? Ca sera encore + simple !
0
Fao > Utilisateur anonyme
 
Ouais j'avais 10 000 lignes avec ce type de données. J'allais faire 10 000 copié collé !!!
0