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

VBA Access Discussion :

[SQL] : Concatener des chaines de caractères


Sujet :

VBA Access

  1. #1
    Membre habitué
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Janvier 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2007
    Messages : 255
    Points : 164
    Points
    164
    Par défaut [SQL] : Concatener des chaines de caractères
    Bonjour,

    Je possède une base contenant pour chaque individu la liste des formations qu'on lui à proposer et sa réponse.

    Pour bien préciser les choses, j'ai donc une liste d'individu et une autre avec l'ensemble des formations proposées (il peut y avoir plusieurs fois la même et des causes de refus différentes).

    Je souhaite faire un rapport me permettant de visualiser par collaborateur la liste des formations proposées et pour chaque formation (et c'est la le hic) la liste des causes sur la même ligne (donc j'ai besoin de concatener les causes séparées par des ";").

    Un exemple :
    toto formation_1 "acceptée"
    titi formation_2 "en congé;malade;acceptée"
    ...

    et non
    toto formation_1 "acceptée"
    titi formation_2 "en congé"
    titi formation_2 "malade"
    titi formation_2 "acceptée"

    Merci à toutes (honneur à vous) et à tous pour votre aide ou conseil ou suggestion ou ....

    A+

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 346
    Points : 23 809
    Points
    23 809
    Par défaut
    Il va te falloir faire un peu de VBA et mettre la fonction suivante dans un module.

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    Public function ConcatenerRaison(prmCodeUtilisateur as variant, prmCodeFormation as variant) as variant
       dim result as variant
     
       if not isnull(prmCodeUtilisateur) and not isnull(prmCodeFormation) then
         dim db as database:set db=currentdb
         dim r as recordset:set r=db.openRecorset("SELECT * FROM TableAssUtilisateurRaison WHERE CodeUtilisateur=" & prmCodeUtilisateur & " AND CodeFormation=" & prmCodeFormation &";")
     
         do while not r.eof
     
            if result<>"" then
              result=result &";"
            end if
     
            result=result & r![Raison]
            r.movenext
         loop
     
         r.close:set r=nothing
         db.close:set db=nothing
       end if
     
       ConcatenerRaison=result
     
    end function
    Note j'ai choisi des Variant pour pouvoir passer des 'null' sans pb.

    Après dans ta requète tu n'as plus qu'à définir un cahmp dont la valeur est :

    ConcatenerRaison([CodeUtilisateur],[CodeFormation])

    A+

  3. #3
    Membre habitué
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Janvier 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2007
    Messages : 255
    Points : 164
    Points
    164
    Par défaut
    Merci pour ton aide.

    Je me lance dans l'implementation dès que je fini le rapport sur lequel je suis

    Encore merci

    A+

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

Discussions similaires

  1. Concatenation des chaines contenant le caractère +
    Par ammah dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 27/04/2011, 14h07
  2. [VB.NET]comment on filtre des chaines de caractères ?
    Par zouhib dans le forum Windows Forms
    Réponses: 61
    Dernier message: 14/06/2006, 14h33
  3. [C++.net]Concatener des chaines de caractère
    Par Dlyan dans le forum MFC
    Réponses: 3
    Dernier message: 27/03/2006, 15h25
  4. [Oracle 8i/ Sql] Concatener une chaine
    Par dimdidi dans le forum Oracle
    Réponses: 5
    Dernier message: 07/02/2006, 13h42
  5. Repérer des chaines de caractères formatée dans du texte
    Par jeremiegrenoble dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 01/02/2006, 13h06

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