Concaténer plusieurs enregistrement en 1 seul

Résolu/Fermé
jharscoet Messages postés 107 Date d'inscription vendredi 1 juin 2007 Statut Membre Dernière intervention 31 mars 2012 - Modifié par jharscoet le 21/03/2012 à 12:00
jharscoet Messages postés 107 Date d'inscription vendredi 1 juin 2007 Statut Membre Dernière intervention 31 mars 2012 - 31 mars 2012 à 21:12
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
A voir également:

3 réponses

OlivrT Messages postés 323 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 24 mai 2012 36
29 mars 2012 à 22:18
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
jharscoet Messages postés 107 Date d'inscription vendredi 1 juin 2007 Statut Membre Dernière intervention 31 mars 2012 11
29 mars 2012 à 22:22
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
OlivrT Messages postés 323 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 24 mai 2012 36
29 mars 2012 à 22:53
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
castours Messages postés 2955 Date d'inscription lundi 18 septembre 2006 Statut Membre Dernière intervention 31 août 2019 217
31 mars 2012 à 10:18
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
castours Messages postés 2955 Date d'inscription lundi 18 septembre 2006 Statut Membre Dernière intervention 31 août 2019 217
30 mars 2012 à 22:07
Bonjour
Dans un requete dans une nouvelle colonne on peut concatener plusieurs champ.

Nom Prénom: "Nom"& &"Prenom"
-1
OlivrT Messages postés 323 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 24 mai 2012 36
30 mars 2012 à 22:25
Relis bien le problème jharscoet, ce n'est pas de concaténer le nom et le prénom ;-)
0
jharscoet Messages postés 107 Date d'inscription vendredi 1 juin 2007 Statut Membre Dernière intervention 31 mars 2012 11
31 mars 2012 à 21:12
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