VBA (Visual Basic for Application) Austausch von Daten



Ähnliche Dokumente
Access 2010 Programmierung Import und Export nach Excel

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Access und die andern (Office) Programme. Armin Hess

5 DATEN Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

Leere Zeilen aus Excel-Dateien entfernen

Tritt beim Aufruf ein Fehler aus, so wird eine MessageBox mit dem Fehlercode und der Kommandozeile angezeigt.

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

Modul 122 VBA Scribt.docx

Office Objektmodell (1)

Access Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli inkl. zusätzlichem Übungsanhang ACC2010-UA

Erstellen der Barcode-Etiketten:

Anleitung zur Erstellung einer Gefährdungsbeurteilung

Die Textvorlagen in Microsoft WORD und LibreOffice Writer

Gestaltung und Einrichtung der Word Formatvorlagen Für den Etikettendruck in Ratio (Word Versionen 8.0 und 9.0)

Access [basics] Aktionsabfragen per VBA ausführen. Beispieldatenbank. Aktionsabfragen. Die Execute-Methode. Datenzugriff per VBA

Aktivierung von Makros in den Erfassungshilfen

Einstufungstest Tabellenkalkulation

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen

3 Formularvorlage für einen Kostenvoranschlag bereitstellen

Wie kann ich in der Backstage-Ansicht eigene Dokumentationen einbinden?

Pflegeberichtseintrag erfassen. Inhalt. Frage: Antwort: 1. Voraussetzungen. Wie können (Pflege-) Berichtseinträge mit Vivendi Mobil erfasst werden?

xcall White Paper Wählen-Buttons in Excel

Handbuch ECDL 2003 Basic Modul 7 Abschnitt 1: Information Kopieren aus dem Browser

Anzeige von eingescannten Rechnungen

VBA (Visual Basic for Application) Zugriff auf Excel

esms - sms senden & empfangen mit Outlook

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

Interoperabilität mit Office-Anwendungen (1)

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel für Mac. amac-buch Verlag

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

Beispiel des Zusammenführens der APV- Tabellen Stammdaten und Verlaufsdaten mithilfe von Access

6.3 Serienbriefe über Microsoft Excel und Word

Herzlich willkommen zum Kurs "MS Word 2003 Professional"

Handbuch ECDL 2003 Basic Modul 3: Textverarbeitung Serienbrief erstellen - Datenquelle

Datenbanken Kapitel 2

Excel Auswertungen in XAuftrag / XFibu

Process4.biz Release Features Übersicht. Repository. Das Schützen von Diagrammen wurde optimiert (check-in, check-out)

Internet online Update (Mozilla Firefox)

Arbeiten mit UMLed und Delphi

Dokumentation IBIS Monitor

Klicken Sie im Kunden-Formular auf die Registerkarte. Dadurch öffnet sich die Briefverwaltung des Kunden. (Hier bereits mit Musterdaten)

Installations- und Bedienungsanleitung für Macro Excel_Table Version 10

Import und Export von Übergängern

Monatstreff für Menschen ab 50 WORD 2007 / 2010

Aufklappelemente anlegen

Arbeitsabläufe FinanzProfiT Version 4.25

Arbeiten am Client. Achtung: Während der gesamten Vorbereitungsarbeiten darf das Programm MS Outlook auf keinen Fall geöffnet werden!

2. Word-Dokumente verwalten

Microsoft Access 2010 Bilder

Excel Funktionen durch eigene Funktionen erweitern.

Inhaltsverzeichnis Dokumentverwaltung Organisation von Dokumenten Ordner erstellen Dokumente im Dateisystem behandeln...

Serienbriefe schreiben mit Ratio - Adressen (Microsoft Word Versionen 8.0 und 9.0)

novapro Open Audittrail Report

C# - Einführung in die Programmiersprache Arbeiten mit ADO.NET. Leibniz Universität IT Services Anja Aue

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Arbeiten mit Pivot-Tabellen

Elexis-BlueEvidence-Connector

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Hilfedatei der Oden$-Börse Stand Juni 2014

Mit dem sogenannten Seriendruck können Etiketten und Briefe mit einer Adressdatei (z. B. Excel) verknüpft werden.

Informationen zu den regionalen Startseiten

Es gibt situationsabhängig verschiedene Varianten zum Speichern der Dokumente. Word bietet im Menü DATEI unterschiedliche Optionen an.

Text Formatierung in Excel

Kurz-Anleitung Veranstaltungskalender AHG

Navigation. Drucken Klicken Sie auf ein Symbol, um nähere Informationen zu erhalten. Papierhandhabung Anzeigen der Online-Informationen

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

MS Excel 2010 Kompakt

ECDL Europäischer Computer Führerschein. Jan Götzelmann. 1. Ausgabe, Juni 2014 ISBN

Excel Pivot-Tabellen 2010 effektiv

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Erstellen von PDF-Dateien aus bocad-3d in der Version 19.xxxx und 20.xxxx

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

P-touch Transfer Manager verwenden

Wo möchten Sie die MIZ-Dokumente (aufbereitete Medikamentenlisten) einsehen?

TYPO3-Publikations-Daten aus TYPO3 exportieren und in Citavi importieren

Arge Betriebsinformatik GmbH & Co.KG, CAP News 40, Februar CAP-News 40

Hilfe Bearbeitung von Rahmenleistungsverzeichnissen

Pfötchenhoffung e.v. Tier Manager

P&P Software - Adressexport an Outlook 05/29/16 14:44:26

Installationsanleitung für OpenOffice.org Sprachpakete

Erstellen eines Wordpress-Blogs

MICROSOFT OFFICE. Inhaltsverzeichnis

Mediator 9 - Lernprogramm

Erweiterung der CRM-Datenbank für den Umgang mit Excel-Mappen. Automatisches Ausfüllen von MS-Excel-Vorlagen mit Daten aus organice

ecall sms & fax-portal

Hinweis zu aktiven Inhalten von Dateien

Arbeitsblätter auf die Schülercomputer verteilen, öffnen und wieder einsammeln

32.4 Anpassen von Menüs und Symbolleisten 795i

LIP Formulare Anleitung zum Speichern, Öffnen und Drucken

Tipps & Tricks - Neuerungen Nr. 6/ 2015

Kurzbeschreibung S&S Arbeitszeiterfassung

Bilderverwaltung mit Access

NEUES BEI BUSINESSLINE WINDOWS

Modul 7: Übungen zu - Tabellen als Mail oder im Web veröffentlichen

1PROGRAMM VERWENDEN. 1.1 Arbeiten mit Dokumenten Textverarbeitungsprogramm starten, beenden; Dokument öffnen, schließen

Zur drittletzten Zeile scrollen

FMGate Installation & Benutzung

Vorabversion. Schulung am Homepage Administration und Pflege

Excel Allgemeine Infos

Schnellanleitung: Verbuchung von Studien- und Prüfungsleistungen

Transkript:

VBA (Visual Basic for Application) Austausch von Daten

File - Dialogbox... ist in der Office 2000-Version erstmalig implementiert.... hat folgende Typen: msofiledialogfilepicker, um Dateien auszuwählen. msofiledialogfolgerpicker, um Verzeichnisse auszuwählen. msofiledialogopen, um Dateien auszuwählen und zu öffnen. Dieser Typ wird nicht von Access 2007 unterstützt. msofiledialogsaveas, um Dateien auszuwählen und zu speichern. Dieser Typ wird nicht von Access 2007 unterstützt.... benötigen einen Verweis auf die Microsoft Office xx Library. Dialogboxen können auch mit Hilfe der Windows API erstellt werden. OpenOffice Folie 2 Access 2007 VBA 06.03.08 Seite 2

Objektvariable deklarieren Dim fd As Office.FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) Die Objektvariable hat den Datentyp Office.FileDialog. Die Objektvariable bekommt ein Verweis auf eine Dialogbox zur Auswahl von Dateien übergeben. OpenOffice Folie 3 Access 2007 VBA 06.03.08 Seite 3

