Paperwhite
Gebruiker
- Lid geworden
- 26 dec 2019
- Berichten
- 38
ik heb een simpele database, in Access 365, gemaakt om facturen aan te maken. Op het formulier heb ik een knop gemaakt die een macro uitvoert waardoor een klant aangemaakt wordt in de tabel facturen met een factuurnummer en factuurdatum. Daarna worden de factuurregels bijgewerkt met het factuurnummer en factuurdatum (nodig of niet, dat was de keuze). Daarna wordt de factuur met behulp van het rapport facturen gegenereerd. Daarna wordt in de tabel facturen een vinkje gezet ten teken dat deze factuur daadwerkelijk is gefactureerd.
Echter het is de bedoeling dat het factuurnummer ook als bestandsnaam van de pdf gaat dienen (nu de ???? in onderstaande code).
Mijn ervaring met VBA is 0,0 toch heb ik de macro naar VBA omgezet omdat ik na googlen vermoed dat dat de enige mogelijkheid is om de bestandsnaam te genereren. De conversie ziet er als volgt uit:
Option Compare Database
'------------------------------------------------------------
' Facturen_aanmaken
'
'------------------------------------------------------------
Function Facturen_aanmaken()
On Error GoTo Facturen_aanmaken_Err
DoCmd.SetWarnings False
DoCmd.OpenQuery "klant uit formulier toevoegen aan Facturen", acViewNormal, acEdit
DoCmd.Close acQuery, "klant uit verkopen toevoegen aan Facturen"
DoCmd.OpenQuery "Bijwerken verkopen met fact nr en datum", acViewNormal, acEdit
DoCmd.Close acQuery, "Bijwerken verkopen met fact nr en datum"
DoCmd.OutputTo acOutputReport,????? , "PDFFormat(*.pdf)", "", True, "", , acExportQualityPrint
DoCmd.OpenQuery "Facturatie instellen op ja", acViewNormal, acEdit
DoCmd.Close acQuery, "Facturatie instellen op ja"
DoCmd.Requery ""
Facturen_aanmaken_Exit:
Exit Function
Facturen_aanmaken_Err:
MsgBox Error$
Resume Facturen_aanmaken_Exit
End Function
Ik heb 2 vragen:
1. Als ik bij de knop op het formulier deze code als gebeurtenis procedure wil plaatsen waar moet dat dan?
ik zie:
Private Sub Factuur_aanmaken_Click()
End Sub
De Private Sub en de Function lijken niet samen te gaan. Hoe moet ik dit in elkaar passen?
Vraag 2:
Op de plaats van de ???? in bovenstaande code moet het factuurnummer komen. Ik heb variabelen gedeclareerd en meer dingen die ik eigenlijk niet begrijp geprobeerd, het lukt niet.
Hoe zet ik de verwijzing naar het veld [factuurnummer] in de code zodat het wel kan?
Alvast mijn dank.
Echter het is de bedoeling dat het factuurnummer ook als bestandsnaam van de pdf gaat dienen (nu de ???? in onderstaande code).
Mijn ervaring met VBA is 0,0 toch heb ik de macro naar VBA omgezet omdat ik na googlen vermoed dat dat de enige mogelijkheid is om de bestandsnaam te genereren. De conversie ziet er als volgt uit:
Option Compare Database
'------------------------------------------------------------
' Facturen_aanmaken
'
'------------------------------------------------------------
Function Facturen_aanmaken()
On Error GoTo Facturen_aanmaken_Err
DoCmd.SetWarnings False
DoCmd.OpenQuery "klant uit formulier toevoegen aan Facturen", acViewNormal, acEdit
DoCmd.Close acQuery, "klant uit verkopen toevoegen aan Facturen"
DoCmd.OpenQuery "Bijwerken verkopen met fact nr en datum", acViewNormal, acEdit
DoCmd.Close acQuery, "Bijwerken verkopen met fact nr en datum"
DoCmd.OutputTo acOutputReport,????? , "PDFFormat(*.pdf)", "", True, "", , acExportQualityPrint
DoCmd.OpenQuery "Facturatie instellen op ja", acViewNormal, acEdit
DoCmd.Close acQuery, "Facturatie instellen op ja"
DoCmd.Requery ""
Facturen_aanmaken_Exit:
Exit Function
Facturen_aanmaken_Err:
MsgBox Error$
Resume Facturen_aanmaken_Exit
End Function
Ik heb 2 vragen:
1. Als ik bij de knop op het formulier deze code als gebeurtenis procedure wil plaatsen waar moet dat dan?
ik zie:
Private Sub Factuur_aanmaken_Click()
End Sub
De Private Sub en de Function lijken niet samen te gaan. Hoe moet ik dit in elkaar passen?
Vraag 2:
Op de plaats van de ???? in bovenstaande code moet het factuurnummer komen. Ik heb variabelen gedeclareerd en meer dingen die ik eigenlijk niet begrijp geprobeerd, het lukt niet.
Hoe zet ik de verwijzing naar het veld [factuurnummer] in de code zodat het wel kan?
Alvast mijn dank.