cs_DPhBxl
Messages postés19Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention21 juin 2011
-
21 janv. 2005 à 16:37
valtrase
Messages postés937Date d'inscriptionlundi 19 janvier 2004StatutMembreDernière intervention 9 mai 2022
-
24 janv. 2005 à 11:18
Bonjour,
J'ai créé un code en VBA qui modifie un graphique composé de lignes, de rectangles et de labels dans un etat.
Je désire imprimer l'état à chaque modification. C'est-à-dire pour chaque enregistrement lu dans la DB. Il y a 2000 enregistrements... il y a donc 2000 impressions à démarrer sur base du même état modifier 2000 fois.
Quelqu'un peut m'expliquer comment imprimer dans VBA Access pour le cas qui me concerne.
Remarque: Y a-t'il moyen d'imprimer dans un fichier plutôt que vers une imprimante ?
valtrase
Messages postés937Date d'inscriptionlundi 19 janvier 2004StatutMembreDernière intervention 9 mai 20224 22 janv. 2005 à 15:18
Salut,
Je ne pense pas que tu puisse intercepter chaque enregistrement dans un report. Pour ta 2ème question c'est la propriété OutputTo si mes souvenirs sont bon.
Dim stDocName As String
stDocName = "Ici le nom de ton Report"
DoCmd.OutputTo acReport, stDocName
cs_DPhBxl
Messages postés19Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention21 juin 2011 24 janv. 2005 à 09:37
Merci Valtrase pour ce début de réponse.
En ce qui concerne l'interception de chaque enregistrement, je le fais et çà marche. Mais après chaque modification du report basé sur chaque enregistrement, je dois trouver une solution pour imprimer le report.
L'idéal serait de sauvegarder chaque état dans un fichier en ajoutant une page à chaque fois au même fichier (ex en Word) pour ne pas obtenir 2000 fichiers séparés.
En ce qui concerne la commande "OutputTo", j'avais déjà fait l'essai, mais l'exportation de l'état se fait uniquement au niveau des textes inclus dans l'état et pas les graphiques .
Dans le pire des cas, il me faudra imprimer l'état à chaque modification dans une boucle (c'est le but de toute façon). Mais je ne connait pas la commande qui permet d'imprimer un état.
valtrase
Messages postés937Date d'inscriptionlundi 19 janvier 2004StatutMembreDernière intervention 9 mai 20224 24 janv. 2005 à 11:03
Re,
pour imprimer ton report utilises
Function PrintReport([ShowDialog As Boolean = Faux], [Range As PageRangeConstants = rptRangeAllPages], [PageFrom], [PageTo]) As Long
tout est option donc:
Report.PrintReport
et pour l'exporter sous VB6
Function ExportReport([FormatIndexOrKey], [FileName], [Overwrite As Boolean = Vrai], [ShowDialog As Boolean = Faux], [Range As PageRangeConstants = rptRangeAllPages], [PageFrom], [PageTo]) As Long
expression Obligatoire. Expression qui renvoie un objet DoCmd.
ReportNameVariant requis. Une [mk:@MSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\1036\vbaac10.chm::/html/acmthactOpenReport.htm# expression chaîne] qui est le nom valide d'un état dans la base de données en cours. Si vous exécutez un code Visual Basic contenant la méthode OpenReport dans une [mk:@MSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\1036\vbaac10.chm::/html/acmthactOpenReport.htm# base de données bibliothèque], Microsoft Access recherche l'état sous ce nom, d'abord dans la base de données bibliothèque, puis dans la base de données en cours.
View [mk:@MSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\1036\vbaac10.chm::/html/acmthactOpenReport.htm# AcView] facultatif. La vue à appliquer à l'état spécifié.
AcView peut être une de ces constantes AcView.,
----
acViewDesign,
----
acViewNormal défaut Imprime l'[mk:@MSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\1036\vbaac10.chm::/html/acmthactOpenReport.htm# requête] dans la base de données en cours.
WhereConditionVariant facultatif. Une expression chaîne qui est une [mk:@MSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\1036\vbaac10.chm::/html/acmthactOpenReport.htm# clause WHERE] SQL valide sans le mot WHERE.
ModeFenêtre [mk:@MSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\1036\vbaac10.chm::/html/acmthactOpenReport.htm# AcWindowMode facultatif]. Le mode dans lequel s'ouvre le formulaire.
AcWindowMode peut être une de ces constantes AcWindowMode.,
----
acDialog Les propriétés Modal et PopUp du formulaire sont réglées sur Yes.,
----
acHidden Le formulaire est masqué.,
----
acIcon Le formulaire s'ouvre sous forme réduite dans la barre des tâches Windows.,
----
acWindowNormal par défaut Le formulaire est dans le mode défini par ses propriétés
OpenArgsVariant facultatif. Définit la propriété [mk:@MSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\1036\vbaac10.chm::/html/acproOpenArgs.htm OpenArgs].
Remarques
Pour plus d'informations sur le mode de fonctionnement de l'action et de ses arguments, reportez-vous à la rubrique Action.
L'argument WhereCondition peut comporter jusqu'à 32 768 caractères (contrairement à l'argument de l'action Where Condition de la fenêtre Macro, dont la longueur ne peut excéder 256 caractères).
Vous pouvez laisser un argument facultatif vierge au milieu de la syntaxe, mais vous devez inclure la virgule de l'argument. Si vous laissez un ou plusieurs arguments de fin vierges, n'utilisez pas de virgule à la suite des arguments spécifiés.
Exemple
Cet exemple imprime un État des ventes à l'aide de la requête existante Filtre État.