IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Problème sur des chaînes de caractères


Sujet :

Access

  1. #1
    Membre averti

    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    0
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 0
    Points : 314
    Points
    314
    Par défaut Problème sur des chaînes de caractères
    Bonjour,
    Je reprends actuellement une base de données Access de facon a la nettoyer. J'ai unprobleme sur un champ nom de client. Il est constitue du prenom et du nom separes par un espace. Bien entendu, certain clients ont ete saisis avec 2 espaces ou en majucule puis en miniscule ou bien avec et sans accent.
    De cette facon, un meme client peut avoir plusieurs identifiants differents, et se reveler etre en doubon.
    Existe-t-il un moyen pour renvoyer le prenom et le nom dans 2 colonnes differentes: c'est a dire la chaine situee avant l'espace dans le nom, puis la chaine situee apres l'espace dans le prenom (un truc du genre "before" ou "after" qu'on utilise en HTML) ?

  2. #2
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 45
    Points : 37
    Points
    37
    Par défaut
    tu peut esssayer ça:
    pour la partie Prénom :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    left(TaChaineDeCaracteres, instr(1, TaChaineDeCaracteres, " " )
    pour la partie Nom :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    right(TaChaineDeCaracteres, len(TaChaineDeCaracteres) - instr(1, TaChaineDeCaracteres, " " )

  3. #3
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Tu ne penses pas que tu aura des problèmes avec des noms ou prénoms composés, s'ils ont été saisis avec des espaces ?

  4. #4
    Membre averti

    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    0
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 0
    Points : 314
    Points
    314
    Par défaut
    Pour ce qui est des nom composes, je pense egalement que j'aurai des problemes avec, mais je pourrais toujours les corriger a la mimine, il n'y en aura pas tant que ca.

    Je debute, alors je voudrais avoir confirmation de ce que je dois faire :
    Si mon champ actuel est "NOM" (comportant, je le rapelle le nom et le prenom)
    J'ai cree 2 colonnes : Prenom, et NOM_seul
    Comment dois inserrer ce code ? est-ce bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    left(Prenom, instr(1, nom, " " )
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    right(Nom_seul, len(Nom) - instr(1, nom, " " )

  5. #5
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Re,

    Je te laisse trouver dans l'aide pour les fonctions Left() Right() et instrrev(), mais je voulais simplement attirer ton attention sur ce qui se passera quand tu auras des homonymes.
    C'est juste pour ton info.

  6. #6
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Il te manque des parenthèses fermantes à chaque instruction

    N'oublie pas non plus de consulter le tutoriel sur les chaines

    http://cafeine.developpez.com/classe/

  7. #7
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut
    Salut,

    Dans une requête:

    prenom: left(nom, instr(1, nom, " " ) -1)

    nomseul: right(nom, len(Nom) - instr(1, nom, " ") )

    Ou:

    en DAO après avoir crée 2 champs prenom et nomseul dans ta table:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub Format_nom()
    Dim rs As Recordset
     
    Set rs = CurrentDb.OpenRecordset("Matable", dbOpenDynaset)
     
    Do Until rs.EOF
    rs.Edit
    rs!prenom = left(rs!nom, instr(1, rs!nom, " " ) -1) 
    rs!nomseul=right(rs!nom, len(rs!nom) - instr(1, rs!nom, " ") )  
    rs.Update
     
    rs.MoveNext
    Loop
     
    rs.Close
    End Sub
    @+

  8. #8
    Membre averti

    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    0
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 0
    Points : 314
    Points
    314
    Par défaut
    Merci pour ce code,
    J'y vois un peu plus clair (d'autant que l'aide d'access n'est pas installee sur mon poste)
    Cependant, j'ai un message d'erreur "Erreur de Compil - Membre de methode ou de données introuvables"
    D'ou cela peut il venir: j'ai verifie le nom de ma table, et de mes champs, tout a l'air correct

  9. #9
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Sur la quelle ligne ?

  10. #10
    Membre averti

    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    0
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 0
    Points : 314
    Points
    314
    Par défaut
    Excusez, j'etais en deplacement:

    sur la 5eme ligne :

Discussions similaires

  1. Réponses: 5
    Dernier message: 06/11/2010, 19h46
  2. Problème sur des chaines de caractères
    Par soso78 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 16/10/2007, 13h11
  3. Réponses: 10
    Dernier message: 19/09/2006, 10h44
  4. requête sur des chaînes de caractères
    Par Mlude dans le forum Requêtes
    Réponses: 4
    Dernier message: 16/08/2006, 20h52
  5. Tri sur une chaîne de caractères contenant des nombres
    Par arnaud_verlaine dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/05/2006, 11h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo