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 :

Affichage dans une zone de texte.


Sujet :

Access

  1. #1
    YLL
    YLL est déconnecté
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Affichage dans une zone de texte.
    Bonjour,

    Sur un état, je désire concaténer dans une même zone de texte l'ensemble des résultats d'une requête (il s'agit d'une liste de noms séparés par des virgules).

    Cela est-il possible


    Merci

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 42
    Points : 28
    Points
    28
    Par défaut
    - Veux tu concatener différents champs disponibles dans un etat dans un nouveau champ ?
    - Ou souhaites tu utiliser la valeur d'un champ dont les éléments sont séparrés par une virgule ???:!


  3. #3
    YLL
    YLL est déconnecté
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Je souhaite dans une même zone de texte, regrouper tous les résultats d'une requête. En fait sur mon état, il me faut afficher une liste de noms sous forme de paragraphe et non sous forme de colonne comme cela se produit avec un simple champ texte.

    J'espère être assez clair.

    Avec mes remerciements pour s'intéresser à mes petits problèmes.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 42
    Points : 28
    Points
    28
    Par défaut
    désolé mais je n'ai pas d'idée ... Je suis certain qu'une des nombreuses ames charitables du forum saura t'orienter ...

  5. #5
    Membre averti Avatar de mcdotta
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    292
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 292
    Points : 324
    Points
    324
    Par défaut
    Salut YLL,

    Ton rapport est basé sur une requête ou une table ? Non ?

    Il faut que tu construise une fonction qui parcourt les enregistrements de ta table et concatène tes noms.

    Fonction à insérer 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
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    Public Function CumuleNom() As String
        Dim strSQL As String
        Dim conConnection As ADODB.Connection
        Dim recSet As New ADODB.Recordset
        Dim i As Integer
        On Error Resume Next
        Set conConnection = CurrentProject.Connection
        'A Remplacer par le code SQL de ta requête source du Rapport
        strSQL = "SELECT tbl_VH_VéHicules.fldVH_VHNo "
        strSQL = strSQL & " FROM tbl_VH_VéHicules "
        Set recSet = New ADODB.Recordset
        recSet.Open strSQL, conConnection, adOpenKeyset, adLockOptimistic
        If recSet.EOF = True And recSet.BOF = True Then
            CumuleNom= ""
            Exit Function
            recSet.Close
        End If
        With recSet
            i = 0
            .MoveFirst
            While Not .EOF
                If i = 0 Then
                    CumuleNom= ![fldVH_VHNo]
                Else
                    CumuleNom= CumuleNom& "-" & ![fldVH_VHNo]
                End If
                i = i + 1
                .MoveNext
            Wend
        End With
        recSet.Close
        conConnection.Close
    End Function
    Ensuite tu peux avoir sur ton rapport un contrôle dont la source controle est :

    = CumuleNom()

    Tiens nous au courant si ca te va !!!

  6. #6
    YLL
    YLL est déconnecté
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci pour ce code, il convient presque ....
    car j'ai rajouté une couche.

    Dans mon rapport basé sur une requête, j'ai concatené dans un contrôle la valeur de 3 autres

    Exemple =
    champ1 "titre"
    champ2 "nom"
    champ3 "prenom"

    soit = titre &" "&prenom &" "&nom

    résultat : Mme Anne BROCHET
    M. Louis BLANC

    Je désirerais avoir dans un même contrôle : Mme Anne BROCHET, M. Louis BLANC etc..

    En renouvelant mes remerciements.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 15/03/2007, 12h36
  2. Affichage en arabe dans une zone de texte
    Par s.rais dans le forum Access
    Réponses: 3
    Dernier message: 21/07/2006, 17h11
  3. affichage de données dans une zone de texte
    Par Lamie dans le forum Access
    Réponses: 2
    Dernier message: 06/07/2006, 15h31
  4. Réponses: 1
    Dernier message: 11/05/2006, 16h37
  5. affichage de 2 décimales dans une zone de texte.
    Par tzinzin dans le forum Access
    Réponses: 7
    Dernier message: 09/02/2006, 16h41

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