vba (visual basic for application) - luis.uni- · pdf filebernd held: das access vba-codebook...

60
Regionales Rechenzentrum für Niedersachsen VBA (Visual Basic for Application) Einführung

Upload: trandieu

Post on 05-Feb-2018

226 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

Regionales Rechenzentrum für Niedersachsen

VBA (Visual Basic for Application)

Einführung

Page 2: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 2Access 2007 – VBA | 23.06.08 | Seite 2

Regionales Rechenzentrum für Niedersachsen

Bücher

Doberenz & Gewinnus: Microsoft Office Access 2007 ProgrammierungMicrosoft Press

Doberenz & Gewinnus: Microsoft Office Access - Programmier-RezepteMicrosoft Press

André Minhorst: Access 2007 – Grundlagen und Praxiswissen für EntwicklerAddision-Wesleyim Web: http://www.access-entwicklerbuch.de/2007/

Bernd Held: Das Access VBA-CodebookAddision-Wesley

Hennig, Cooper, Griffith, Stein: Access 2007 Programmers ReferenceWrox

Helena Feddema: Access 2007 VBA BibleJon Wiley & Sons

Page 3: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 3Access 2007 – VBA | 23.06.08 | Seite 3

Regionales Rechenzentrum für Niedersachsen

Informationen im Internet

... von Microsoft: http://65.55.11.235/en-us/library/bb979619.aspx http://office.microsoft.com/de-ch/access/CH100621381031.aspx

FAQ: http://www.donkarl.com/ http://www.access-o-mania.de/index.php?ind=tipps&op=section_view&idev=2 http://www.mvps.org/access/index.html

Aufgabensammlung, Tutorial: http://www.achim-roehl.de/ACCESS/access.htm http://www.functionx.com/vbaccess/index.htm http://www.kulpa-online.com/tutorial-vba-1.html

Allgemeine Einführung: http://cis.cs.tu-berlin.de/Lehre/SS-01/Sonstiges/dbpra-

pages/ausarbeitungen/vba/a9_vba.pdf

Page 4: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 4Access 2007 – VBA | 23.06.08 | Seite 4

Regionales Rechenzentrum für Niedersachsen

Microsoft Access

... ist Bestandteil der Microsoft Office-Familie. ... ist eine relationale Datenbank. ... ist ein Datenbank-Management-System.

... verwaltet große Mengen von Daten, die in Tabellen gespeichert werden. ... kann Informationen aus verschiedenen Tabellen über einen Schlüssel

miteinander verknüpfen. ... stellt Werkzeuge zur Auswertung, Analyse, Bearbeitung und Präsentation

von Daten bereit. ... kann über das MSDN-AA-Programm bezogen werden.

Page 5: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 5Access 2007 – VBA | 23.06.08 | Seite 5

Regionales Rechenzentrum für Niedersachsen

Nutzung eines Datenbank-Management-Systems

Datenbank-Management-

System

Datenbank

Datenbank

Datenbank

Programm

Benutzer

Web

Page 6: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 6Access 2007 – VBA | 23.06.08 | Seite 6

Regionales Rechenzentrum für Niedersachsen

Aufgaben eines Datenbank-Managementsystem

Schnittstelle zwischen Mensch und Datenbank. Verwaltung großer Mengen von Daten, die in Tabellen gespeichert werden. Erstellung von Abfragen mit Hilfe der Sprache SQL zur Filterung und Verknüpfung

von Daten in verschiedenen Tabellen. Bereitstellung von Werkzeuge zur Auswertung, Analyse, Bearbeitung und

Präsentation von Daten. Automatisierung von Arbeitsschritten mit Hilfe von Makros. Erstellung von individuellen Datenbanken mit Hilfe der VBA-Programmierung.

Page 7: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 7Access 2007 – VBA | 23.06.08 | Seite 7

Regionales Rechenzentrum für Niedersachsen

Eine Datenbank

... ist eine Sammlung von Daten zu einem bestimmten Thema oder einen bestimmten Zweck.

... ermöglicht eine strukturierte Ablage von Informationen. ... kann Arbeitsabläufe eines Unternehmens abbilden. Beispiele:

Adressverwaltung. Sammlung aller Informationen zu CDs oder Büchern. Ablage von Informationen für die Abwicklung von Bestellungen. Abbildung eines Warenlagers.

Page 8: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 8Access 2007 – VBA | 23.06.08 | Seite 8

Regionales Rechenzentrum für Niedersachsen

Relationale Datenbanken

... sind das am weitesten verbreitete Modell. Merkmale:

Die Daten werden in Tabellen abgelegt. Jede Information, die in einer Tabelle abgelegt wird, besitzt den gleichen

Aufbau. Daten in verschiedenen Tabellen können eine Beziehung mit Hilfe von

Schlüsselwerten aufbauen.

Page 9: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 9Access 2007 – VBA | 23.06.08 | Seite 9

Regionales Rechenzentrum für Niedersachsen

Aufbau einer Tabelle (Relation)