Aussehen der Dialogbox Dim fd As Office.FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd.title = "Datei für die Anlage auswählen".buttonname = "Auswählen" End With Beschriftung des OK- Buttons. Bezeichnung in der Titelleiste der Dialogbox. OpenOffice Folie 4 Access 2007 VBA 06.03.08 Seite 4

Dateiauswahl beeinflussen Dim fd As Office.FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd.allowmultiselect = False.InitialFileName = "C:\" Mehrfachauswahl von Dateien?.InitialView = msofiledialogviewlist End With Wie werden die Dateien und Ordner in dem Dialogfenster angezeigt? OpenOffice Folie 5 Access 2007 VBA 06.03.08 Seite 5

Einstellungen für.initialview msofiledialogviewsmallicon zeigt den Dateinamen und ein kleines Icon an. msofiledialogviewlist zeigt die Dateien als Liste an. msofiledialogdetails zeigt die Dateinamen, Größe etc. an. msofiledialogthumbnail zeigt die Dateien als Vorschaubilder an. Weitere Möglichkeiten werden in einer Liste zur Auswahl angezeigt. OpenOffice Folie 6 Access 2007 VBA 06.03.08 Seite 6

.InitialFileName... legt das Standardverzeichnis für das Dialogfenster fest.... nutzt als Standardeinstellung einen Dateinamen. In dem Dateinamen können folgende Platzhalter genutzt werden: "C:\chart?.txt". Das Fragezeichen ersetzt ein beliebiges Zeichen. "C:\cha*.txt". Das Sternchen ersetzt ein beliebige Anzahl von Zeichen. OpenOffice Folie 7 Access 2007 VBA 06.03.08 Seite 7

Dateien filtern Dim fd As Office.FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd.filters.clear Das Kombinationsfeld Dateityp am unteren Rand des Dialogfenster wird geleert..filters.add "PDF-Dokumente", "*.pdf; *.PDF", 1.Filters.Add "JPEG-Bild", "*.jpg, *.jpeg", 2.Filters.Add "Alle Dateien", "*.*", 3.FilterIndex = 1 End With Standardauswahl im Kombinationsfeld. Welche Dateitypen werden in dem Kombinationsfeld angezeigt? Der Liste Dateityp werden die verschiedenen Elemente hinzugefügt. OpenOffice Folie 8 Access 2007 VBA 06.03.08 Seite 8

Dialogbox anzeigen Dim fd As Office.FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd If.Show = True Then Mit Hilfe der Methode Show wird das Dialogfenster angezeigt. Wenn der OK-Button gedrückt ist, wird true zurückgeliefert.. End If End With For Each element In.SelectedItems choosedatei = element Exit Function Next Die Auflistung enthält alle, in dem Dialogfenster markierten Dateien. OpenOffice Folie 9 Access 2007 VBA 06.03.08 Seite 9

PDF-Dateien anzeigen Private Sub cmdopen_click() Dim pfad As String pfad = attachtext.value Call ShellExecute(Me.hWnd, "open", _ pfad, "", "", SW_NORMAL) End Sub ShellExceute... ist eine API (Application programming interface)-funktion.... entspricht einem Doppelklick auf eine Datei. Falls das Anwendungsprogamm Acrobat Reader oder Acrobat auf dem Zielrechner installiert ist, wird die Datei geöffnet. OpenOffice Folie 10 Access 2007 VBA 06.03.08 Seite 10

Windows API A(pplication) P(rogrammers) I(nterface)... ist eine Funktionsbibliothek, die aus vielen DLLs (Dynamic Link Libraries) besteht. DLLs... sind Schnittstellen zu Systemfunktionen von Windows.... können von mehreren Anwendungen gleichzeitig genutzt werden. Bevor Funktionen aus der Windows API genutzt werden können, muss die API-Funktion deklariert werden. Informationen zur Windows API befindet sich im Windows SDK (http://msdn.microsoft.com/en-us/library/aa383750.aspx) Eine Referenz der Funktionen finden Sie als Referenz auf der Webseite http://www.vbarchiv.net/api/index.php. Ein Tool zur Anzeige der Funktionen finden Sie unter http://www.activevb.de/rubriken/apiviewer/index-apiviewer.html OpenOffice Folie 11 Access 2007 VBA 06.03.08 Seite 11

Deklaration der API-Funktion Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" () As Long In Standardmodulen werden API-Funktionen immer als öffentliche Funktionen deklariert. In Klassenmodulen werden sie privat deklariert. Dem Schlüsselwort Declare Function folgt der Funktionsname. Der Name muss korrekt geschrieben werden. Es wird Gross- und Kleinschreibung beachtet. Dem Schlüsselwort Lib folgt der DLL-Name. Pfadangaben werden nicht benötigt. Wenn der Funktionsname von dem DLL-Namen abweicht, muss ein Alias- Name gesetzt werden. Ein Alias-Name wird auch genutzt, wenn der Name der Funktion in VBA vorhanden ist. OpenOffice Folie 12 Access 2007 VBA 06.03.08 Seite 12

Argumente der ShellExecute-Funktion Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( ByVal hwnd As Long,_ ByVal lpoperation As String, _ ByVal lpfile As String, _ ByVal lpparameters As String, _ ByVal lpdirectory As String, _ ByVal nshowcmd As Long) As Long OpenOffice Folie 13 Access 2007 VBA 06.03.08 Seite 13

Erläuterung ByVal hwnd As Long beschreibt das Handle des aufrufenden Fensters. Ein Handle ist ein positive Ganzzahl, die Windows für die Identifizierung eines Objekts nutzt. ByVal lpoperation As String beschreibt welche Operation ausgeführt werden soll. Beispielsweise "print" für den Ausdruck oder "open" für das Öffnen einer Datei in dem damit verbundenen Anwendungsprogramm. ByVal lpfile As String enthält den Verzeichnis- oder Dateinamen, welches zum Beispiel mit dem entsprechenden Anwendungsprogramm geöffnet werden soll. ByVal lpparameters As String kann optional Aufruf-Parameter für das Anwendungsprogramm enthalten. ByVal lpdirectory As String legt das Arbeitsverzeichnis fest. ByVal nshowcmd As Long legt mit Hilfe einer Konstanten das Verhalten des Anwendungsfensters fest. OpenOffice Folie 14 Access 2007 VBA 06.03.08 Seite 14

Konstanten für das Verhalten der Anwendung Public Const SW_HIDE = 0 Public Const SW_MAXIMIZE = 3 Public Const SW_MINIMIZE = 6 Public Const SW_NORMAL = 1 Public Const SW_RESTORE = 9 Public Const SW_SHOWMAXIMIZED = 3 Public Const SW_SHOWMINIMIZED = 2 Public Const SW_SHOWMINNOACTIVE = 7 Public Const SW_SHOWNOACTIVATE = 4 OpenOffice Folie 15 Access 2007 VBA 06.03.08 Seite 15

Rückgabewert untersuchen Private Sub cmdopen_click() Dim pfad As String Dim result As Long pfad = attachtext.value result = ShellExecute(Me.hWnd, "open", _ pfad, "", "", SW_NORMAL) Select Case result Case SE_ERR_NOASSOC MsgBox "Keine Verbindung zu einer Anwendung" Case SE_ERR_PNF MsgBox "Pfad wurde nicht gefunden"" Case SE_ERR_FNF MsgBox "Datei wurde nicht gefunden" End Select End Sub OpenOffice Folie 16 Access 2007 VBA 06.03.08 Seite 16

Hinweise Wenn kein Fehler auftritt, wird das Handle des geöffneten Anwendungsprogramms zurückgegeben. Wenn ein Wert von 0 zurückgeben wird, reichen die Systemressourcen zur Ausführung der API-Funktion nicht aus. Andere Rückgabewert beschreiben meist einen Fehler. OpenOffice Folie 17 Access 2007 VBA 06.03.08 Seite 17

Daten nach Excel transferien Sub exporttransfer() Dim strsql As String Dim qry As QueryDef Dim pfad As String End Sub Err.Clear On Error GoTo errmeldung strsql = "SELECT umsatz, quartal, jahr FROM tblbezirkumsatz" strsql = strsql & " WHERE bezirk = " & lstbezirk.value Set qry = CurrentDb.CreateQueryDef("BezirkUmsatz", strsql) pfad = Application.CurrentProject.Path & "\umsatz.xls" DoCmd.TransferSpreadsheet acexport, acspreadsheettypeexcel9,_ "BezirkUmsatz", pfad, True OpenOffice Folie 18 Access 2007 VBA 06.03.08 Seite 18

Abfrage erzeugen strsql = "SELECT umdatz, quartal, jahr FROM tblbezirkumsatz" strsql = strsql & " WHERE bezirk = " & lstbezirk.value Set qry = CurrentDb.CreateQueryDef("BezirkUmsatz", strsql) Mit Hilfe von CreateQueryDefs wird eine Abfrage in der aktuellen Datenbank erzeugt. Als erster Parameter wird der Methode eine Bezeichnung übergeben. Unter diesen Namen wird die Abfrage im Navigationsfenster angezeigt. Als zweiter Parameter wird eine SQL-Anweisung übergeben. Falls die Abfrage vorhanden ist, wird die Fehlernummer 3012 gesendet. Der Fehler kann folgendermaßen behoben werden: Die Abfrage mit Hilfe der Anweisung DoCmd.DeleteObject acquery, "BezirkUmsatz" gelöscht. Mit Hilfe von CurrentDb.QueryDefs("BezirkUmsatz").SQL wird die Datenquelle der Abfrage an die Auswahl des Listenfeldes angepasst werden. OpenOffice Folie 19 Access 2007 VBA 06.03.08 Seite 19

Daten transferieren DoCmd.TransferSpreadsheet acexport, _ acspreadsheettypeexcel9,_ Wie werden die Daten transferiert. Hier werden die Daten exportiert. In welches Format werden die Daten transferiert? "BezirkUmsatz", pfad, True Spaltenüberschriften der Abfrage werden übernommen. Welche Daten sollen wohin transferiert werden? OpenOffice Folie 20 Access 2007 VBA 06.03.08 Seite 20

Excel öffnen Dim xlapp As Excel.Application Set xlapp = CreateObject("Excel.Application") xlapp.visible = True xlapp.quit Set xlapp = Nothing Voraussetzung: Excel ist auf dem Zielrechner vorhanden. Mit Hilfe von Extras Verweise ist der Verweis Microsoft Excel 12.0 Object Library aktiviert. Mit Hilfe von CreateObject wird ein Verweis auf eine Excel-Anwendung erzeugt. Mit Hilfe der Eigenschaft.Visible wird die Anwendung eingeblendet. Mit Hilfe der Methode.Quit wird die Anwendung geschlossen. OpenOffice Folie 21 Access 2007 VBA 06.03.08 Seite 21

Neue Arbeitsmappe anlegen Dim xlworkbook As Excel.Workbook pfad = Application.CurrentProject.Path & "\umsatz.xlsx" Set xlworkbook = xlapp.workbooks.add xlworkbook.saveas pfad Set xlworkbook = Nothing Workbooks enthält alle Arbeitsmappen einer geöffneten Excel- Anwendung. Mit Hilfe von.add wird der Auflistung eine neue Arbeitsmappe hinzugefügt. Mit Hilfe von.saveas wird die Arbeitsmappe unter einem Namen in einem bestimmten Verzeichnis gespeichert. Mit Hilfe von.save werden Änderungen an der aktiven Arbeitsmappe gespeichert. OpenOffice Folie 22 Access 2007 VBA 06.03.08 Seite 22

Arbeitsmappe öffnen Dim xlworkbook As Excel.Workbook pfad = Application.CurrentProject.Path & "\umsatz.xlsx" If Dir(pfad) <> "" Then Set xlworkbook = xlapp.workbooks.open(pfad) End If Mit Hilfe der Funktion Dir() wird überprüft, ob eine Datei in dem angegebenen Verzeichnis vorhanden ist. Falls die Datei vorhanden ist, wird die Bezeichnung zurückgeliefert, andernfalls ein leerer String. xlapp.workbooks.open(pfad) öffnet die Excel-Datei und fügt sie der Auflistung hinzu. OpenOffice Folie 23 Access 2007 VBA 06.03.08 Seite 23

Arbeitsblätter Dim xlsheet As Excel.Worksheet Set xlsheet = xlworkbook.sheets(1) xlsheet.name = strsheetname Worksheet bezeichnet ein Arbeitsblatt in einer Excel-Datei (Arbeitsmappe). Die Auflistung.Sheets enthält alle in einer Arbeitsmappe vorhandenen Arbeitsblätter..Name hat als Wert die Bezeichnung des Arbeitsblattes. Standardmäßig hat ein Arbeitsblatt den Namen Tabelle und eine Nummer von 1 bis n. Jeder Name beschreibt eindeutig ein Arbeitsblatt. Jede Arbeitsmappe hat mindestens ein Arbeitsblatt. OpenOffice Folie 24 Access 2007 VBA 06.03.08 Seite 24

Arbeitsblätter hinzufügen With xlworkbook Set xlsheet01 =.Sheets.Add Set xlsheet02 =.Sheets.Add(Before:=.Worksheets(.Worksheets.Count)) Set xlsheet03 =.Sheets.Add(After:=.Worksheets("Tabelle1"))) End With Mit Hilfe von.add wird ein neues Arbeitsblatt hinter dem aktiven Arbeitsblatt eingefügt. Mit Hilfe dem Parameter Before kann ein Arbeitsblatt vor einem anderen Blatt eingefügt werden. Hier wird das Arbeitsblatt vor dem letzten Arbeitsblatt eingefügt. Mit Hilfe dem Parameter After kann ein Arbeitsblatt nach einem anderen Blatt eingefügt werden. Hier wird das Arbeitsblatt nach dem Arbeitsblatt Tabelle1 eingefügt. OpenOffice Folie 25 Access 2007 VBA 06.03.08 Seite 25

Daten einfügen xlsheet.cells.copyfromrecordset rs xlsheet.range("a2").copyfromrecordset rs Die Daten des Recordsets werden in ein Arbeitsblatt von Excel kopiert. Cells beschreibt immer eine bestimmte Zelle. Wenn keine Angaben zur Spalte und Zeile gemacht wird, wird Cells(1, 1); A1 als Ausgangspunkt angenommen. Die Daten werden, beginnend in der linken, oberen Ecke, eingefügt. Range kann eine Zelle, ein Zellbereich, eine Spalte oder eine Zeile sein. In diesem Beispiel wird eine Zelle angegeben, ab der die Daten eingefügt werden sollen. Mit Hilfe von Range(Cells(Zeile, Spalte), Cells(Zeile, Spalte) wird ein Zellbereich festgelegt. Zuerst wird die linke, obere Ecke des Zellbereichs definiert und anschließend die rechte, untere Ecke. OpenOffice Folie 26 Access 2007 VBA 06.03.08 Seite 26

Kopfzeilen einfügen For count = 0 To rs.fields.count - 1 xlsheet.cells(1, count + 1).Value = rs.fields(count).name Next count Cells(zeile, spalte) identifiziert eindeutig eine Zelle..Value enthält den Wert der Zelle. In diese Zelle wird die Spaltenüberschrift aus dem Recordset eingetragen. OpenOffice Folie 27 Access 2007 VBA 06.03.08 Seite 27

Formatierungen Schriften: xlsheet.range("a2").font.name legt die Schriftart fest. xlsheet.range("a2").font.size legt die Größe fest. Fettschrift etc. kann mit Hilfe von boolschen Werten gesetzt werden. Rahmen: xlsheet.range("a2").borders(typ) legt fest, welcher Rahmen formatiert werden soll..borders(xledgeright) formatiert den rechten Rahmen..LineStyle,.Weight und.color legt das Aussehen des Rahmens fest..numberformat formatiert Zahlen in einer bestimmten Art und Weise..NumberFormat = "yyyy" interpretiert die Zahlen als vierstellige Jahreszahl..NumberFormat = "@" interpretiert die Zahlen als Text..NumberFormat = "#.##0,00 " interpretiert die Zahlen als Währung. In diesem Fall wird das Euro-Zeichen genutzt. Die Zahl besteht aus mindestens einer Ziffer vor dem Komma und zwei Nachkommastellen. Ein Tausender- Zeichen wird angegeben. OpenOffice Folie 28 Access 2007 VBA 06.03.08 Seite 28

Word öffnen Dim wdapp As Word.Application Set wdapp = CreateObject("Word.Application") wdapp.visible = True wdapp.quit Set wdapp = Nothing Voraussetzung: Word ist auf dem Zielrechner vorhanden. Mit Hilfe von Extras Verweise ist der Verweis Microsoft Word 12.0 Object Library aktiviert. Mit Hilfe von CreateObject wird ein Verweis auf die Word-Anwendung erzeugt. Die Anwendung wird versteckt geöffnet. Mit Hilfe der Eigenschaft.Visible wird die Anwendung eingeblendet. Mit Hilfe der Methode.Quit wird die Anwendung geschlossen. OpenOffice Folie 29 Access 2007 VBA 06.03.08 Seite 29

Neue Dokument anlegen Dim wddoc As Word.Document Set wddoc = wdapp.documents.add(template:=pathtemplate, _ Visible:=True) wdapp.visible = True wddoc.close Set wddoc = Nothing Documents enthält alle geöffneten Dokumente und Vorlagen in Word. Mit Hilfe von Documents.Add wird ein neues Dokument der Auflistung hinzugefügt. Standardmäßig wird die Vorlage (Template) Normal genutzt. Mit Hilfe des Parameters Visible wird das neue Dokument in angezeigt. Falls eine Vorlage gespeichert werden soll, wird der Parameter NewTemplate auf True gesetzt..close schließt das Dokument. OpenOffice Folie 30 Access 2007 VBA 06.03.08 Seite 30

Neue Dokument anlegen Dim wddoc As Word.Document Set wddoc = wdapp.documents.add(template:=pathtemplate, _ Visible:=True) wddoc.saveas FileName:=pathBrief wddoc.close Set wddoc = Nothing.SaveAs speichert ein Word-Dokument unter einem neuen Namen. Es können Angaben zum Format des Textes gemacht werden. Zum Beispiel FileFormat:=wdFormatRTF speichert den Text im RTF-Format. Das Dokument kann mit einem Passwort zum Lesen oder Ändern des Dokuments versehen werden..save speichert die Änderungen eines Dokuments. OpenOffice Folie 31 Access 2007 VBA 06.03.08 Seite 31

Mit Textmarken arbeiten Dim wdrange As Word.Range If wddoc.bookmarks.exists("markadress") Then Set wdrange = wddoc.bookmarks("markadress").range wdrange.text = "RRZN" & vbcrlf & "Schloßwender Str. 5" End If Die Auflistung Bookmarks enthält alle Textmarken, die in einem Word- Dokument existieren. Die Methode.Exists liefert True, wenn die angegebene Textmarke existiert. OpenOffice Folie 32 Access 2007 VBA 06.03.08 Seite 32

Selection oder Range.Selection... ist immer nur einmal in einem Word-Dokument vorhanden.... repräsentiert die aktuelle Markierung von Text. Falls kein Text oder Objekt ausgewählt ist, bezieht sich.selection auf die Einfügemarke..Range... stellt immer den Bereich dar, der bearbeitet werden soll.... kann beliebig oft in einem Word-Dokument vorkommen. Die Größe wird durch eine Start- und Endposition festgelegt.... kann nur durch die Einfügemarke definiert werden. Mit Hilfe der Eigenschaft.Text... kann vorhandener Text innerhalb des gewählten Bereichs ersetzt werden.... Text an einer bestimmten Position eingefügt werden. OpenOffice Folie 33 Access 2007 VBA 06.03.08 Seite 33