jacw
Gebruiker
- Lid geworden
- 23 sep 2006
- Berichten
- 88
- Besturingssysteem
- Windows 11
- Office versie
- Office 365
Ik heb een keuze formulier vanwaar ik een rapport open. Rapport is gebaseerd op een Query. (knop aangestuurd door een macro)
Het rapport wordt juist geopend. Nu druk ik op een knop in een Rapport, vervolgens wordt de procedure uitgevoerd en wordt het rapport opgeslagen als PDF op de PC in de juiste map, vervolgens wordt het rapport gesloten en kom ik weer in het formulier terrecht.
Beide knoppen werken dus goed. Ik heb vanalles geprobeerd, om die twee knoppen te combineren zodat ik maar één knop hoef in te drukken om bovenstaande uit te voeren, echter het lukt mij niet om het commande van rapport oppenen op de juiste plek in de procedure te zetten.
CODE in Rapport:
Code omgebouwd naar procedure in formulier
Vraag beknopt: Hoe kan ik beide codes zo samenvoegen dat door één druk op de knop beide codes worden uitgevoerd.
Is er dan ook een optie dat het volgend RECORD in het formulier wordt weergegeven?
BVD JacW
Het rapport wordt juist geopend. Nu druk ik op een knop in een Rapport, vervolgens wordt de procedure uitgevoerd en wordt het rapport opgeslagen als PDF op de PC in de juiste map, vervolgens wordt het rapport gesloten en kom ik weer in het formulier terrecht.
Beide knoppen werken dus goed. Ik heb vanalles geprobeerd, om die twee knoppen te combineren zodat ik maar één knop hoef in te drukken om bovenstaande uit te voeren, echter het lukt mij niet om het commande van rapport oppenen op de juiste plek in de procedure te zetten.
CODE in Rapport:
Code:
Function FileExist(FileFullPath As String) As Boolean
Dim value As Boolean
value = False
If Dir(FileFullPath) <> "" Then
value = True
End If
FileExist = value
End Function
Private Sub Knop52_Click()
Dim fileName As String, fldrPath As String, filePath As String
Dim answer As Integer
fileName = jaar & Factuurid & " " & Me.Naam & " " & postcodewoonplaats & " " & "factuur" 'PDF Bestandsnaam*
fldrPath = "C:\Users\jacwo\Documents\facturen\" & Me.jaren & "\" & Me.maand 'Map waar rapport wordt opgeslagen*"
filePath = fldrPath & "\" & fileName & ".pdf"
'Controle of bestand al is opgeslagen
If FileExist(filePath) Then
answer = MsgBox(prompt:="PDF Bestaat al: " & vbNewLine & filePath & vbNewLine & vbNewLine & _
"Moet het bestaande bestand worden vervangen?", buttons:=vbYesNo, Title:="Existing PDF File")
If answer = vbNo Then Exit Sub
End If
On Error GoTo invalidFolderPath
DoCmd.OutputTo objecttype:=acOutputReport, objectName:=Me.Name, outputformat:=acFormatPDF, outputFile:=filePath
DoCmd.Close acReport, "Factuur serie"
Exit Sub
invalidFolderPath:
MsgBox prompt:="Verkeerde map keuze.", buttons:=vbCritical
End Sub
Code omgebouwd naar procedure in formulier
Code:
'------------------------------------------------------------
' Macro2
'
'------------------------------------------------------------
Function Macro2()
On Error GoTo Macro2_Err
DoCmd.openreport "Factuur serie", acViewReport, "", "", acNormal
Macro2_Exit:
Exit Function
Macro2_Err:
MsgBox Error$
Resume Macro2_Exit
End Function
Vraag beknopt: Hoe kan ik beide codes zo samenvoegen dat door één druk op de knop beide codes worden uitgevoerd.
Is er dan ook een optie dat het volgend RECORD in het formulier wordt weergegeven?
BVD JacW