IAmtNr Vorname Nachname Straße PLZ Wohnort١٢٣ Heinz Peters Friesenstr. ٤ xxxxx Hannover٤٥٦ Sonja Müller Eichenstr. ٥ xxxxx Hannover٧٥٣ Marlis Schulze Lerchenstr. ٢ xxxxx Mellendorf٧٨٩ Scholz xxxxx Hildesheim

Feldnamen (Attribut)

Datensatz (Tupel)

Datenfeld(Attributwert)

Page 10: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 10Access 2007 – VBA | 23.06.08 | Seite 10

Regionales Rechenzentrum für Niedersachsen

Verknüpfung von Tabellen

Vorname Nachname Straße PLZ Wohnort123 Heinz Peters Hannover456 Müller Hannover753789 Hildesheim

IAmtNrFriesenstr. 4 xxxxx

Sonja Eichenstr. 5 xxxxxMarlis Schulze Lerchenstr. 2 xxxxx Mellendorf

Scholz xxxxx

Student Algorithmen 1 Algebra 1123 1 2 1456 3 4789 2

Theoretische Inf.

Der Student kann eindeutig über dasSchlüsselfeld identifiziert werden.

Der Primärschlüssel wird ...

... in dieser Tabelle als Fremdschlüssel genutzt.

Page 11: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 11Access 2007 – VBA | 23.06.08 | Seite 11

Regionales Rechenzentrum für Niedersachsen

Detailtabelle

Master- und Detailtabellen

Vorname Nachname Straße PLZ Wohnort123 Heinz Peters Hannover456 Müller Hannover753789 Hildesheim

IAmtNrFriesenstr. 4 xxxxx

Sonja Eichenstr. 5 xxxxxMarlis Schulze Lerchenstr. 2 xxxxx Mellendorf

Scholz xxxxx

Student Algorithmen 1 Theoretische Inf. Algebra 1123 1 2 1456 3 4789 2

Mastertabelle

Daten werden in einer anderen Tabelle spezifiziert.

Page 12: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 12Access 2007 – VBA | 23.06.08 | Seite 12

Regionales Rechenzentrum für Niedersachsen

Master- und Detailtabelle

Die Mastertabelle ... enthält alle Hauptdatensätze. ... besitzt einen Primärschlüssel, der die Datensätze eindeutig identifiziert. ... stehen in der Hierarchie oben. Unterhalb von ihnen befinden sich andere

Tabellen. Die Detailtabelle

... beschreibt Besonderheiten oder Eigenschaften eines Elements. ... bildet eine Beziehung zwischen Objektbeschreibungen ab. ... enthalten Fremdschlüssel, die aus einer anderen Tabelle kommen. ... enthalten aber selber ein Primärschlüssel, die die Datensätze eindeutig

identifiziert. ... sind in der Hierarchie anderen Tabellen untergeordnet.

Page 13: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 13Access 2007 – VBA | 23.06.08 | Seite 13

Regionales Rechenzentrum für Niedersachsen

Access

... besteht aus der relationalen Datenbank, die aus den verschiedenen Tabellen besteht.

... bietet Werkzeuge ... wie Abfragen, um Daten aus verschiedenen Tabellen zusammenzufassen. ... wie Formulare, um Daten einzugeben. ... wie Berichte, um Daten auszudrucken.

Page 14: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 14Access 2007 – VBA | 23.06.08 | Seite 14

Regionales Rechenzentrum für Niedersachsen

Abfragen

... basieren auf ein oder mehrere Tabellen. ... können auf dem Ergebnis einer anderen Abfrage basieren. ... geben auf konkrete Fragen eine Antwort. Zum Beispiel:

Welche Waren sind lieferbar? Welche Waren werden von Lieferant XYZ im nächsten Monat angeliefert? Welcher Student studiert welche Studienfächer?

... stellen eine bestimmte Sicht auf die Daten dar. Zum Beispiel: Im wöchentlichen Rhythmus ruft der Lagerist eine Abfrage auf, die ihm alle

Waren anzeigt, die bestellt werden müssen. Die Geschäftsleitung bekommt Informationen geliefert, wie oft welches Produkt

aus dem Lager bestellt wurde. ... werten immer die aktuellen Daten aus. Das Ergebnis einer Abfrage wird immer in einer temporäre Tabelle

dargestellt. Diese temporäre Tabelle wird als Dynaset bezeichnet. Das Dynaset bildet einen Ausschnitt der Daten ab.

... werden intern als SQL-Anweisungen gespeichert.

Page 15: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 15Access 2007 – VBA | 23.06.08 | Seite 15

Regionales Rechenzentrum für Niedersachsen

Beispiel

ID Artikel Beschreibung Verpackung1 1 schwarz 5 Stück2 1 blau 1 Stück3 2 100 Stück4 4 aus Altpapier 100 Blatt

Read / Write

ID Artikelart12 CD3 Kopierpapier4 Druckpapier

Druckerpatrone

SELECTArtikelart, Beschreibung, VerpackungFROM ...INNER JOIN ...ON Artikel = ID WHEREArtikelart LIKE "Druckerpatrone"

Artikel Beschreibung Verpackungschwarz 5 Stück

blau 1 StückDruckerpatroneDruckerpatrone

Page 16: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 16Access 2007 – VBA | 23.06.08 | Seite 16

