Guten Abend!
Ich bastle gerade für einen kleinen verein ein Balldatenbank. Der Ball findet nur einmal im Jahr statt. Zur Kontrolle soll jedes Mitglied, dass im Vorjahr Gäste eingeladen hat, eine Kontrollliste mit den Daten der Gäste bekommen. Ich habe mit einer Abfrage die Personen herausgesucht und in einem Bericht mit Gruppierung zusammengefasst. Funktioniert!
Nun brauche ich aber einen Bericht pro Mitglied mit seinen Gästen. Soll in einem Verzeichnis (C:\Kontrollliste) gespeichert werden (Dateiname soll der Einladende sein) und idealerweise auch gleich per Mail versendet werden. Die Mail-Adresse ist ist in den Stammdaten des Mitglieds gespeichert. Ich habe in diesem Forum einen Beitrag aus August 2016 gefunden wo das teilweise gelöst wurde. Code "gestohlen" von PhilS.
Private Sub Kontrolle_Click()
Dim strSQL As String
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim strDatei As String, strWhere As String
Set db = CurrentDb
strSQL = "SELECT * FROM Abfrage1"
Set rs = db.OpenRecordset(strSQL, dbOpenSnapshot)
Do Until rs.EOF
strDatei = "C:\Kontrollliste\" & rs.Fields("Familienname").Value & ".pdf"
DoCmd.OpenReport "Bericht1", acViewPreview, , "Couleur = '" & rs!Familienname & "'" ', acHidden
DoCmd.OutputTo acOutputReport, "Bericht1", acFormatPDF, strDatei, True
DoCmd.Close acReport, "Bericht1"
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
Set db = Nothing
End SubLeider bekomme ich einen Laufzeitfehler 1501.
Das Verzeichnis habe ich erstellt und habe sicher Zugriff.
Jetzt bin ich ratlos.
Möglicherweise ist das auch wesentlich einfacher zu lösen und ich stehe nur fest auf Leitung.
Danke im Voraus und liebe Grüße aus Wien
Michael