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 :

enregistrements sur une seul ligne d'une zone de texte


Sujet :

Access

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 77
    Points : 44
    Points
    44
    Par défaut enregistrements sur une seul ligne d'une zone de texte
    bonjours,
    je vous explique mon probleme :
    j'ai une table MAIL dans laquelle je stock des adresses mail et j'aimerai reccupèrer dans une zone de texte toutes ces adresse les unes à la suite des autres (séparées par un ";").

    Comment puis-je faire

    Mecri

  2. #2
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 812
    Points
    812
    Par défaut
    Salut,

    Et en adaptant les sources ?

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 77
    Points : 44
    Points
    44
    Par défaut
    merci mais j'ai trouvé cette solution un peu lourde et donc j'ai trouvé une solution avec quelques ligne de code :

    voici ma table :
    N° PERSONNE
    1 ludovic.estivalet@ods.com
    2 veronique.perrin@ods.com
    3 mathieu.houga@ods.com
    4 jkfhdzedfze
    5 dkehdfiehd
    6 natahlie

    et voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Commande2_Click()
    Dim v As String
    j = DCount("[N°]", "MAILCOPIE")
     
    For i = 1 To j
        v = DLookup("[PERSONNE]", "MAILCOPIE", "[N°]=" & i)
        If i = 1 Then
        [ADRESSECOPIE] = v
        Else
        [ADRESSECOPIE] = [ADRESSECOPIE] & ";" & v
        End If
    Next i
    End Sub
    le résultat donne :
    ludovic.estivalet@ods.com;veronique.....houga@ods.com;jkfhdzedfze;dkehdfiehd;natahlie

  4. #4
    Membre actif
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    411
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 411
    Points : 230
    Points
    230
    Par défaut
    ton code fonctionne bien. cependant si tu suprimme un enregistrement de ta table il se pourait que le champ N° ne sois plus des nombres successifs. donc il pourait y avoir un probleme.

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 77
    Points : 44
    Points
    44
    Par défaut
    effectivement il peut y avoir un "trou" dans la numérotation et c'est pour ça que je ne l'ai pas mis en numéroauto je laisse les users gérer ces numéros. (Je surveillerais quelque fois cette table).

    Je sais ce n'est peut etre pas une solution tres "pro" mais je n'est rien trouvé d'autre.

  6. #6
    Membre actif
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    411
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 411
    Points : 230
    Points
    230
    Par défaut
    moi j'aurais opté pour une fonction avec un recordset


    exemple:

    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
    Dim db As DAO.Database, rst As DAO.Recordset
      Dim sSQL As String
     
       ' Ouverture de la base de données
       Set db = CurrentDb
       sSQL = "SELECT PERSONNE FROM MAILCOPIE"
       ' Ouverture du recordset
       Set rst = db.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
     
       While Not rst.EOF
         [ADRESSECOPIE] = [ADRESSECOPIE] & ";" & rst(0)
         rst.MoveNext
       Wend
     
       ' Fermeture du Recordset
       rst.Close

Discussions similaires

  1. Réponses: 11
    Dernier message: 12/09/2014, 15h02
  2. [DATA] Réunir information sur plusieures lignes en une seule ligne
    Par philippeadp dans le forum SAS Base
    Réponses: 1
    Dernier message: 25/10/2011, 16h03
  3. Réponses: 4
    Dernier message: 26/12/2007, 22h59
  4. Réponses: 1
    Dernier message: 08/09/2006, 05h25
  5. [JTable]Selectionner une seule ligne d'une jTable ?
    Par Maximus32 dans le forum Composants
    Réponses: 2
    Dernier message: 22/10/2004, 02h06

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