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 :

Compteur Ligne dans une requête [AC-2010]


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 38
    Points : 26
    Points
    26
    Par défaut Compteur Ligne dans une requête
    Bonjour, je cherche comment insérer un compteur de lignes dans une requête avec une réinitialisation à zéro lors du changement de code client.

    NUM_CLIENT_LIV NUM_FILIERE FILIERE_PRINCIPALE ListePrio
    010042 010042 0 DIRECT
    010042 010042VWA 1 GJL

    j'ai des informations en colonne et je les souhaite en ligne, impossible une requête analyse croisée.

    le résultat attendu est :

    010042 010042 direct 010042vwa gjl etc ....

    par avance merci pour votre aide

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 230
    Points : 5 595
    Points
    5 595
    Par défaut
    Bonjour,

    Cette demande me semble correspondre à ceci: Concaténer plusieurs enregistrements dans une seule colonne

    Cordialement.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 38
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par EricDgn Voir le message
    Bonjour,

    Cette demande me semble correspondre à ceci: Concaténer plusieurs enregistrements dans une seule colonne

    Cordialement.
    bonjour

    en faite ce que je souhaite c est que le résultat soit dans des colonnes séparées

    010042 010042 / direct / 010042vwa / gjl / etc ....

    je ne peux donc pas faire une concaténation

  4. #4
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 230
    Points : 5 595
    Points
    5 595
    Par défaut
    Bonjour,

    Donc une ligne pour chaque code client (NUM_CLIENT_LIV) et nombre de colonnes indéterminé (pouvant varier selon le code client) ?

    Cordialement.

  5. #5
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 273
    Points : 6 582
    Points
    6 582
    Par défaut
    Salut
    Vous allez devoir récupérer cette fonction et la copier dans un module standard.
    Après quoi à l'aide d'une query obtenir le résultat attendu.
    Code à adapter selon votre IHM.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT DISTINCT Table1.NUM_CLIENT_LIV, ConcatRelated("NUM_FILIERE &' '& ListePrio","Table1","NUM_CLIENT_LIV = '" & [NUM_CLIENT_LIV] & "'") AS Concat
    FROM Table1;
    Images attachées Images attachées  

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 38
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par EricDgn Voir le message
    Bonjour,

    Donc une ligne pour chaque code client (NUM_CLIENT_LIV) et nombre de colonnes indéterminé (pouvant varier selon le code client) ?

    Cordialement.
    bonjour

    non le nombre de colonne est fixe 4 colonnes par contre le nombre de lignes par NUM_CLIENT_LIV peut varié soit 1 ou 2 ou 3 ou 4

    cordialement

  7. #7
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 230
    Points : 5 595
    Points
    5 595
    Par défaut
    Bonjour,

    Quand j'indiquais "nombre de colonnes indéterminé (pouvant varier selon le code client) ", cela concernait le nombre de colonnes dans la requête résultat. Comme vous venez d'indiquer que "le nombre de lignes par NUM_CLIENT_LIV peut varier soit 1 ou 2 ou 3 ou 4", en résultat il y aura donc 9 colonnes. Voir si la requête résultat q_0123 dans la bdd jointe correspond à cela. J'ai considéré que le nombre entré dans le champ FILIERE_PRINCIPALE varie entre 0 et 3.

    Cordialement.
    Fichiers attachés Fichiers attachés

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 38
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par EricDgn Voir le message
    Bonjour,

    Quand j'indiquais "nombre de colonnes indéterminé (pouvant varier selon le code client) ", cela concernait le nombre de colonnes dans la requête résultat. Comme vous venez d'indiquer que "le nombre de lignes par NUM_CLIENT_LIV peut varier soit 1 ou 2 ou 3 ou 4", en résultat il y aura donc 9 colonnes. Voir si la requête résultat q_0123 dans la bdd jointe correspond à cela. J'ai considéré que le nombre entré dans le champ FILIERE_PRINCIPALE varie entre 0 et 3.

    Cordialement.
    Bonjour

    Merci pour la base que j ai regardé avec grand intérêt , mais cela ne correspond pas a ce que je souhaiterais peut être un est ce impossible
    Nom : Capture.JPG
Affichages : 71
Taille : 29,2 Ko

    et voici a quoi je souhaiterais arriver
    Nom : Capture1.JPG
Affichages : 74
Taille : 41,4 Ko

    mon idée première était de créer un compteur de ligne qui se réinitialise a chaque changement de NUM_CLIENT LIV

    ce qui donnerais dans une requête
    010020 1
    010042 1
    010042 2
    020248 1
    020248 2
    020248 3

    puis après par requête je sélectionne les 1 dans une requête les 2 dans une autre ainsi de suite puis je regroupe le tout dans une requête.

    mais c est ce compteur que je ne sais pas comme faire la fonction pour arrivé a ce résultat.

    cordialement

  9. #9
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 230
    Points : 5 595
    Points
    5 595
    Par défaut
    Bonjour,

    Il est possible de créer un "compteur" pour autant que la table contienne un champ "sans doublon" (en général le champ identifiant). Dans l'exemple attaché, dans la requête qN, le champ étant sans doublon, N est le compteur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    N: CpteDom("*";"Table1";"Num_Client_Liv='" & [Num_Client_Liv] & "' And n° <" & [])
    Cordialement.
    Fichiers attachés Fichiers attachés

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 38
    Points : 26
    Points
    26
    Par défaut merci a tous ceux qui mm ont aidé
    voila après des recherche j'ai enfin réussi a trouver le code qui correspond a ceux que je voulais


    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
    35
    36
    Public Sub Numeroter()
      Dim rs As Recordset
      Dim sRupture As String
      Dim i As Integer
      'Purger table  T_filiere
     
      DoCmd.SetWarnings False
     
      DoCmd.RunSQL "DELETE [T_filiere].NbreLigne FROM [T_filiere];"
      'copier le contenu de table source dans T_Filiere
      DoCmd.OpenQuery "Non table Creation"
      DoCmd.SetWarnings True
      'Lire dans l'ordre et numéroter
      Set rs = CurrentDb.OpenRecordset("SELECT [T_filiere].* " _
                                       & "FROM [T_filiere] " _
                                             & "ORDER BY T_filiere.NUM_CLIENT_LIV,T_filiere.NUM_FILIERE;")
      sRupture = rs("NUM_CLIENT_LIV")
      i = 1
     
      Do Until rs.EOF
        rs.Edit
        If rs("NUM_CLIENT_LIV") = sRupture Then
            rs("NbreLigne") = Format(i, "#")
            i = i + 1
          Else
            sRupture = rs("NUM_CLIENT_LIV")
            rs("NbreLigne") = "1"
            i = 2
        End If
        rs.Update
        rs.MoveNext
      Loop
      'fermer
      rs.Close
      Set rs = Nothing
    End Sub

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

Discussions similaires

  1. total colonne et total ligne dans une requete croisée
    Par maamer dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 11/06/2018, 12h37
  2. Comment recuperer plusieurs lignes dans une requete ?
    Par davebarns dans le forum Bases de données
    Réponses: 4
    Dernier message: 28/05/2008, 18h58
  3. Rajouter les numéros de ligne dans une colone d'une requete
    Par AntiSAL dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 02/11/2005, 19h07
  4. Afficher le numéro de ligne dans une requete SELECT
    Par tilb dans le forum Langage SQL
    Réponses: 4
    Dernier message: 01/09/2004, 10h20

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