Regionales Rechenzentrum für Niedersachsen

Formulare

... haben folgende Aufgaben: Informationen zu einem bestimmten Thema zu sammeln. Datensätze werden in einer standardisierten Form erfasst und verändert. Informationen nach bestimmten Kriterien filtern und anzeigen. Bereitstellung einer Eingabemaske für die Erfassung von Daten in

Abhängigkeit des Benutzers und der Aufgabe. ... bestehen aus Textfeldern, Einfach- und Mehrfach-Auswahlfeldern sowie

Schaltflächen. ... nutzen als Grundlage immer eine Tabelle oder Abfrage. ... können mit Hilfe von VBA zur Laufzeit manipuliert werden.

Page 17: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 17Access 2007 – VBA | 23.06.08 | Seite 17

Regionales Rechenzentrum für Niedersachsen

Berichte

... haben folgende Aufgaben: Ausdruck von Informationen in Listenform. Präsentation von Daten mit Hilfe von Diagrammen etc. Serien- und Etikettendruck.

... bestehen aus Bezeichnungsfeldern und Textfeldern. Die dargestellten Daten

... können vom Nutzer nicht verändert werden. ... können berechnet werden. ... können nach bestimmten Kriterien sortiert und gruppiert werden.

... nutzen als Grundlage immer eine Tabelle oder Abfrage. ... mit Hilfe von VBA automatisiert geöffnet und ausgedruckt werden.

Page 18: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 18Access 2007 – VBA | 23.06.08 | Seite 18

Regionales Rechenzentrum für Niedersachsen

VBA (Visual Basic for Application)

... ist speziell für die Programmierung in Office-Anwendungen (Word, Access, PowerPoint, Outlook) entwickelt wurden.

... ist an Visual Basic angelehnt. Merkmale:

VBA-Programme laufen nur innerhalb einer Office-Anwendung. In welcher Office-Anwendung der Code läuft, ist dem Programm unbekannt. Die Anwendungen werden als Objektmodelle implementiert. Strukturierte, prozedurale Programmierung.

Page 19: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 19Access 2007 – VBA | 23.06.08 | Seite 19

Regionales Rechenzentrum für Niedersachsen

Die Programmierung wird genutzt, um

... Formulare, Berichte und Steuerelemente zu gestalten. Beispiele: Fehlerhafte Eingaben werden rot markiert. In Abhängigkeit einer Auswahl werden Steuerelemente ein- oder ausgeblendet.

... auf Benutzeraktionen zu reagieren. Beispiele Der Benutzer klickt auf eine Schaltfläche. Es wird ein Ereignis (Aktion)

"Mausklick" ausgelöst und der passende Bericht wird geöffnet. Der Benutzer gibt über die Tastatur ein Zeichen ein. Sobald die Taste gedrückt

wird, wird das Zeichen auf Korrektheit überprüft. Daten

... für die Anzeige in Formularen oder Berichten zu filtern. ... auf Plausibilität zu prüfen. Falls ein Fehler auftritt, wird eine Meldung an den

Benutzer ausgegeben. ... in Steuerelementen neu zu berechnen oder automatisch zu ergänzen. ... automatisch zu aktualisieren oder zu speichern.

... um andere Objektmodelle (Word etc.) zu integrieren. ... um Berechnungen mit Hilfe von vordefinierten Funktionen auszuführen.

Page 20: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 20Access 2007 – VBA | 23.06.08 | Seite 20

Regionales Rechenzentrum für Niedersachsen

VBA-Programme erstellen

Programm in VBA werden in einer Entwicklungsumgebung geschrieben, die jede Office-Anwendung bereitstellt.

Die Entwicklungsumgebung ... ist ein eigenständiges Programm. Der Titel wird in der Taskleiste von

Windows angezeigt. ... kann aber nur über eine Office-Anwendung geöffnet werden. .. besteht aus vielen kleinen Fenstern mit den verschiedensten Aufgaben.

Page 21: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 21Access 2007 – VBA | 23.06.08 | Seite 21

Regionales Rechenzentrum für Niedersachsen

VBA-Entwicklungsumgebung öffnen

Ribbon Datenbanktools, Kategorie Makro. Klick auf das Icon Visual Basic.

Ribbon Erstellen, Kategorie Andere. Klicke auf das Icon Modul oder Klassenmodul. Es wird die Entwicklungsumgebung geöffnet und ein neues Modul angelegt und angezeigt.

... über ein Formular oder Bericht: Voraussetzung: Das Formular oder Bericht werden in der Entwurfsansicht

dargestellt. Das Formular oder Bericht selber wird ausgewählt. Andere Möglichkeit:

Ein Steuerelement auf dem Formular oder Bericht werden ausgewählt. Im Eigenschaftenfenster wird die Registerkarte Ereignis aktiviert. Dort wird ein Ereignis ausgewählt und der Wert Ereignisprozedur aus dem

Kombinationsfeld ausgewählt. Die Entwicklungsumgebung sowie die ausgewählte Ereignisprozedur

werden angezeigt.

Page 22: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 22Access 2007 – VBA | 23.06.08 | Seite 22

Regionales Rechenzentrum für Niedersachsen

