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 :

Formulaires et DoCmd


Sujet :

VBA Access

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 91
    Par défaut Formulaires et DoCmd
    Bonjours,
    Je veux qu’un formulaire s’ouvre en mode feuille de donné et qu’on puisse ajouter un enregistrement, à partir d’un autre formulaire de saisie grâce a un bouton de commande, et je veux que le nom du commerciale qui été saisie dans le premier et son matricule, soient récupérer automatiquement dans le 2émé formulaire ou il va saisir sa production.
    J’ai bidouillé le code suivant mais ailas sans la maitrise de la méthode DoCmd, mon code ne retourne pas plus qu’un message d’erreur : manque d’un argument
    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 Commande39_Click()
    On Error GoTo Err_Commande39_Click
     
        Dim stDocName As String
        'Dim stLinkCriteria As String
     
        stDocName = "ChiffresProd"
     
        'stLinkCriteria = "[N° COM]=" & "'" & Me![N° COM] & "'"
        'DoCmd.OpenForm stDocName, , , stLinkCriteria
        DoCmd.OpenForm strNomDoc, , , , acAdd, , Me![N° COM]
        Forms![ChiffresProd]![NomCom].SetFocus
     
    Exit_Commande39_Click:
        Exit Sub
     
    Err_Commande39_Click:
        MsgBox Err.Description
        Resume Exit_Commande39_Click
     
    End Sub

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    salut,
    l'aide en ligne nous donne un exemple de ce qu'on peut avoir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "Employees", , ,"LastName = 'King'"
    tu retombes sur tes pieds en l'appliquant depuis ton code
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 91
    Par défaut
    Bonjours
    Après plusieurs tentatifs, et consultation des docs sur le site, je n’arrive toujours pas à résoudre mon problème, et le temps presse.
    Je rappelle mon problème
    Dans ma base j’assure le suivi des commerciaux et leurs productions
    Donc je dispose de 2 tables
    Table1 fiche d’identité du commerciale
    Table 2 sa production
    Le lien : un à plusieurs
    J’ai un formulaire1 où les commerciales saisies sont identité : nom, matricule, …
    Un formulaire 2 où le commerciale saisie sa production : par année
    Dans mon formulaire j’ai mis un bouton qui ouvre formuliare2 en mode feuille de données, et récupère le nom et le matricule à partir du formulaire1
    Je remarque que quand je passe à la deuxième ligne dans le formuliare2 pour saisir la prod pour l’année suivante le nom et le matricule ne sont pas récupérer ?
    Je me demande si je ne suis pas obliger d’afficher le nom et le matricule dans le formuliare2 et que ces 2 informations soit automatiquement saisi dans la table2 avec les chiffres saisis dans le form2 ?
    Je vous remercie d’avance pour l’apport que vous accorder à la résolution de mon problème
    Voila mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Commande40_Click()
        DoCmd.OpenForm "Form2", acFormDS
        Forms![Form2]![NomCom] = Forms![Form1]![NomCom]
        Forms![Form2]![MatCom]  = Forms![Form1]![MatCom]
    End Sub

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    essaie plus simplement ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Commande40_Click()
        DoCmd.OpenForm "Form2", , ,"[N° COM]= " & Me![N° COM]
    End Sub
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 91
    Par défaut
    Merci d’avoir répondu rapidement
    Ca ne marche pas, la valeur du contrôle N° Com il la considère comme un paramètre.
    T’as pas une autre piste ?

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    est-ce que la requete qui alimente ton Form2 a au moins ce champ [N° com] ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 91
    Par défaut
    La réponse à ta question et oui
    Je suis sur une piste voila ce que j ai fais
    J’ai créé un form3 lié à la table1, et le form2 comme sous formulaire de se denier, et après j’ai change la source de contrôle dans le form3 de façon à que les sources soit les contrôles de form1, ca marche
    Maintenant j’ai besoin d’un code qui enregistre ce qui est saisie dans form1 dans la table1 quand j’appuie sur le bouton, sachant que le form et la table sont liées

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 70
    Par défaut une petite aide
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "nomform modif", , , "[idmembre] = Forms![nomformulaire]![idmembre]", acFormEdit, acDialog

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

Discussions similaires

  1. [AC-2013] Ouverture de formulaire par DoCmd.OpenForm
    Par fremarnat dans le forum IHM
    Réponses: 7
    Dernier message: 14/10/2013, 23h10
  2. ouverture d'un nouveau formulaire avec DoCmd.
    Par Babario dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/05/2009, 10h02
  3. [Formulaire]pb avec docmd.rename
    Par libremax dans le forum IHM
    Réponses: 2
    Dernier message: 29/03/2007, 17h49
  4. Réponses: 5
    Dernier message: 23/03/2007, 09h58
  5. [Formulaire] Docmd.GotoRecord, erreur 2489
    Par timoth dans le forum IHM
    Réponses: 4
    Dernier message: 26/10/2006, 15h07

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