Hallo Leute, ich habe folgendes Problem:
Ich habe in meiner Datenbank einen Bericht "rpt_delivery_note", den ich über DoCmd.OpenReport "rpt_delivery_note", acViewReport, , "delivery_number = '" & Me.delivery_number & "'"
aufrufen. Zudem habe ich einen Bericht "rpt_outbound", den ich über DoCmd.OpenReport "rpt_outbound", acViewReport, , "delivery_number = '" & Me.delivery_number & "'"
aufrufe. Meine Kundenanforderung ist nun, dass der rpt_Outbound nach Excel exportiert werden soll und zusammen mit dem "rpt_delivery_note" in einer ZIP-Datei zusammengefügt werden soll.
Ich habe keine Ahnung, wie ich den outbound nach Excel bekomme und schon gar keine Ahnung, wie ich das zusammen mit dem rpt_delivery_note in eine Zip packe.
Hat jemand eine Lösung für mich?
Vielen Dank schon mal im Voraus
Ich habe es hinbekommen, dass die Berichte exportiert werden. Auch nach Excel.
Private Sub btn_del_note_Click()
DoCmd.OpenReport "rpt_delivery_note", acViewReport, , "delivery_number = '" & Me.delivery_number & "'"
DoCmd.OutputTo acOutputReport, "rpt_delivery_note", acFormatPDF, "C:\Users\U0023593\Documents\Japan\Delivery_notes\rpt_delivery_note" & "_" & Me.delivery_number & ".pdf"
End Sub
Private Sub btn_outbound_Click()
On Error Resume Next
DoCmd.OpenReport "rpt_outbound", acViewReport, , "delivery_number = '" & Me.delivery_number & "'"
DoCmd.OutputTo acOutputReport, "rpt_outbound", acFormatXLS, "C:\Users\U0023593\Documents\Japan\Delivery_notes\outbound" & "_" & Me.delivery_number & ".xls"
End Sub
Aber wie kann ich jetzt diese beiden Dateien in eine Zip-Datei bekommen? Gibt es auch die Möglichkeit, dass der Pfad sich aus dem Dateinamen zusammensetzt, sodass er variabel ist?
Hallo,
am Besten rufst Du ein zip-Programm (z. B. 7z) auf, das man mit Kommandozeilen-Befehlen steuern kann. Diese Kommandos können z. B. in einen Shell-Aufruf oder ShellExecute-Aufruf verpackt werden.
https://sevenzip.osdn.jp/chm/cmdline/syntax.htm
Zitat von: lutschi83 am Mai 11, 2017, 14:09:46Aber wie kann ich jetzt diese beiden Dateien in eine Zip-Datei bekommen?
Ein externes ZIP-Befehlszeilenprogramm zu verwenden, ist sicher eine gute Lösung.
Als Alternative habe ich hier eine Beschreibung, wie man die eingebaute (aber auch etwas eingeschränkte) ZIP-Funktionalität der Windows-Shell mit VBA steuern (http://codekabinett.com/rdumps.php?Lang=1&targetDoc=zip-archiv-vba-shell32-erstellen) kann.