Hübsches Datenpaket: Snapshot

Es ist schon erstaunlich, mit welcher Beharrlichkeit Excel als Austauschformat eingesetzt wird, wenn es darum geht, Access-losen Kollegen Auswertungsdaten weiterzugeben. Das mag sinnvoll sein, wenn noch weitere Datenbearbeitungen geplant sind. Aber für eine einfache und übersichtliche Anzeige ohne Access bringt Access alles mit.

Berichte lassen sich mit Datei/Exportieren als sogenannte Snapshots mit der Dateiendung .snp speichern. Dabei sind sie sogar immer noch ein bisschen kleiner als PDF-Dateien, denen sie ansonsten sehr ähnlich sind.

Auch Snapshots liefern eine layoutgetreue Wiedergabe des Berichts und können mit dem frei erhältlichen Snapshot-Viewer angesehen werden. Der ist mit 135 KByte so klein, dass er zur Not auch noch als E-Mail-Anhang mitgeliefert werden kann.

Mit Snapshots vermeiden Sie, dass der Empfänger die Daten erneut grafisch aufbereiten muss. Schließlich sind alle Formatierungen, Schriften und Firmenlogos komplett enthalten.

Vor allem sind sie von VBA aus viel einfacher als PDF zu erzeugen, weil Ihr Code nicht erst aus einer Liste aller Drucker den PDF-Writer herausfinden muss. Mit dem Code aus Listing 1 erzeugen Sie zu dem genannten Bericht direkt eine gleichnamige Datei im Verzeichnis der Datenbank.

Const cRepName = "Katalog"
Function Snapshot_AusgabeIn()
Dim strDateiZiel As String
strDateiZiel = CurrentProject.Path & "\" & cRepName & ".snp"
DoCmd.OutputTo acReport, cRepName, acFormatSNP, _
strDateiZiel, False, "", 0
End Function

Tatsächlich gibt es sogar zwei VBA-Befehle, um Snapshots zu generieren. Listing 2 zeigt, wie einfach es ist, diesen Snapshot auch direkt per EMail zu versenden.

Const cRepName = "Katalog"
Const cTo = "Vorname.Nachname@Firma.de, Anderer.Kollege@Firma.de"
Function Snapshot_SendenObjekt()
DoCmd.SendObject acReport, cRepName, acFormatSNP, cTo, "", "", _
"Hier kommt Ihr Katalog", _
"Anbei finden Sie den gewünschten " & _
"Katalog im Access-Snapshot-Format.", False, ""
End Function

Dabei wird automatisch eine Outlook-E-Mail mit dem Berichts-Snapshot erzeugt und – weil das vorletzte Argument False ist – auch direkt versandt. Beiden Befehlen ist gemeinsam, dass die Konstante acFormatSNP für die Auswahl des passenden Formats nicht automatisch angeboten wird. Trotzdem sind sie unübertroffen simpel, um Daten in perfektem Format weiterzugeben.