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 :

extraire que les mots avant une virgule


Sujet :

Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2006
    Messages : 36
    Points : 16
    Points
    16
    Par défaut extraire que les mots avant une virgule
    slt,
    j'aimerai savoir comment faire pour extraire juste les termes avant une virgule dans une phrase? j'ai essayé ce code, il fonctionne mais s'il n'y a pas de virgule dans la phrase il me donne #Erreur?? le code est en SQL dans une reqûete.

    famille: Gauche([DESCRIPTION (PL)];(DansChaîne(1;[DESCRIPTION (PL)];",")-1))

    exemple :

    Phrase1: ordinateur, portable ==> résultat du code =ordinateur
    Phrase2: ordinateur ==> résultat du code = #Erreur


    merci

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    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 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    tu peux essayer ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public Function Extract_chaine(chaine As String) As String
     
       If InStr(chaine, ",") <> 0 Then
       Extract_chaine = Left(chaine, InStr(chaine, ",") - 1)
       Else
       Extract_chaine = chaine
       End If
     
    End Function

    ou avec Split

    @+
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    153
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 153
    Points : 89
    Points
    89
    Par défaut
    Essayer ça :
    SUBSTRING_INDEX(chaine, sschaine[, index])
    dans sous chaine tu mets SUBSTRING_INDEX(chaine,",", 1)
    bon courage

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2006
    Messages : 36
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par polianita
    Essayer ça :
    SUBSTRING_INDEX(chaine, sschaine[, index])
    dans sous chaine tu mets SUBSTRING_INDEX(chaine,",", 1)
    bon courage
    STP, elle est ou sous chaine, peux-tu m'exliquer un peu parce que je dois mettre le code dans une requête ??

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2006
    Messages : 36
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par User
    tu peux essayer ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public Function Extract_chaine(chaine As String) As String
     
       If InStr(chaine, ",") <> 0 Then
       Extract_chaine = Left(chaine, InStr(chaine, ",") - 1)
       Else
       Extract_chaine = chaine
       End If
     
    End Function

    ou avec Split

    @+
    Est ce que je peux utiliser ce code dans une requête, parce que je j’ai pas de formulaire dans ma base pour l’instant c’est juste une requête ...

  6. #6
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    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 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Oui si tu es sous Access
    la fonction dans 1 module et après,
    En utilisant QBE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Champ2:Extract_chaine([Champ1])
     
    ou en sql:
     
    Select ..., Extract_chaine([Champ1]) As Champ2
    From ..
     
    etc..
    sinon, tu peux aussi utiliser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IIf(InStr([Champ1],",")=0,[Champ1],Left([Champ1],InStr([Champ1],",")-1)) AS Champ2

    @+
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2006
    Messages : 36
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par User
    Oui si tu es sous Access
    la fonction dans 1 module et après,
    En utilisant QBE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Champ2:Extract_chaine([Champ1])
     
    ou en sql:
     
    Select ..., Extract_chaine([Champ1]) As Champ2
    From ..
     
    etc..

    sinon, tu peux aussi utiliser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IIf(InStr([Champ1],",")=0,[Champ1],Left([Champ1],InStr([Champ1],",")-1)) AS Champ2

    @+
    ca fonctionne, merci, je n'ai jamais pensé d'utiliser un module, jajaj mais on apprend toujours.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Compter les mots d'une phrase
    Par miss64 dans le forum Langage
    Réponses: 12
    Dernier message: 07/01/2017, 10h57
  2. [À télécharger] Comment extraire les mots d'une chaîne ?
    Par pottiez dans le forum Téléchargez
    Réponses: 0
    Dernier message: 09/11/2010, 17h38
  3. Extraire les mots d'une phrase
    Par SilkyRoad dans le forum Contribuez
    Réponses: 1
    Dernier message: 24/08/2007, 17h06
  4. Extraire les mots d'une chaine
    Par hsouna dans le forum C++
    Réponses: 2
    Dernier message: 26/06/2006, 17h12
  5. Ne prendre que les infos avant une certaine date??
    Par mythtvtalk.com dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 08/07/2003, 10h20

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