Excel-Dokumente aus Access heraus formatieren
Hallo,
angenommen ihr exportiert Daten von Access nach Excel und möchtet nach Bearbeitung das Excel-Sheet ausdrucken.
Das Anpassen der Seitenränder für den Druck kann man nämlich auch gleich aus Access heraus erledigen.
Dazu benötigen wir zuerst den Verweis auf die aktuelle Microsoft Excel Library.
Danach benötigen wir die 3 Excel-Objekte für die Anwendung, das Workbook und das Worksheet:
Dim xlApp As Excel.Application Dim xlBook As Workbook Dim xlSheet As Worksheet Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open("c:\output.xlsx") Set xlSheet = xlBook.Worksheets(1)
Das Anwendungsobjekt ist definiert, das Workbook geöffnet und der Verweiss auf das erste Arbeitsblatt gesetzt. Jetzt gehts los:
With xlSheet.PageSetup .LeftHeader = "&""Arial,Standard""&8&F;" .CenterHeader = "&""Arial,Standard""&8&A;" .RightHeader = "&""Arial,Standard""&8&D;" .LeftFooter = "" .CenterFooter = "" .RightFooter = "&""Arial,Standard""&8Seite &P;" .LeftMargin = xlApp.InchesToPoints(0.5) .RightMargin = xlApp.InchesToPoints(0.25) .TopMargin = xlApp.InchesToPoints(0.75) .BottomMargin = xlApp.InchesToPoints(0.75) .HeaderMargin = xlApp.InchesToPoints(0.5) .FooterMargin = xlApp.InchesToPoints(0.5) .... End With
Man kann also alles einstellen was auch in Excel einzustellen geht. Zu beachten ist, dass die Angaben in Points zu machen sind. Dazu kann man die Excel-Funktion InchesToPoints() verwenden.
Seht euch die Schreibweise für die Schriftart und -Größe an. Beachtet die doppelte Anführungszeichen.
Man kann auch bequem Einstellungen wie Druckqualität, Papiergröße oder Seitenzahlen einfügen wie oben im rechten Footer.
Bis dahin
© 2015 Andreas Vogt