Suchen und Finden
Service
Infos und Kontakt
jetzt lerne ich VBA mit Access - Der einfache Einstieg in die Datenbankprogrammierung
1
Übersicht
5
Inhaltsverzeichnis
7
Liebe Leserin, lieber Leser!
7
1 Erste Schritte mit Access-VBA
7
2 Die Sprachelemente von VBA
8
3 Die wichtigsten Objekte
8
4 Standardfunktionen einsetzen
10
5 Eigene Funktionen schreiben sowie API-Funktionen einsetzen
11
6 Tabellen programmieren
11
7 Abfragen programmieren
12
8 Formulare erstellen und programmieren
12
9 Ereignisse programmieren
13
10 Access im Zusammenspiel mit anderen Anwendungen
14
Stichwortverzeichnis
14
Liebe Leserin, lieber Leser!
15
1 Erste Schritte mit Access-VBA
17
1.1 Das Objektmodell von Access
17
1.2 Die Entwicklungsumgebung von Access-VBA
20
1.2.1 Das Code-Fenster
20
1.2.2 Das Eigenschaftenfenster
21
1.2.3 Das Direktfenster
22
1.2.4 Das Überwachungsfenster
23
1.2.5 Das Lokal-Fenster
26
1.2.6 Die Symbolleiste Bearbeiten
28
1.2.7 Die Symbolleiste Debuggen
32
1.2.8 Automatische Syntaxprüfung
33
1.2.9 Den Code Schritt für Schritt durchlaufen lassen
34
1.2.10 Tastenkombinationen einsetzen
35
1.3 Weitere Einstellungen
36
1.3.1 Editor-Einstellungen
36
1.3.2 Editierformat festlegen
38
1.3.3 Allgemeine Einstellungen vornehmen
38
1.3.4 Fenster verankern
40
1.4 Die ersten Prozeduren
40
1.4.1 Ein mehrzeiliges Infofenster ausgeben
41
1.4.2 Meldung mit Rückfrage erstellen
42
1.4.3 Einen Eingabedialog aufrufen
43
1.5 Variablen definieren und einsetzen
44
1.5.1 Syntaxfestlegungen für Variablen
44
1.5.2 Die Namenskonvention von Gregory Reddick
45
1.5.3 Variablen deklarieren
45
1.5.4 Statische Variablen
46
1.5.5 Private Variablen
47
1.5.6 Öffentliche Variablen
47
1.5.7 Variablendeklaration erzwingen
47
1.5.8 Die wichtigsten Variablentypen
48
1.5.9 Noch kürzere Deklaration von Variablen
49
1.6 Die Verwendung von Konstanten
50
1.7 Die wichtigsten Systemkonstanten
50
1.7.1 Datumsformat-Konstanten
51
1.7.2 Dir-Konstanten
54
1.7.3 File Input/Output-Konstanten
56
1.7.4 Die Shell-Konstanten
58
2 Die Sprachelemente von VBA
61
2.1 Verzweigungen mit If...Then...Else
61
2.1.1 Benutzereingabe auswerten
62
2.1.2 Angemeldeten Anwender abfragen
63
2.1.3 Wochentag abfragen
64
2.1.4 Eingaben prüfen und wandeln
65
2.1.5 Daten abfragen
65
2.1.6 Letztes Speicherdatum einer Datenbank abfr agen
67
2.1.7 Anlagedatum einer Datenbank auswerten
68
2.1.8 Datum der Tabellenerstellung abfragen
69
2.1.9 Datumscheck vornehmen
70
2.2 Verzweigungen mit IIF
72
2.3 Verzweigungen mit Select Case
73
2.3.1 Zahlenwerte prüfen mit Select Case
73
2.3.2 Textwerte prüfen mit Select Case
75
2.3.3 Individuelle Begrüßung vornehmen
76
2.3.4 Versionscheck durchführen
77
2.4 Schleifen programmieren
78
2.4.1 For...Next-Schleifen
78
2.4.2 For Each...Next-Schleifen
82
2.4.3 Die Schleife Do Until...Loop
86
2.4.4 Die Schleife Do While...Loop
87
3 Die wichtigsten Objekte
91
3.1 Das AccessObject-Objekt
91
3.1.1 Alle Module auflisten
92
3.1.2 Alle Tabellen auflisten
93
3.2 Die Application-Objekte
94
3.2.1 Name der aktuellen Datenbank abfragen
94
3.2.2 Pfad der aktuellen Datenbank abfragen
95
3.2.3 Pfad der Anwendung abfragen
95
3.2.4 Access-Version feststellen
96
3.2.5 Aktuellen Anwendernamen abfragen
96
3.2.6 Die aktuelle Datenbank schließen
97
3.2.7 Die Applikation beenden
97
3.2.8 Drucker auflisten
97
3.3 Das Control-Objekt
98
3.4 Das DoCmd-Objekt
99
3.4.1 Filter in Tabellen setzen
99
3.4.2 Objekte umbenennen
101
3.4.3 Objekte kopieren
102
3.4.4 Objekte löschen
103
3.4.5 Objekte exportieren
104
3.4.6 Objekte drucken
106
3.4.7 Objekte versenden
107
3.4.8 Datensatz in Tabelle aktivieren
113
3.4.9 Menübefehle ausführen
114
3.4.10 SQL-Anweisungen absetzen
115
3.4.11 Fenstergröße festlegen
116
3.4.12 Datenbankinhalte transferieren
117
3.4.13 Tabellen transferieren
119
3.4.14 Exportieren und Importieren
120
3.5 Das FileSystem-Objekt
122
3.5.1 Datei kopieren
122
3.5.2 Datei verschieben
123
3.5.3 Datei löschen
124
3.5.4 Dateiexistenz prüfen
125
3.5.5 Ordnerexistenz prüfen
126
3.5.6 Verzeichnis anlegen
127
3.5.7 Verzeichnis löschen
127
3.5.8 Ordner auflisten
128
3.5.9 Dateien auflisten
129
3.5.10 Laufwerke auslesen
130
3.6 Das FileSearch-Objekt
132
3.7 Das CommandBar-Objekt
135
3.7.1 Leisten identifizieren
135
3.7.2 Symbolleiste ein- und ausblenden
136
3.7.3 Symbolleisten-IDs ermitteln
137
3.7.4 Leisten und Befehle ermitteln
138
3.7.5 Neue Symbolleiste erstellen
139
3.7.6 Symbolleiste löschen
139
3.7.7 Symbolschaltflächen-FaceIDs ermitteln
140
3.7.8 Symbolschaltflächen-IDs ermitteln
141
3.7.9 Symbolschaltflächen einfügen
142
3.7.10 Symbolleisten schützen
144
3.7.11 Symbolschaltflächen (de)aktivieren
145
3.7.12 Neues Menü einfügen
146
3.7.13 Menüleiste zurücksetzen
148
3.7.14 Menü löschen
148
3.7.15 Menübefehle einfügen
149
4 Standardfunktionen einsetzen
151
4.1 Die wichtigsten Textfunktionen
151
4.1.1 Zahlen in Buchstaben wandeln
151
4.1.2 Position eines Zeichens ermitteln (von links)
152
4.1.3 Position eines Zeichens ermitteln (von rechts)
153
4.1.4 Textteile übertragen (von links)
154
4.1.5 Textteile extrahieren
156
4.1.6 Textteile übertragen (von rechts)
157
4.1.7 Umlaute austauschen
158
4.1.8 Texte konvertieren
159
4.1.9 Zeichenfolgen wiederholen
160
4.1.10 Leerzeichen entfernen
160
4.1.11 Zeichenfolgen vergleichen
162
4.1.12 Zeichenfolgen drehen
163
4.2 Datums- und Zeitfunktionen
163
4.2.1 Zeichenfolge in gültiges Datum konvertieren
163
4.2.2 Liefertermin errechnen
164
4.2.3 Monat extrahieren
165
4.2.4 Datumsdifferenzen bilden
167
4.2.5 Letzten Tag im Monat ermitteln
168
4.2.6 Monatsnamen in Textform ausgeben
169
4.2.7 Wochentag ermitteln
169
4.3 Dateifunktionen
171
4.3.1 Verzeichniswechsel durchführen
171
4.3.2 Laufwerkswechsel durchführen
171
4.3.3 Aktuelles Verzeichnis ermitteln
172
4.3.4 Dateien auflisten
172
4.3.5 Umgebungsvariablen auslesen
174
4.3.6 Dateiexistenz prüfen
176
4.3.7 Dateien ohne Rückfrage löschen
176
4.3.8 Verzeichnis erstellen
177
4.3.9 Verzeichnis entfernen
177
4.3.10 Externe Programme starten
178
4.4 Mathematische Funktionen
180
4.4.1 Absolutwert einer Zahl ermitteln
180
4.4.2 Vorkommawert einer Zahl ermitteln (absch neiden)
180
4.4.3 Vorkommawert einer Zahl ermitteln (»auf die nächstkleinere Zahl runden«)
181
4.4.4 Zahlenwerte runden
182
4.4.5 Zufallszahlen bilden
183
5 Eigene Funktionen schreiben sowie API-Funktionen einsetzen
185
5.1 Eigene Funktionen schreiben
185
5.1.1 Buchstaben aus Zeichenfolgen entfernen
186
5.1.2 Zahlen aus Zeichenfolgen entfernen
187
5.1.3 Prüfung auf Existenz eines Verzeichnisses
188
5.1.4 Prüfung auf Existenz einer Datei
189
5.1.5 Prüfen auf Existenz einer Tabelle
190
5.1.6 Objektstatus ermitteln
191
5.1.7 Dokumenteigenschaften abfragen
192
5.1.8 Zahlen als Text ausgeben
193
5.1.9 Initialen bilden
195
5.2 API-Funktionen einsetzen
196
5.2.1 CD-ROM-Laufwerk ermitteln
197
5.2.2 Bedienung des CD-ROM-Laufwerks
199
5.2.3 Bildschirmauflösung ermitteln
200
5.2.4 Windows-Verzeichnis ermitteln
201
5.2.5 Das temporäre Verzeichnis ermitteln
201
5.2.6 Access-Verzeichnis ermitteln
202
5.2.7 Dateityp und Anwendung ermitteln
203
6 Tabellen programmieren
205
6.1 Einfache Aufgaben mit DoCmd
205
6.1.1 Tabelle öffnen
205
6.1.2 Tabelle öffnen und Datensatz finden
206
6.1.3 Tabellen im HTML/XML-Format speichern
208
6.2 Komplexere Aufgaben mit ADO & SQL
209
6.2.1 Verbindung zu einer Datenbank herstellen
209
6.2.2 Tabelle öffnen und Dump ziehen
210
6.2.3 Eine bestimmte Anzahl von Sätzen extrahieren
212
6.2.4 Nur bestimmte Felder einer Tabelle ausgeben
213
6.2.5 Unikatsliste erstellen
215
6.2.6 Datensätze sortieren
216
6.2.7 Tabellen zusammenfassen
218
6.2.8 Minimal- und Maximalwerte ermitteln (Variante 1)
220
6.2.9 Minimal- und Maximalwerte ermitteln (Variante 2)
223
6.2.10 Datensätze in einer Tabelle finden
224
6.2.11 Datensätze verändern
227
6.2.12 Datensätze filtern
228
6.2.13 Datensätze zählen
229
6.2.14 Datensätze löschen
231
6.2.15 Datensätze hinzufügen
232
7 Abfragen programmieren
235
7.1 Die Abfragetypen von Access
235
7.2 Abfragen mithilfe von DoCmd
237
7.2.1 Abfragen starten mit OpenQuery
237
7.2.2 Abfragen ausführen mit RunSQL
238
7.2.3 UPDATE (Aktualisierungsabfrage)
239
7.2.4 INSERT INTO (Anfügeabfrage)
240
7.2.5 DELETE (Löschabfrage)
241
7.2.6 SELECT INTO (Tabellenerstellungsabfrage)
243
7.2.7 INNER JOIN (Vergleichsabfrage)
244
7.2.8 UNION (Auswahlabfrage)
247
7.2.9 Abfragen mit Berechnungen ausführen
249
7.3 Abfragen per VBA erzeugen
250
7.4 Abfragen über das Katalog-Objekt realisieren
252
7.5 Parameterabfragen erstellen
254
8 Formulare erstellen und programmieren
257
8.1 Formulare selbst erstellen
257
8.2 Die Steuerelemente aus der Toolbox
258
8.3 Steuerelemente einfügen
261
8.3.1 Steuerelemente bearbeiten
262
8.3.2 Steuerelemente ausrichten
262
8.3.3 Aktivierreihenfolge anpassen
263
8.3.4 Formularfelder formatieren
264
8.3.5 Formulareigenschaften einstellen
265
8.3.6 Steuerelementeigenschaften einstellen
267
8.3.7 Schaltflächen einfügen
268
8.4 Identifizieren von Steuerelementen
271
8.5 Formular aufrufen
273
8.6 Formular schließen
274
8.7 Beispiele zum Einsatz von Steuer elementen
275
8.7.1 Textfelder aktivieren und sperren
275
8.7.2 Listboxen füllen und auswerten
277
8.7.3 Kombination aus Kombinationsfeld mit Listenfeld
279
8.7.4 Kontrollkästchen programmieren
281
8.7.5 Fortschrittsbalken durch ein Steuerelement erzeugen
283
8.7.6 Das Kalender-Steuerelement einbinden
284
9 Ereignisse programmieren
287
9.1 Die Ereignisse Form_Open bzw. Report_Open
287
9.1.1 Eine Zugangsverwaltung aufsetzen
287
9.1.2 Bestimmtes Feld fokussieren
289
9.2 Die Ereignisse Form_Close und Report_Close
290
9.2.1 Alle beteiligten Elemente schließen
290
9.3 Das Ereignis Form_Load
291
9.3.1 Listenfeld beim Laden des Formulars füllen
291
9.4 Das Ereignis Form_Unload
292
9.4.1 Schließen verhindern
292
9.5 Das Ereignis Form_Current
293
9.5.1 Dynamisches Ein- und Ausblenden von Feldern
294
9.6 Das Ereignis Form_BeforeInsert
294
9.6.1 Felder automatisch vorbelegen
294
9.7 Das Ereignis Form_BeforeUpdate
295
9.7.1 Rückfrage vor dem Speichern einholen
295
9.7.2 Muss-Felder definieren
296
9.8 Das Ereignis Form_Delete
296
9.8.1 Löschen von Datensätzen verhindern
296
9.9 Das Ereignis Form_BeforeDelConfirm
298
9.9.1 Eine eigene Löschabfrage einsetzen
298
9.10 Das Ereignis Form_Activate
299
9.10.1 Den ersten Datensatz einstellen
299
9.11 Das Ereignis Form_Resize
299
9.11.1 Variable Feldanpassung vornehmen
299
9.12 Das Ereignis Form_Click
300
9.12.1 Lagerbestand per Mausklick erhöhen
300
9.13 Die Ereignisse Form_MouseDown und Form_MouseUp
301
9.13.1 Welche Taste wurde geklickt?
302
9.14 Das Ereignis MouseMove
303
9.14.1 Spezialeffekte einsetzen
303
9.15 Die Ereignisse GotFocus und LostFo cus
305
9.15.1 Textfelder optisch hervorheben
305
9.16 Die Key-Ereignisse
307
9.16.1 Tasten erkennen
307
9.16.2 Tastenkombinationen einrichten
308
9.17 Das Ereignis Steuerelement_BeforeUpdate
310
9.17.1 Doppelte Eingaben verhindern
310
9.18 Die Reihenfolge der Ereignisse
311
9.18.1 Reihenfolge beim Öffnen und Schließen eines Formulars
312
9.18.2 Aktivierreihenfolge bei Steuerelementen
313
9.18.3 Reihenfolge der Aktualisierungsereignisse
313
9.18.4 Eine komplette Kette von Ereignissen
314
10 Access im Zusammenspiel mit anderen Anwendungen
315
10.1 Early- und Late-Binding
315
10.1.1 Early-Binding
315
10.1.2 Late-Binding
316
10.2 Access und Excel
316
10.2.1 Die Voraussetzung
317
10.2.2 Die Anforderungen
317
10.2.3 Standardaufgaben beim Starten der Userform durchführen
318
10.2.4 Bezeichnungsfeld definieren
319
10.2.5 Access-Datenbank anlegen
319
10.2.6 Die Suchfunktionen
320
10.2.7 Den Klick aufs Listenfeld auswerten
324
10.2.8 Der besseren Übersichtlichkeit wegen
325
10.2.9 Textfelder leeren
326
10.2.10 Übernahme der Daten in eine Excel-Tabelle
327
10.2.11 Der Datenexport aus Excel
328
10.2.12 Datenbankabfrage durchführen
330
10.3 Access und Outlook
332
10.3.1 Outlook bereits gestartet?
332
10.3.2 Mail-Adressen aus Outlook auslesen (Early Binding)
333
10.3.3 Kontaktdaten nach Outlook übertragen
335
10.3.4 Kontaktdaten von Outlook importieren
339
10.4 Access und Word
342
10.4.1 Ist Word bereits gestartet?
343
10.4.2 Access-Tabelle in ein Dokument übertragen
344
10.5 Access und Internet Explorer
348
10.5.1 Eine Diashow programmieren
349
Stichwortverzeichnis
351
A
351
B
352
C
352
D
353
E
354
F
354
G
355
H
355
I
355
K
356
L
356
M
356
N
357
O
357
P
357
Q
357
R
357
S
358
T
359
U
359
V
359
W
360
Z
360
Mehr eBooks vom gleichen Verlag
Spieleprogrammierung mit C++ und DirectX 9 in 21 Tagen, von: Alexander Rudolph, Preis: 14,95 EUR
Jetzt lerne ich VBA mit Excel, von: Bernd Held, Preis: 9,95 EUR
Windows Vista Ultimate. magnum, von: Günter Born, Preis: 12,95 EUR
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.; Ersparnis im Vergleich zur Printversion




















