Concaténer plusieurs enregistrement en 1 seul

Résolu
jharscoet Messages postés 114 Statut Membre -  
jharscoet Messages postés 114 Statut Membre -
Bonjour,
J'ai plusieurs colonnes de type suivant dans une table intitulée "carnet".
TYPE NOM
1 Michel
1 Gérard
2 François
5 Augustin
2 Gilles
3 Roger

Je voudrais faire apparaître le résultat suivant
1 Michel Gérard
2 François Gilles
3 Roger
5 Augustin

Apparemment, il faut coder, mais je ne sais pas comment faire exactement.
Merci

3 réponses

  1. OlivrT Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   36
     
    Bonjour,
    je ne crois pas que cela soit possible avec une requête.
    Je peux le coder en VBA si vous avez Microsoft Access sur votre machine ?
    0
    1. jharscoet Messages postés 114 Statut Membre 11
       
      Si c'est simple et rapide pour vous, ce serait vraiment sympa, ça me permettrait de régler un blocage que j'ai depuis longtemps sur Access...
      0
    2. OlivrT Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   36
       
      Je peux le coder, mais je me demande bien pourquoi regrouper ainsi les données... c'est quasi à l'opposition d'un SGBD comme Access ...

      1) Vous devez référencer la bibliothèque "Microsoft DAO 3.51 Objects ..." ("Outils" > "References")
      2) Entrez ceci dans l'évènement Clic d'un bouton par exemple :
      Dim DB As DAO.Database
      Set DB = CurrentDb
          
      Dim strNoms As String
      Dim rst As DAO.Recordset
      Dim rstN As DAO.Recordset
          
      Set rst = DB.OpenRecordset("SELECT IDType FROM MaTable ORDER BY Type", dbOpenDynaset)
          
      Do While Not rst.EOF
                     
              Set rstN = DB.OpenRecordset("SELECT Nom FROM MaTable WHERE IDType = " & CStr(rst(0)), dbOpenDynaset)
              Do While Not rstN.EOF
                  strNoms = strNoms & ", " & rstN(0)
                  rstN.MoveNext
              Loop
              rstN.Close
              
              MsgBox "Pour le type : " & CStr(rst(0)) & ", les noms sont " & strNoms
                        
              rst.MoveNext
      Loop
      rst.Close
          
      Set rst = Nothing
      Set rstN = Nothing
      Set DB = Nothing
      0
  2. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    bonjour
    Oui en effet ce n'est pas la meme chose. C'était de reunir sur une meme colonne les energistrement s 1 , 2 ,3, 5
    0
  3. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    Bonjour
    Dans un requete dans une nouvelle colonne on peut concatener plusieurs champ.

    Nom Prénom: "Nom"& &"Prenom"
    -1
    1. OlivrT Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   36
       
      Relis bien le problème jharscoet, ce n'est pas de concaténer le nom et le prénom ;-)
      0
    2. jharscoet Messages postés 114 Statut Membre 11
       
      Oui, j'ai mal formulé le problème, j'ai mis simplement des prénoms et des noms pour simplifier, mais l'objectif était de concaténer des blocs de textes (dans le cadre d'une rédaction "dynamique", c'est-à-dire sur un affichage spécifique de données correspondant à des requêtes précises, via plusieurs sous-formulaires).
      Concaténer des champs ne me posait pas de souci, en revanche, c'était plus compliqué pour des enregistrements ^^.
      Merci pour votre aide en tout cas.
      0