VBA-Entwicklungsumgebung schließen

Schließen-Schaltfläche in der Titelleiste. Datei – Schließen und zurück zu Microsoft Office [Anwendung] oder

<ALT>-<Q> Ansicht - Microsoft Office [Anwendung] oder <ALT>-<F11>

verschiebt nur den VBA-Editor in den Hintergrund und holt die dazugehörige Office-Anwendung in den Vordergrund.

Page 23: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 23Access 2007 – VBA | 23.06.08 | Seite 23

Regionales Rechenzentrum für Niedersachsen

Aufbau des Editors

Menü-leiste

Titelleiste

Symbolleiste

Codefenster

Projekt-Explorer

Eigen-schaften-Fenster

Page 24: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 24Access 2007 – VBA | 23.06.08 | Seite 24

Regionales Rechenzentrum für Niedersachsen

Titelleiste

Mit Hilfe des Icons am rechten Rand wird das Systemmenü geöffnet. Das Systemmenü enthält Befehle zum Vergrößern und Verkleinern sowie Schließen des Editors.

Als Titel wird der Name der Datenbank und in eckigen Klammern der Name des sichtbaren Codes angezeigt.

Am linken Rand befinden sich die Schaltflächen zum Minimieren, Verkleinern und Schließen des Editors.

Page 25: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 25Access 2007 – VBA | 23.06.08 | Seite 25

Regionales Rechenzentrum für Niedersachsen

Menüleiste

Das Icon am rechten Rand enthält die gleichen Befehle wie das Systemmenü in der Titelleiste.

Datei enthält Befehle zum Speichern, Exportieren usw. von Code. Bearbeiten enthält Befehle zum Durchsuchen, Einrücken usw. von Code

sowie Hilfestellungen für einzelne Codeelemente. Ansicht enthält Befehle zum Anzeigen von verschiedenen Elementen des

Editors. Einfügen erzeugt neue Module oder Prozeduren. Debuggen kompiliert den Code und bietet Hilfen, um Fehler zu finden. Ausführen startet das Programm. Extras enthält Verweise und Optionen des VBA-Editors sowie der

Datenbank. Add-Ins verbindet vorgefertigte Programme mit dem eigenen Code. Fenster richtet die Elemente innerhalb des Editors aus.

Page 26: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 26Access 2007 – VBA | 23.06.08 | Seite 26

Regionales Rechenzentrum für Niedersachsen

Symbolleiste

Wichtige Befehle werden in Symbolform dargestellt.

Voreinstellungen enthält die wichtigsten Befehle wie Speichern etc.

Es können die Symbolleisten Debuggen und Bearbeiten eingeblendet werden.

UserForm für die Entwicklung von Formularen wird in Access nicht benötigt.

Page 27: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 27Access 2007 – VBA | 23.06.08 | Seite 27

Regionales Rechenzentrum für Niedersachsen

Projekt-Explorer

... gibt einen Überblick über die programmierten Komponenten einer Datenbank.

... ist die Schaltzentrale eines VBA-Projekts. ... erleichtert die Navigation innerhalb eines Projekts. ... ist frei platzierbar. ... enthält alle zu dem Projekt gehörenden Elemente, die Programmcode

enthalten.

Page 28: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 28Access 2007 – VBA | 23.06.08 | Seite 28

Regionales Rechenzentrum für Niedersachsen

Aufbau

Welches Datenbank-Projekt wird abgebildet?

Anzeige aller Elemente oder sortiert nach Kategorien mit Hilfe von Ordnern.

Anzeige aller Module eines Projekts.

Code passend zum Element anzeigen.

Objekt (Formular etc.) in Access passend zur Auswahl anzeigen.

Page 29: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 29Access 2007 – VBA | 23.06.08 | Seite 29

Regionales Rechenzentrum für Niedersachsen

Anzeige der Elemente

Die Elemente werden in einer hierarchischen Struktur abgelegt. Als Wurzel wird immer der Name der Datenbank angezeigt. Die verschiedenen Arten von Modulen bilden die Ordner des Windows

Explorers. Die Module selber entsprechen den Dateien in einem Ordner.

Page 30: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 30Access 2007 – VBA | 23.06.08 | Seite 30

Regionales Rechenzentrum für Niedersachsen

Projekte in VBA

... sind der äußere Rahmen für ein VBA-Programm. ... werden automatisch von einer Office-Anwendung angelegt. ... können nicht vom Entwickler angelegt werden. ... werden gemeinsam mit der Datenbank in einer Datei gespeichert.

Page 31: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 31Access 2007 – VBA | 23.06.08 | Seite 31

Regionales Rechenzentrum für Niedersachsen

Standardmodule

... enthalten Code, der nicht an ein Formular, Bericht oder Steuerelement gebunden ist.

... sind nicht an ein bestimmtes Objekt gebunden. ... enthalten häufig Code, der innerhalb des

gesamten Projekts von vielen Elementen genutzt wird.

... bekommen die Dateiendung ".bas". ... erstellen:

Menü Einfügen – Modul im VBA-Editor. Ribbon Erstellen; Kategorie Andere, Symbol Neues

