Preview & impression multiple + sauvegarde état
Le
Jiveday
Bonjour
Un bouton "Impression" déclenche la procédure suivante : impression d'un
état "Demande de facture" en 2 exemplaires, sauvegarde de l'état aux formats
Excel et Snapshot et mise à jour d'une case "Facturé" pour ne plus devoir
traiter les anciens enregistrements.
Un bouton "Preview" permet de visualiser l'état avant de lancer l'impression.
Voici mon problème. Merci d'avance pour l'aide apportée.
Est-il possible d'empêcher l'utilisateur d'imprimer via la pré visualisation ?
Ou d'enchaîner la procédure à partir du preview ?
Actuellement en enchaînant le tout, le preview ne visualise pas entièrement
la page mais affiche la suite du programme (msgbox).
Et si je mets la programmation dans l'état "avant fermeture", Access ne
permet pas d'imprimer ou sauvegarder un état déjà ouvert.
Dim stDocNom As String
Dim stFiXLS As String
stDocNom = "E_Facture"
DoCmd.OpenReport stDocNom, acNormal
'DoCmd.OpenReport stDocNom, acPreview
Dim Msg, Style, Title, Response
Msg = "Faut-il cocher la case FACTURES ?" ' Définit le message.
Style = vbYesNo + vbQuestion + vbDefaultButton2 ' Définit les boutons.
Title = "Mise à jour case FACTURES " ' Définit le titre.
Response = MsgBox(Msg, Style, Title) ' Affiche le message.
If Response = vbYes Then ' L'utilisateur a choisi Oui.
DoCmd.OpenReport stDocNom, acNormal
DoCmd.OpenReport stDocNom, acNormal
stFichierExcel = [T] & Mid$(Now(), 7, 4) & Mid$(Now(), 4, 2) &
Left$(Now(), 2)
DoCmd.OutputTo acReport, stDocNom, acFormatXLS, ("N:\" & stFiXLS & ".xls")
DoCmd.OutputTo acReport, stDocNom, acFormatSNP, ("N:\" & stFiXLS & ".snp")
DoCmd.SetWarnings False
Dim Qry As DAO.QueryDef
Set Qry = CurrentDb.QueryDefs("R_majCaseFacture")
Qry.Execute
Set Qry = Nothing
DoCmd.SetWarnings True
Else
' Cases FACTURES non modifiées
End If
DoCmd.Close acReport, stDocNom
Un bouton "Impression" déclenche la procédure suivante : impression d'un
état "Demande de facture" en 2 exemplaires, sauvegarde de l'état aux formats
Excel et Snapshot et mise à jour d'une case "Facturé" pour ne plus devoir
traiter les anciens enregistrements.
Un bouton "Preview" permet de visualiser l'état avant de lancer l'impression.
Voici mon problème. Merci d'avance pour l'aide apportée.
Est-il possible d'empêcher l'utilisateur d'imprimer via la pré visualisation ?
Ou d'enchaîner la procédure à partir du preview ?
Actuellement en enchaînant le tout, le preview ne visualise pas entièrement
la page mais affiche la suite du programme (msgbox).
Et si je mets la programmation dans l'état "avant fermeture", Access ne
permet pas d'imprimer ou sauvegarder un état déjà ouvert.
Dim stDocNom As String
Dim stFiXLS As String
stDocNom = "E_Facture"
DoCmd.OpenReport stDocNom, acNormal
'DoCmd.OpenReport stDocNom, acPreview
Dim Msg, Style, Title, Response
Msg = "Faut-il cocher la case FACTURES ?" ' Définit le message.
Style = vbYesNo + vbQuestion + vbDefaultButton2 ' Définit les boutons.
Title = "Mise à jour case FACTURES " ' Définit le titre.
Response = MsgBox(Msg, Style, Title) ' Affiche le message.
If Response = vbYes Then ' L'utilisateur a choisi Oui.
DoCmd.OpenReport stDocNom, acNormal
DoCmd.OpenReport stDocNom, acNormal
stFichierExcel = [T] & Mid$(Now(), 7, 4) & Mid$(Now(), 4, 2) &
Left$(Now(), 2)
DoCmd.OutputTo acReport, stDocNom, acFormatXLS, ("N:\" & stFiXLS & ".xls")
DoCmd.OutputTo acReport, stDocNom, acFormatSNP, ("N:\" & stFiXLS & ".snp")
DoCmd.SetWarnings False
Dim Qry As DAO.QueryDef
Set Qry = CurrentDb.QueryDefs("R_majCaseFacture")
Qry.Execute
Set Qry = Nothing
DoCmd.SetWarnings True
Else
' Cases FACTURES non modifiées
End If
DoCmd.Close acReport, stDocNom

Poser une question


tu lances ton état avec l'option acDialog et personne ne pourra l'imprimer.
au retour tu pourras lancer l'impression directe par ton code:
DoCmd.OpenReport "etat1", acViewPreview, , , acDialog
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jiveday" news:
Je travaille avec Access2000.
- si je veux travailler avec un seul bouton :
même en lançant l'état avec l'option
DoCmd.OpenReport "etat1", acViewPreview, , acDialog
mon code ne s'arrête pas et me propose donc la msgbox.
Le retour au code se fait donc automatiquement sans que la personne puisse
se promener dans le preview pour y contrôler si tout est OK.
- si je travaille avec 2 boutons (1=preview 2=impression) la possibilité
d'imprimer avec
DoCmd.OpenReport "etat1", acViewPreview, , acDialog
existe toujours aussi bien via la petite icone imprimante que via le menu.
Merci encore pour l'aide apportée.
"Raymond [mvp]" news:
mini)
Pour pouvoir cocher les cases il faut d'abord vérifier la facture,
c'est-à-dire naviguer dans l'état sur plusieurs pages éventuellement, donc
il ne faut pas qu'un code bloque ceci. je ne vois pas bien la solution à
adopter pour empêcher un opérateur de cliquer sur l'icône imprimante.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jiveday"
ceci m'évitera de continuer à chercher comme un malade (les utilisateurs en
veulent toujours plus !).
Bonne journée
"Raymond [mvp]" news: