|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Bonjour à toutes et à tous.
J'espère que ma question ne froissera personne car je pense qu'elle a déjà été posée mais je n'ai pas trouvé de post répondant clairement à mon problème. Voilà, j'ai créé une base de donnée dont le MCD est en pièce jointe (PDF). J'ai finalisé la mise en forme de mon formulaire de saisie des factures et du sous-formulaire de détail des lignes composant la facture. Je souhaite à présent pouvoir exporter ce duo formulaire/sous-formulaire en format PDF afin de pouvoir l'imprimer, ou bien l'imprimer directement si cela est possible. En sachant que le but de la manoeuvre est tout de même de mettre le résultat en page avec un logo, un nom d'entreprise... Je vous remercie par avance du temps que vous allez prendre pour lire mon post, et surtout pour celui que vous allez dépenser pour m'aider à résoudre mon problème. Je ne suis ni un fainéant ni un profiteur, si vous souhaitez simplement me mettre sur une piste, je suis bien évidement preneur. Cordialement. PME Diag |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 089 ![]() |
Bonjour,
Je ne vois pas le rapport entre ta question et ton MCD... ![]() Sinon rien ne t'empêche d'utiliser la commande. Avec ton formulaire. Attention cependant au résultat ! il est plus judicieux de passer par un état. A chaque objet correspond une fonction. Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
10
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Bonjour loufab.
Je te remercie pour ta réponse très rapide. Le MCD, c'était juste pour que vous compreniez bien en quoi consiste l'utilisation de cette base de données, on va dire un complément d'information. Alors pour toi, je devrais passer par un état, c'est ça ? Je créé l'état à partir du couple de formulaires ou je créé une requète et ensuite l'état sur cette requète ? Merci encore. Cordialement PME Diag |
|
|
00
|
|
|
#4 | |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 089 ![]() |
Bonjour,
C'est ce que je ferais. L'état permet des choses qu'un formulaire n'est pas capable. Tu ouvres simplement ton formulaire en mode création et tu fais Fichier/Enregistrer l'objet sous.../En tant que Etat. Dès lors tu peux utiliser la commande qui est largement plus souple qu'un printout. Citation:
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Bonjour loufab.
Je te remercie beaucoup pour ce renseignement. Je débute en access et je découvre avec bonheur toutes les possibilités offertes par ce super logiciel, et Dieu sait s'il y en a. Gràce à toi j'ai réussi à faire ce que je voulais faire. Problème résolu. Merci et longue vie à ce super site. Cordialement. PME Diag |
|
|
00
|
|
|
#6 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Bonjour à toutes et à tous.
Désolé de déterrer ce vieux poste, j'espère que quelqu'un le lira, sinon j'ouvrirai une nouvelle discussion. J'ai fais ce que loufab m'a dit, j'ai enregistré mon formulaire sous forme d'un état. Cet état reprend bien la forme de mon formulaire. Cependant, lorsque je l'ouvre à l'aide d'un bouton que j'ai ajouté sur mon formulaire, il me donne la liste des factures avec cet état, et nom seulement la facture que je suis en train de saisir avec mon formulaire. Comment dois-je procéder pour que l'état ouvert ne porte que sur la facture en cours de saisie ? Je vous remercie par avance de votre aide. Cordialement. PME Diag |
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 089 ![]() |
Bonjour,
Sujet abordé à de nombreuses reprises et présent dans la faq ! http://access.developpez.com/faq/?page=Forms#PassValeur Il faut utiliser la clause Where de la commande OpenReport. Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
00
|
|
|
#8 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Bonjour loufab.
Cette question est effectivement traitée dans la FAQ, je suis désolé. J'ai tenté de réaliser l'opération mais cela ne me donne pas le résultat attendu. J'ai mon formulaire avec IdFacture, IdClient, DateFacture, IdModeReglement et EtatFacture, j'ai mon sous-formulaire, basé sur une requête, avec IdFacture, IdPrestation, Quantite, PrixUnitaireHT, MontantHT, TVA et MontantTTC. J'ai créé un bouton qui commande l'ouverture de l'état (lui-même créé en enregistrant le formulaire sous forme d'état). Je clique droit sur le bouton et je sélectionne le premier choix (créer un évènement code). Je vois bien comment fonctionne le générateur de code, mais je ne sais pas bien quoi saisir dans la clause where. Je te remercie encore pour ton aide. Cordialement. PME Diag |
|
|
00
|
|
|
#9 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 089 ![]() |
Bonjour,
ou [Champ] est le nom du champ dans l'état. et champ est le nom du champ dans le formulaire. Attention selon le type de [Champ] tu devras mettre ou non le séparateur texte. Exemple: Numérique, date... Texte, mémo Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
00
|
|
|
#10 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Excuse-moi de t'ennuyer encore avec mon problème, mais cela ne fonctionne pas.
Voici le code que j'ai saisi comme action à effectuer sur click du bouton : Code :
DoCmd.OpenReport EditionFacture, acViewPreview, , "[IdFacture]=" & Me.IdFacture Au moment de la compilation, access me donne le message suivant : Erreur d'exécution '2497': L'action ou la méthode requiert un argument Nom état Vois-tu d'où peut venir le problème ? Si tu préfères, je peux t'envoyer ma base de données afin que tu en comprennes mieux le fonctionnement. Cordialement. PME Diag |
|
|
00
|
|
|
#11 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 089 ![]() |
Message clair ton nom d'état n'est pas reconnu.
Dans ton cas tu y passes un variable qui s'appelle EditionFacture. Entre double-cote cela deviendra un nom de d'objet (état). Lorsque tu as un message d'erreur le premier réflexe doit être F1 sur la commande et non un post.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
00
|
|
|
#12 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Salut loufab.
Merci pour l'info, ce problème-ci est réglé. Je prends note de l'utilisation de la touche F1 et je saurai en faire bon usage crois moi. J'ai cependant un nouveau message d'erreur : Erreur d'exécution '3075': Erreur de syntaxe (opérateur absent) dans l'expression "[IdFacture=" Et l'aide contextuelle n'est pas d'une très grande utilité : L'expression que vous avez tapée n'est pas valide pour la raison indiquée dans le message. Vérifiez que vous avez correctement tapé les noms de champ et la ponctuation, puis tentez à nouveau l'opération. Vois-tu ce que cela peut-être ? Désolé de t'ennuyer encore, les boulets débutants ce doit être lours à force, mais j'aimerais vraiment comprendre ce que j'ai pu rater dans la conception de ma bdd et, qui sait, pouvoir venir en aide à d'autres débutants plus tard. Merci beaucoup. PME Diag |
|
|
00
|
|
|
#13 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 089 ![]() |
Il vaut mieux sélectionné la commande (openreport) et taper F1. L'aide sur une erreur peut te donner quelques pistes de réflexion.
Ton problème vient du fait que tu ne mets pas les double-cotes autour du nom de l'état. Comme ceci : Du coup il prend EditionMachin pour une variable qu'il ne trouve pas. Tu devrais systèmatiquement utiliser Option Explicit dans tous tes modules (VBE/Options/Editeur/Déclaration de variables obligatoires), ainsi il te signalera les variables manquantes , qu'il te faudra déclarer et donc ce qu'il prend pour des variables. Pour ta nouvelle erreur "tapez les noms de champ et la ponctuation" : Il te donne bien la solution Tout crochet ouvert doit un jour être refermé. Nous avons tous été débutants un jour et le seront forcément dans l'avenir, à moins de rien apprendre de nouveau. Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
10
|
|
|
#14 |
|
Candidat au titre de Membre du Club
![]() Aurélien SimonConseil aux entreprises Inscription : juin 2011 Messages : 40 ![]() |
Bonjour loufab.
Il s'agit ici d'une faute de frappe, j'avais bien fermé le crochet, et au bon endroit. J'ai donc repris la conception de ma BDD. J'ai créé une requête basée sur la table DetailFactures, avec les calculs qui vont bien. J'ai recréé mon formulaire Facture, avec un sous-formulaire DetailFacture basé sur la requête. Ensuite j'ai créé un état basé sur la table Factures. Un sous-état basé sur ma requête, et une macro qui appelle cet état complet avec une condition basée sur la valeur de IdFacture dans le formulaire Facture. Cela a l'air de fonctionner correctement. Je te remercie beaucoup de la patience dont tu as fais preuve. User m'a aidé également sur un autre poste. Merci à vous deux. Je pourrai ainsi venir en aide à d'autres débutants comme moi. Continuez ce que vous faites, c'est génial. Cordialement. PME Diag |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com