Objekt: Modul in Access.

Page 32: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 32Access 2007 – VBA | 23.06.08 | Seite 32

Regionales Rechenzentrum für Niedersachsen

Klassenmodule

... fassen Objekte in Kategorien zusammen. ... fassen Objekte mit den gleichen Eigenschaften

und Methoden zusammen. ... stellen Baupläne für konkrete Objekte dar. ... bieten eine Schablone für bestimmte Kategorien

von Objekten. ... können mit einen Formular, Bericht oder

Steuerelement automatisch erstellt werden. ... bekommen die Dateiendung ".cls".

Page 33: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 33Access 2007 – VBA | 23.06.08 | Seite 33

Regionales Rechenzentrum für Niedersachsen

Klassenmodule erstellen

Benutzerdefinierte Klassenmodulen: Menü Einfügen – Klassenmodul im VBA-Editor. Ribbon Erstellen; Kategorie Andere, Symbol Neues Objekt: Klassenmodul in

Access. Der VBA-Editor öffnet sich automatisch. Klassenmodule in Abhängigkeit eines Formulars etc.:

Das Formular oder Bericht ist in der Entwurfsansicht geöffnet. Ein Formular, Bericht oder Steuerelement wird ausgewählt und das

Eigenschaftenfenster geöffnet. Die Registerkarte Ereignis wird aktiviert. Klicken Sie in das Feld eines bestimmten Ereignisses und wählen den Eintrag

Ereignisprozedur aus.

Page 34: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 34Access 2007 – VBA | 23.06.08 | Seite 34

Regionales Rechenzentrum für Niedersachsen

Eigenschaften-Fenster

... zeigt die Merkmale des aktiven Moduls an. Module fassen Code zu einem bestimmten Thema oder Objekt zusammen.

Der Name des Moduls wird immer angezeigt. Die Darstellung der Eigenschaften ist abhängig vom ausgewählten

Element im Projekt-Explorer.

Page 35: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 35Access 2007 – VBA | 23.06.08 | Seite 35

Regionales Rechenzentrum für Niedersachsen

Code-Fenster

... zeigt ein Programm in VBA an. ... zeigt Befehle und Anweisungen an, die eine bestimmte Aufgabe lösen. Jedes Modul wird in einem eigenen Code-Fenster geöffnet. Passend zum aktiven Element im Projekt-Explorer wird der Code

angezeigt. ... ist vergleichbar mit einem Editor. Der Code wird mit Hilfe der Tastatur

eingegeben und bearbeitet.

Page 36: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 36Access 2007 – VBA | 23.06.08 | Seite 36

Regionales Rechenzentrum für Niedersachsen

Anweisungen, Prozeduren und Module

Pro Zeile steht eine Anweisung. In diesem Beispiel wird der Focus auf ein bestimmtes Element gesetzt. Pro Zeile wird eine bestimmte Aktion beschrieben.

Die Anweisungen werden in einer Prozedur zusammengefasst. Jede Prozedur löst eine bestimmte Aufgabe. Hier wird auf das Laden eines Formulars reagiert.

Die Prozeduren werden zu Modulen zusammengefasst. Alle gemeinsam lösen sie ein größeres Problem.

Page 37: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | | Folie 37Access 2007 – VBA | 23.06.08 | Seite 37

Regionales Rechenzentrum für Niedersachsen

Programme und deren Sprache

Ein Computerprogramm setzt Anweisungen in eine Form um, die von einem Computer verarbeitet werden können.

Der Begriff Programm ... wird für einen Text genutzt, der in einer Programmiersprache abgefasst ist.

Dieser Text wird als Quelltext bezeichnet und kann von einem Menschen gelesen werden. Dieser Text befindet sich im Code-Fenster

... wird für den von einem Computer ausführbaren Maschinencode verwendet. Um aus dem Quelltext einen Maschinencode zu genieren, muss dieser übersetzt (kompiliert) werden. Der Maschinencode selber ist für einen Menschen nicht lesbar.

Eine Programmiersprache ... besteht aus Wörtern, Zeichen etc. ... hat wie jede menschliche Sprache eine Syntax.

In diesem Kurs werden Computerprogramme mit Hilfe der Sprache VBA geschrieben.

Page 38: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | | Folie 38Access 2007 – VBA | 23.06.08 | Seite 38

Regionales Rechenzentrum für Niedersachsen

Strukturierte und prozedurale Programmierung

Strukturierte Programmierung: Verzicht auf goto-Anweisungen. Mit Hilfe von Kontrollstrukturen (Schleifen etc.) wird der Ablauf eines

Programms in Abhängigkeit einer Bedingung verändert werden. Das Programm hat einen definierten Anfang und ein definiertes Ende.

Prozedurale Programmierung: Programme werden in Teilaufgaben zerlegt. Die Teilaufgaben werden mit Hilfe von Prozeduren oder Funktionen im

Programm abgebildet. Prozeduren fassen genauso wie Funktionen Anweisungen zusammen, die ein bestimmtes Problem lösen. Funktionen geben aber im Gegensatz zur Prozedur kein Wert an den Aufrufer zurück.

