OVH Cloud OVH Cloud

vba msgbox impression

2 réponses
Avatar
heidy
bonjour,
j'ai une fonction et à la fin de ma fonction, j'ai fait comme un résumé avec
"msgbox" avec tous les résultats de mes variables, et j'aimerai faire un
bouton impression pour pouvoir imprimer mon résumé. est-ce possible?
merci de votre aide
--
heidy

2 réponses

Avatar
Eric
Bonjour Heidy,

Doit y avoir plusieurs méthodes mais pour le plaisir de manipuler des
objets simples d'Access ... ;-)
Je n'ai pas fait de Bouton d'impression. C'est dans la MsgBox qui
t'affiche les infos que je pose la question.

Si tu as un peu de patience, d'autres, les spécialistes, te proposeront
une autre manière de faire.

Ce que je te propose, c'est de sortir un état avec tes variables.
Tu crées un état (nommé par exemple Etat des variables) qui contient en
entête de page une étiquette dont la légende est Contenu des variables
de la procédure ou fonction.
Dans la zone détail, une étiquette nommée ContenuMsgBox suffisamment
grande 13 cm * 13 cm par exemple
Tu sauves l'état.

La procédure qui appelle ta msgbox avec tes variables et leurs valeurs,
construis-la comme suit :

Private Sub Commande0_Click()
Dim strTxt1 As String, strTxt2 As String, e As Report
'strTxt1 est la variable correspondant au Prompt de la msgbox
'c'est à dire la variable qui contient le nom des variables et
'leur contenu que tu affiches dans la msgbox
' A partir de là, tu construit la chaine avec tes variables-valeurs
' ...
' ...
'strTxt2 contient le message s'affichant dans la msgbox
'avec une demande d'édition à la fin
strTxt2 = strTxt1 & vbCrLf & vbCrLf & "Edition des variables ?"
If MsgBox(strTxt2, vbYesNo + vbDefaultButton2, "MPFA") = vbYes Then
' on ouvre l'état en désign, on lui affecte le contenu
' de la msgbox sans la question, on sauve l'état.
DoCmd.OpenReport "Etat des variables", acViewDesign
Set e = Reports("Etat des variables")
e.ContenuMsgbox.Caption = strTxt1
DoCmd.Close acReport, "Etat des variables", acSaveYes
' on lance l'impresion de l'état
' Changer acViewPreview en acViewNormal pour éditer
DoCmd.OpenReport "Etat des variables", acViewPreview
Set e = Nothing
End If
End Sub

bonjour,
j'ai une fonction et à la fin de ma fonction, j'ai fait comme un résumé avec
"msgbox" avec tous les résultats de mes variables, et j'aimerai faire un
bouton impression pour pouvoir imprimer mon résumé. est-ce possible?
merci de votre aide


--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
heidy
merci Eric pour ta proposition, je vais l'essayer
--
heidy



Bonjour Heidy,

Doit y avoir plusieurs méthodes mais pour le plaisir de manipuler des
objets simples d'Access ... ;-)
Je n'ai pas fait de Bouton d'impression. C'est dans la MsgBox qui
t'affiche les infos que je pose la question.

Si tu as un peu de patience, d'autres, les spécialistes, te proposeront
une autre manière de faire.

Ce que je te propose, c'est de sortir un état avec tes variables.
Tu crées un état (nommé par exemple Etat des variables) qui contient en
entête de page une étiquette dont la légende est Contenu des variables
de la procédure ou fonction.
Dans la zone détail, une étiquette nommée ContenuMsgBox suffisamment
grande 13 cm * 13 cm par exemple
Tu sauves l'état.

La procédure qui appelle ta msgbox avec tes variables et leurs valeurs,
construis-la comme suit :

Private Sub Commande0_Click()
Dim strTxt1 As String, strTxt2 As String, e As Report
'strTxt1 est la variable correspondant au Prompt de la msgbox
'c'est à dire la variable qui contient le nom des variables et
'leur contenu que tu affiches dans la msgbox
' A partir de là, tu construit la chaine avec tes variables-valeurs
' ...
' ...
'strTxt2 contient le message s'affichant dans la msgbox
'avec une demande d'édition à la fin
strTxt2 = strTxt1 & vbCrLf & vbCrLf & "Edition des variables ?"
If MsgBox(strTxt2, vbYesNo + vbDefaultButton2, "MPFA") = vbYes Then
' on ouvre l'état en désign, on lui affecte le contenu
' de la msgbox sans la question, on sauve l'état.
DoCmd.OpenReport "Etat des variables", acViewDesign
Set e = Reports("Etat des variables")
e.ContenuMsgbox.Caption = strTxt1
DoCmd.Close acReport, "Etat des variables", acSaveYes
' on lance l'impresion de l'état
' Changer acViewPreview en acViewNormal pour éditer
DoCmd.OpenReport "Etat des variables", acViewPreview
Set e = Nothing
End If
End Sub

bonjour,
j'ai une fonction et à la fin de ma fonction, j'ai fait comme un résumé avec
"msgbox" avec tous les résultats de mes variables, et j'aimerai faire un
bouton impression pour pouvoir imprimer mon résumé. est-ce possible?
merci de votre aide


--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr