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

VBA Access Discussion :

Comment remplir un formulaire continu avec une boucle en vba


Sujet :

VBA Access

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut Comment remplir un formulaire continu avec une boucle en vba
    Bonjour,

    Est-il possible de remplir le détail d'un formulaire continu , ligne par ligne, en utilisant une boucle VBA ?
    Le but étant que le contenu du formulaire soit totalement indépendant de toute table et requête SQL

    Merci de votre aide.
    Les solutions les plus simples sont les plus efficaces

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

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 559
    Points
    6 559
    Par défaut
    Salut
    Avec un nuage de ceci, un zeste de cela.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Merci Hyperion,

    Je vais essayer de retrouver mes petits dans tes suggestions ;-)
    Les solutions les plus simples sont les plus efficaces

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Hyperion,

    Merci de ton aide mais je dois avouer que j'ai du mal à m'y retrouver.
    Un petit coup de pouce serait le bienvenu ;-)

    Merci d'avance
    Les solutions les plus simples sont les plus efficaces

  5. #5
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Bonjour,

    Le Data Shaping est fait pour cela :
    https://arkham46.developpez.com/arti...s/msdatashape/

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

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 559
    Points
    6 559
    Par défaut
    En complément de la réponse d'Arkham46
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Form_Open(Cancel As Integer)
    Dim dbs As DAO.Database
    Dim rst As DAO.Recordset
     
    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("SELECT ida, a1, a2 FROM tblA", dbOpenDynaset)
    Set Me.Recordset = rst
     
    Me![txtida].ControlSource = "ida" 'txtida = textbox dans le form / ida champ de la tbl
    Me![txta1].ControlSource = "a1"
    Me![txta2].ControlSource = "a2"
    End Sub
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  7. #7
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Merci Arkham et merci Hyperion,

    Je ne connaissais pas le Data Shaping

    Merci encore de votre aide précieuse
    Les solutions les plus simples sont les plus efficaces

  8. #8
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Hyperion,

    J'ai testé ton code, il marche mais mon formulaire n'affiche qu'une seule ligne.

    J'ai raté un truc ?
    Les solutions les plus simples sont les plus efficaces

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

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 559
    Points
    6 559
    Par défaut
    Comme sur l'img ?
    Ajouter dans la sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Form.InsideHeight = 567 * n ' 567 = 1cm et n = nombre de cm
    Images attachées Images attachées  
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  10. #10
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Non, y'a vraiment qu'une ligne. J'ai mis à non la taille ajustée et la fenêtre n'affiche qu'une ligne
    Les solutions les plus simples sont les plus efficaces

  11. #11
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    "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
    14
    15
    16
    17
    18
    19
    20
    21
    Private Sub Form_Open(Cancel As Integer)
    'On Error GoTo Err_Form_Open
     
     
        Dim DBS As DAO.Database
        Dim rst As DAO.Recordset
     
        Set DBS = CurrentDb
     
        SQl = "SELECT DOCument.DOC_Num, DOCument.DOC_Lib, DOCument.DOC_Select, BOUton.BOU_Nom, DOCument.DOC_Nb, DOCument.DOC_Prev, DOCument.DOC_Pdf" & _
        " FROM BOUton LEFT JOIN (IMPression LEFT JOIN DOCument ON IMPression.IMP_Doc = DOCument.DOC_Num_Bis) ON BOUton.BOU_Num = IMPression.IMP_Bou" & _
        " WHERE (((BOUton.BOU_Nom) = '" & Bimp & "') And ((Impression.IMP_Actif) = True) And ((DOCument.DOC_Actif) = True))" & _
        "ORDER BY DOCument.DOC_Lib;"
     
        Set rst = DBS.OpenRecordset(SQl, dbOpenDynaset)
        Set Me.Recordset = rst
     
        Me![DOC_Lib].ControlSource = "DOC_Lib" 'txtida = textbox dans le form / ida champ de la tbl
        Me![DOC_Num].ControlSource = "DOC_Num"
     
    End Sub
    Les solutions les plus simples sont les plus efficaces

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

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 559
    Points
    6 559
    Par défaut
    Et tu as vérifié le résultat de la syntaxe SQL dans une req graphique (QBE) ?
    Quelle est l'origine de cette variable ? BOU_Nom = '" & Bimp & "'
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  13. #13
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Slt Hyperion

    Pas acquis de conscience, je viens de re tester ma requête, elle fonctionne. Dans le cas que je test, elle devrait me sortir 2 résultats.

    La variable Bimp est renseignée au clic sur le bouton appelant. Je l'utilise pour n'afficher que les documents utiles selon le bouton appelant.
    Les solutions les plus simples sont les plus efficaces

  14. #14
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    J'ai trouvé,

    Dans mes différents test, j'avais changé le type d'affiche en feuille de données plutôt que formulaire continu
    En formulaire continu, ça fonctionne.

    Maintenant, il me reste à rendre les case à cocher indépendantes
    Et parcourir les enregistrement du formulaire au clic de validation
    Les solutions les plus simples sont les plus efficaces

  15. #15
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Question d'ordre général :
    Pourquoi on écrit Me![DOC_Lib] et pas Me.DOC_Lib ?
    Les solutions les plus simples sont les plus efficaces

  16. #16
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Problème Hypérion,

    Avec ce code, les champs de mon formulaire sont liés à la table source et c'est justement ce que je ne veux pas.
    Je ne veux pas car j'ai plusieurs utilisateurs qui peuvent potentiellement utiliser ce formulaire en même temps et que les sélections des uns et des autres doivent être indépendantes.
    Au départ, j'ai bossé avec des copies de la table source (une copie par utilisateur) mais j'ai des interférences que je n'arrive ni à expliquer ni à maitriser totalement.
    D'où mon approche différente avec un formulaire totalement indépendant de toute table.
    Les solutions les plus simples sont les plus efficaces

  17. #17
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Arkham46,

    Si j'utilise le Data Shaping, il semble que je ne pourrais pas rendre des cases à cocher modifiables dans mon formulaire, exact ?
    Car justement, ce que je veux afficher c'est une liste de documents d'une table source tout en permettant à l'utilisateur de sélectionner les doc qu'il souhaite.

    Merci de ton aide
    Les solutions les plus simples sont les plus efficaces

  18. #18
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 359
    Points : 508
    Points
    508
    Par défaut
    Je tourne en rond en fait car soit j'arrive à rendre mes cases à cocher active mais elles sont alors nécessairement liées à une source.
    Soit elles sont indépendantes mais alors elles sont figées ou dépendantes les unes de autres.
    Les solutions les plus simples sont les plus efficaces

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

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 559
    Points
    6 559
    Par défaut
    Citation Envoyé par lololebricoleur Voir le message
    Bonjour,
    Est-il possible de remplir le détail d'un formulaire continu , ligne par ligne, en utilisant une boucle VBA ?
    Le but étant que le contenu du formulaire soit totalement indépendant de toute table et requête SQL
    Merci de votre aide.
    une réponse déjà donnée ici.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

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

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 559
    Points
    6 559
    Par défaut
    Citation Envoyé par lololebricoleur Voir le message
    Problème Hypérion,
    Avec ce code, les champs de mon formulaire sont liés à la table source et c'est justement ce que je ne veux pas.
    Mais alors pourquoi nous donner du code source de votre form ici ?
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

Discussions similaires

  1. Réponses: 1
    Dernier message: 24/08/2017, 17h52
  2. [MySQL] Remplir un tableau associatif avec une boucle while
    Par Palsajicoco dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 09/07/2009, 09h59
  3. [PDF] Remplir un formulaire PDF avec une base de données
    Par psgkiki dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 31/03/2009, 16h40
  4. Remplir un formulaire PDF avec une BD
    Par reitsab dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 18/09/2008, 21h01
  5. Comment parcourir un fichier texte avec une boucle ?
    Par kikica dans le forum Langage
    Réponses: 2
    Dernier message: 15/11/2005, 17h13

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