K01_programmierung.accdb:Die Anweisungen in dem Modul Grundrechenarten – Addition werden von oben nach unten abgearbeitet.Für jede Grundrechenart wird eine Prozedur angelegt..

Page 39: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | | Folie 39Access 2007 – VBA | 23.06.08 | Seite 39

Regionales Rechenzentrum für Niedersachsen

Modulare und objektorientierte Programmierung

Modulare Programmierung: Ein Programm wird in viele kleine Teilaufgaben zerlegt. Die verschiedenen

Teilaufgaben werden zu verschiedenen Oberbegriffen in Modulen zusammengefasst.

Jedes Modul und damit die darin abgebildete Aufgabe sind selbstständig. Das heißt, jedes Modul kann von verschiedenen Personen programmiert und getestet werden.

Die Module selber können wieder zu einem Projekt zusammengefasst werden. Voraussetzung: Die Schnittstellen für die Verknüpfung sind bekannt.

Objektorientierte Programmierung: ... nutzt Objekte, die über bestimmte Eigenschaften und Funktionen

verfügen.

K01_programmierung.accdb:Für jede Grundrechenart wird eine Prozedur angelegt..Die verschiedenen Arten werden in einem Modul zusammengefasst.Mit Hilfe des Buttons in einem Formular wird eine Addition ausgeführt.

Page 40: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 40Access 2007 – VBA | 23.06.08 | Seite 40

Regionales Rechenzentrum für Niedersachsen

Objekte

... stellen eine Abstraktion eines realen Gegenstandes dar. ... sind Formulare, Berichte oder Steuerelemente in einer Access-

Datenbank. ... haben bestimmte Eigenschaften (Attribute). Zum Beispiel die Breite und

Höhe eines Formulars. ... besitzen Methoden, die die Ausprägung der Eigenschaft verändern.

Zum Beispiel die Größe eines Formulars wird mit Hilfe von VBA verändert. ... können auf Benutzeraktionen reagieren. Zum Beispiel: Was passiert,

wenn die Größe eines Formulars verändert wird? ... mit den gleichen Eigenschaften und Methoden werden zu Klassen

zusammengefasst. Klassen sind Vorlagen für Objekte.

Page 41: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 41Access 2007 – VBA | 23.06.08 | Seite 41

Regionales Rechenzentrum für Niedersachsen

Objekte auswählen

Hier werden alle Objekte angezeigt. Falls der Code an ein Formular etc. gebunden ist, wird das Formular sowie

die darin enthalten Steuerelemente aufgelistet.Der Eintrag Allgemein listet alle Prozeduren auf, die

keinem Objekt zugeordnet werden können. Prozeduren teilen ein Modul in kleine Einheiten ein.

Page 42: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 42Access 2007 – VBA | 23.06.08 | Seite 42

Regionales Rechenzentrum für Niedersachsen

Prozeduren

... teilen ein Modul (Kapitel) in verschiedene Abschnitte ein. ... fassen Anweisungen zu einem Block zusammen, der eine bestimmte

Aufgabe löst. Die Anweisungen innerhalb der Prozedur werden zeilenweise abgearbeitet.

... sind eine Abfolge von VBA-Befehlen und -Anweisungen, die ein bestimmtes eng begrenztes Problem lösen.

... können einen Wert zurückgeben und werden dann als Funktionen bezeichnet.

... reagieren auf eine Benutzeraktion (Ereignis) und werden dann als Event-Handler (Ereignis-Prozedur) bezeichnet.

Page 43: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 43Access 2007 – VBA | 23.06.08 | Seite 43

Regionales Rechenzentrum für Niedersachsen

Prozeduren auswählen

In Abhängigkeit des gewählten Objekts werden hier die Prozeduren angezeigt. Falls als Objekt ein Formular oder

Steuerelement ausgewählt wurde, werden hier alle dazugehörigen Ereignisse angezeigt.

Der Eintrag Deklaration sammelt alle Definitionen, die nicht eindeutig einem bestimmten Objekt zugeordnet

werden können.

Page 44: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 44Access 2007 – VBA | 23.06.08 | Seite 44

Regionales Rechenzentrum für Niedersachsen

Anzeige der Prozeduren

Der Inhalt des gesamten Moduls wird in dem Code-Fenster angezeigt. Prozeduren und

Definitionen werden mit Hilfe einer Linie getrennt.

Es wird immer nur eine Prozedur angezeigt. Die

Prozeduren werden in Abhängigkeit des Objekts mit Hilfe des Kombinationsfeld am oberen, rechten Rand

ausgewählt.

Page 45: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 45Access 2007 – VBA | 23.06.08 | Seite 45

Regionales Rechenzentrum für Niedersachsen

Code in ein Standardmodul schreiben

Das Ribbon Erstellen liegt im Vordergrund und ist aktiv. In der Kategorie Andere wird auf das Symbol Neues Objekt: Modul

geklickt. Ändern Sie den Namen des Moduls über das Eigenschaftenfenster im

VBA-Editor. Setzen Sie die Einfügemarke in die erste freie Zeile und geben folgenden

Code ein:

Sub PfadErmitteln() Dim pfad As String pfad = Application.CurrentProject.PathEnd Sub

Page 46: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 46Access 2007 – VBA | 23.06.08 | Seite 46

Regionales Rechenzentrum für Niedersachsen

Reaktion auf ein Ereignis

Das Formular frmStart wird in der Entwurfsansicht geöffnet. Das Formular wird ausgewählt und das passende Eigenschaftenfenster

geöffnet. Die Registerkarte Ereignis wird aktiviert. Für das Ereignis Bei Laden wird

aus dem Kombinationsfeld der Eintrag Ereignisprozedur ausgewählt. Die Ereignis-Prozedur Private Sub Form_Load()wird automatisch

angelegt und in der Entwicklungsumgebung angezeigt. Setzen Sie die Einfügemarke zwischen die Zeilen Private Sub ... und End Sub, um den Code für die Ereignis-Prozedur einzugeben.

txtBenutzer.TextAlign = 1 txtBenutzer.Value = "Bestellung" txtPasswort.InputMask = "Password" txtPasswort.SetFocus

Page 47: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 47Access 2007 – VBA | 23.06.08 | Seite 47

Regionales Rechenzentrum für Niedersachsen

Code speichern

Mit Hilfe von Datei – [datenbank] speichern wird der Code in der Datenbank gespeichert.

Falls Sie mehr als ein Modul nicht gespeichert ist, wird folgendes Fenster eingeblendet:

Alle farbig markierten Elemente werden mit Hilfe der Schaltfläche Ja gespeichert. Mit Hilfe eines Mausklicks kann die Markierung für die einzelnen Elemente entfernt werden.

Page 48: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 48Access 2007 – VBA | 23.06.08 | Seite 48

Regionales Rechenzentrum für Niedersachsen

Code in einem Standardmodul ausführen

Setzen Sie die Einfügemarke in die auszuführende Prozedur. Die Einfügemarke befindet sich zwischen Sub ... und End Sub.

Drücken Sie <F5>. Die Prozedur wird vollständig durchlaufen. Andere Möglichkeiten:

Das grüne Dreieck in der Symbolleiste Debuggen führt die Prozedur aus. Das blaue Rechteck beendet die Ausführung.

Aus dem Menü Ausführen wird der entsprechende Eintrag ausgewählt. Rechts von den Einträgen befinden sich die gleichen Symbole wie in der Symbolleiste Debuggen.

Page 49: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 49Access 2007 – VBA | 23.06.08 | Seite 49

Regionales Rechenzentrum für Niedersachsen

Ereignis-Prozedur ausführen

Öffnen Sie das Formular in der Formularansicht. Lösen Sie das zu überprüfende Ereignis aus. Der Event-Handler wird

automatisch durchlaufen. Zum Beispiel:

Form_Load wird ausgelöst, wenn das Formular geöffnet wird. Button_Click wird ausgelöst, wenn der Nutzer auf die Schaltfläche mit der

Maus klickt. Textbox_KeyPress wird ausgelöst, wenn die Textbox aktiv ist und der Nutzer

eine Taste drückt, aber noch nicht losgelassen hat.

Page 50: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 50Access 2007 – VBA | 23.06.08 | Seite 50

Regionales Rechenzentrum für Niedersachsen

Nicht ausführbarer Code

Falls ein Programm nicht gestartet werden kann, wird häufig folgende Warnmeldung eingeblendet:

Aktivieren oder deaktivieren der Statusleiste: Klicken Sie auf den Office-Button und anschließend auf Access-Optionen. Wählen Sie die Kategorie Vertrauensstellungscenter aus und klicken auf die

Schaltfläche Einstellungen für das Vertrauensstellungscenter. Wählen Sie die Kategorie Statusleiste aus und aktivieren die gewünschte

Option.

Page 51: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 51Access 2007 – VBA | 23.06.08 | Seite 51

Regionales Rechenzentrum für Niedersachsen

Sicherheitswarnung öffnen

Klicken Sie auf die Schaltfläche Optionen in der Statusleiste, um die Sicherheitswarnung anzuzeigen.

Aktivieren Sie die Option Diesen Inhalt aktivieren, um die Blockade des Codes aufzuheben.

Schließen Sie das Fenster mit OK.

Page 52: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 52Access 2007 – VBA | 23.06.08 | Seite 52

Regionales Rechenzentrum für Niedersachsen

Sicherheitseinstellungen

Klicken Sie auf die Schaltfläche Office. Anschließend klicken Sie die Schaltfläche Access-Optionen. Wählen Sie die Kategorie Vertrauensstellungscenter aus. Klicken Sie dort auf die Schaltfläche Einstellungen für

Vertrauensstellungscenter. Folgende Möglichkeiten sind in dem Center gebündelt:

Vertrauenswürdige Herausgeber und Speicherorte festlegen. Unter welchen Bedingungen werden Add-Ins und Makros werden gestartet?

Add-Ins sind zu installierende Module, die den Funktionsumfang einer Anwendung erweitern. Makros automatisieren Arbeitsschritte in Access.

Wird die Statusleiste für die Sicherheitswarnungen eingeblendet? Datenschutzoptionen für die Kommunikation mit Microsoft.

Page 53: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 53Access 2007 – VBA | 23.06.08 | Seite 53

Regionales Rechenzentrum für Niedersachsen

Makros aktivieren

Wählen Sie im Vertrauensstellungscenter die Kategorie Einstellungen für Makros aus.

Standardmäßig werden Makros deaktiviert. Der Nutzer bekommt ein Hinweise, dass Makros vorhanden sind und kann sie anschließend aktivieren.

Page 54: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 54Access 2007 – VBA | 23.06.08 | Seite 54

Regionales Rechenzentrum für Niedersachsen

Vertrauenswürdige Speicherorte

Wählen Sie im Vertrauensstellungscenter die Kategorie Vertrauenswürdige Speicherorte aus.

Mit Hilfe der Schaltfläche Neue Speicherorte hinzufügen kann der Speicherort für eine vertrauenswürdige Datenbank angefügt werden.

Page 55: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 55Access 2007 – VBA | 23.06.08 | Seite 55

Regionales Rechenzentrum für Niedersachsen

Optionen für den VBA-Editor

Öffnen Sie das Menü Extras – Optionen. Die Registerkarte Editor ist eine Sammlung von Einstellungen, die den

Code sowie das Fenster betreffen. Die Registerkarte Editorformat formatiert die verschiedenen Code-

Anweisungen. Die Registerkarte Allgemein bietet Einstellungen

... für das Raster. ... für die Behandlung von Fehlern. ... für die Art der Kompilierung.

Die Registerkarte Verankerung verankert die Fenster innerhalb des Editors.

Page 56: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 56Access 2007 – VBA | 23.06.08 | Seite 56

Regionales Rechenzentrum für Niedersachsen

Editor-Einstellungen

Mit Hilfe der Option Automatische Syntaxüberprüfung werden Fehler in der Syntax nach Verlassen einer Zeile farbig angezeigt.

Variablendeklaration erforderlich setzt am Anfang eines Moduls die Anweisung Option Explicit automatisch. Eine Variable innerhalb einer Prozedur muss deklariert werden und kann nicht ein zweites Mal vorkommen.

Automatische Quickinfos zeigt gelbe Erklärfenster während der Eingabe von Funktionen etc. an.

Page 57: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 57Access 2007 – VBA | 23.06.08 | Seite 57

Regionales Rechenzentrum für Niedersachsen

Editorformat

In der Liste werden die verschiedenen Elemente des Codefensters angezeigt.

Die Schriftart und Schriftgröße kann für jedes Element eingestellt werden.

Page 58: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 58Access 2007 – VBA | 23.06.08 | Seite 58

Regionales Rechenzentrum für Niedersachsen

Objekte und Bibliotheken

Word, Access etc. sind Objekte. Diese bestehen wieder aus verschiedenen Objekten wie zum Beispiel Dokument, Formular und so weiter.

Alle Objekte zu einem Thema werden in einer Bibliothek gesammelt. Eine Bibliothek enthält vorgefertigte Prozeduren, die von anderen

Programmen abgerufen werden können. Mit Hilfe von Extras – Verweise werden die vorgefertigten Bibliotheken

einem Programm zur Verfügung gestellt.

Page 59: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 59Access 2007 – VBA | 23.06.08 | Seite 59

Regionales Rechenzentrum für Niedersachsen

Verweise

... enthalten den Pfad zu einer Bibliothek.

Alle vorhandenen Verweise werden in der Liste gesammelt.

Mit Hilfe der Pfeiltasten kann die Liste durchlaufen werden. Das aktive Element ist farbig markiert und der Pfad wird unterhalb der Liste angezeigt.

Wenn ein Häkchen in dem Kontrollkästchen vorhanden ist, können die Funktionen in der Bibliothek, auf die verwiesen wird, genutzt werden.

Mit Hilfe der Priorität kann die Reihenfolge der Elemente verändert werden.

Page 60: VBA (Visual Basic for Application) - luis.uni- · PDF fileBernd Held: Das Access VBA-Codebook Addision-Wesley Hennig, Cooper, Griffith, Stein: Access 2007 Programmers Reference

OpenOffice | 12.08.08 | Folie 60Access 2007 – VBA | 23.06.08 | Seite 60

Regionales Rechenzentrum für Niedersachsen

Aktive Verweise in Access

Visual Basic for Application C:\Programme\Gemeinsame Dateien\Microsoft Shared\vba\vba6\vbe6.dll ... definiert die Programmiersprache VBA.

Microsoft Access 12.0 Object Library C:\Programme\Microsoft Office\Office12\msacc.dll ... ist ein Verweis auf das Objektmodell von Access.

Microsoft Office 12.0 Access database engine Object Library C:\Programme\Microsoft Office\Office12\acedao.dll ... ersetzt die Microsoft DAO 3.x Object Library. ... stellt eine Verbindung zu Daten in Tabellen und Abfragen her.

OLE Automation C:\Windows\System32\stdole.tbl O(bject) L(inking) E(mbedding) ... ermöglicht das Bearbeiten von fremden Daten wie zum Beispiel von Bildern

in einer anderen Anwendung. ...ermöglicht die Nutzung eines Objektmodells aus einer anderen Anwendung.