Suchen und Finden
Mehr zum Inhalt
VBA-Programmierung für Word, Excel und Access - Das Praxisbuch für Microsoft-Office-Entwickler
Cover
1
Vorwort
5
Inhaltsverzeichnis
8
1 Die Entwicklungsumgebung von VBA
12
1.1 Makros einfügen
12
1.2 Makros starten
14
1.3 Den Makrorekorder einsetzen
14
1.3.1 Makro aufzeichnen
14
1.3.2 Resultate des Makrorekorders ansehen
16
1.3.3 Zusatzinformationen anzeigen
18
1.4 Die Arbeitsumgebung
19
1.4.1 Der Projekt-Explorer
19
1.4.2 Das Eigenschaftsfenster
21
1.4.3 Das Code-Fenster
22
1.4.4 Das Direktfenster
23
1.4.5 Das Überwachungsfenster
24
1.4.6 Das Lokal-Fenster
26
1.5 Wertvolle Helfer bei der Programmierung
27
1.5.1 Die Symbolleiste Bearbeiten
27
1.5.2 Die Symbolleiste Debuggen
32
1.6 Weitere Einstellungen
34
1.6.1 Registerkarte Editor
34
1.6.2 Registerkarte Editorformat
35
1.6.3 Registerkarte Allgemein
36
1.6.4 Registerkarte Verankern
37
2 Die Sprachelemente von VBA
40
2.1 Variablen und Konstanten
40
2.2 Operatoren
43
2.3 Verzweigungen
45
2.3.1 Office-Version erkennen
45
2.3.2 Rückfrage einholen
47
2.3.3 Datei nach bestimmter Zeit löschen
48
2.3.4 Existiert eine bestimmte Datei?
49
2.4 Die Anweisung Select Case
49
2.4.1 Fensterstatus ermitteln
50
2.4.2 Steuerelemente identifizieren
51
2.4.3 Zahlenformate ermitteln
54
2.4.4 Eingaben überprüfen
55
2.5 Schleifen
57
2.5.1 Die Schleife For...Next
57
2.5.2 Tabellen anlegen
57
2.5.3 Die Schleife For Each...Next
64
2.5.4 Die Schleife Do Until
74
2.5.5 Die Schleife Do While...Loop
81
3 VBA-Standardfunktionen nutzen
90
3.1 Textfunktionen einsetzen
90
3.1.1 Textteile trennen
90
3.1.2 Texte zusammenführen
93
3.1.3 Datei- und Pfadnamen ermitteln
94
3.1.4 PLZ von Stadt trennen
96
3.1.5 Komplette Zeichenfolge zerlegen
97
3.1.6 Texte spiegeln & verdrehen
99
3.1.7 Leerzeichen aus Zellen entfernen
101
3.1.8 Aus klein mach GROSS
102
3.2 Mit Verzeichnissen und Laufwerken arbeiten
107
3.2.1 Dateien eines Verzeichnisses auflisten
108
3.2.2 Verzeichnisse erstellen
110
3.2.3 Verzeichnisse löschen
111
3.3 Datums- und Zeitfunktionen einsetzen
111
3.3.1 Den Wochentag ermitteln
111
3.3.2 Den Tag, Monat und das Jahr ermitteln
113
3.3.3 Teile aus Datumsangaben extrahieren
114
3.3.4 Datumsberechnungen durchführen
115
3.3.5 Ein Sprung in die Zukunft/Vergangenheit
115
3.3.6 Die aktuelle Uhrzeit ermitteln
116
3.3.7 Pause einlegen
117
3.3.8 Bild ein- und ausblenden
118
3.3.9 Arbeitsmappe nach bestimmter Zeit schließen
119
3.3.10 Datumsangaben formatieren
119
3.3.11 Tabellen einfügen und formatieren
121
3.3.12 Datumsangaben erkennen
122
3.3.13 Datumsangaben in Kopf- und Fußzeile integrieren
123
3.4 Prüffunktionen
125
3.4.1 Die Funktion IsNumeric
125
3.4.2 Die Funktion IsDate
129
3.4.3 Die Funktion IsEmpty
131
3.4.4 Die Funktion IsArray
133
3.5 Sonstige Funktionen
135
3.5.1 Fremde Programme aufrufen mit Shell
135
3.5.2 Texteile ersetzen mit Replace
136
3.5.3 Farben erzeugen mit der Funktion RGB
138
3.5.4 Leerzeichen einfügen mit der Funktion Space
141
3.5.5 Ganzzahlige Werte erstellen mit der Funktion Int
142
4 Eigene Funktionen programmieren
146
4.1 Farbige Zellen addieren
146
4.2 Dateiprüfung
148
4.3 Daten bereinigen
149
4.4 Aktive Zelle im Zielbereich?
152
4.5 Dokumentschutz aufheben und neu setzen
153
4.6 Römische Zahlen wandeln
155
4.7 Eingefügte Objekte in PowerPoint-Folien ermitteln
157
4.7.1 Einzelne Verknüpfung gezielt aufspüren
158
4.7.2 Alle eingefügten Objekte aufspüren
160
4.8 Läuft eine Anwendung bereits?
161
4.8.1 Word-Anwendung bereits aktiv?
161
4.8.2 Access-Anwendung aktiv?
163
4.8.3 PowerPoint-Anwendung aktiv?
165
4.9 Hyperlinks auf Shape-Objekten identifizieren
166
4.10 Ist Dokument passwortgeschützt?
169
4.11 Ist Arbeitsmappe passwortgeschützt?
170
4.12 Wo bin ich?
172
4.12.1 Die aktuelle Word-Dokumentseite ermitteln
172
4.12.2 Die aktuelle Position in Excel bestimmen
174
4.13 Das älteste Dokument in einem Verzeichnis ermitteln
175
4.14 Die Dokumenteigenschaften ermitteln
177
4.15 Wie viele Tage hat ein Monat?
179
4.16 Initialen aus Namen bilden
179
4.17 Automatisch E-Mail-Adressen generieren
182
4.18 Ist Add-In bereits eingebunden
183
4.19 Wo steckt der größte Wert?
184
4.20 Wird Name bereits verwendet?
187
5 Meldungen, Eingabemasken, Dialoge und UserForms programmieren
190
5.1 Meldungen programmieren
190
5.1.1 Abfrage vor Löschung von Texten
192
5.2 Eingabemasken programmieren
193
5.2.1 Wort suchen über Inputbox
194
5.3 Integrierte Dialoge verwenden
196
5.3.1 Excel-Dialoge aufrufen
196
5.3.3 Word-Dialoge einsetzen
201
5.3.2 Access-Dialoge aufrufen
199
5.4 UserForms programmieren
202
5.4.1 Die UserForm und ihre Steuerelemente
204
5.4.2 Steuerelemente einfügen
206
5.4.3 Die UserForm aufrufen
207
5.4.4 Die UserForm ausprogrammieren
211
5.4.5 Ein Unterformular anlegen
215
5.4.6 Mitarbeiter & Skills suchen
222
6 Menü- und Symbolleisten programmieren
230
6.1 Allgemeine Anmerkungen zu Leisten
230
6.2 Menüleisten programmieren
232
6.2.1 Menüleiste ausblenden
233
6.2.2 Ein neues Menü anlegen
233
6.2.3 Menüs löschen
235
6.2.4 Menübefehle einfügen
235
6.2.5 Erstellung beim Öffnen des Dokuments
238
6.2.6 Menünamen feststellen
239
6.2.7 Menübefehl in bestehendes Menü integrieren
240
6.2.8 Menübefehl löschen
241
6.2.9 Menü-IDs ermitteln
242
6.2.10 Menübefehl-ID ermitteln
243
6.2.11 Menübefehle deaktivieren
244
6.2.12 Ganze Menüs deaktivieren
246
6.2.13 Kaskade erstellen
247
6.3 Symbolleisten programmieren
250
6.3.1 Symbol-IDs bestimmen
250
6.3.2 FaceIDs bestimmen
252
6.3.3 Neue Symbolleiste anlegen
253
6.3.4 Symbolleiste löschen
254
6.3.5 Symbolleiste zurücksetzen
255
6.3.6 Symbolleiste ausblenden
255
6.3.7 Symbole deaktivieren
257
6.3.8 Symbolleisten schützen
258
6.4 Kontextmenüs programmieren
259
6.4.1 Kontextmenüs ermitteln
260
6.4.2 Kontextmenüs deaktivieren
261
6.4.4 Kontextmenüs zurücksetzen
263
6.4.3 Kontextmenü erweitern
261
7 »Internette« Funktionen in Office programmieren
264
7.1 Inhaltsverzeichnis einer Arbeitsmappe erstellen
264
7.2 Inhaltsverzeichnis eines Verzeichnisses erstellen
266
7.3 E-Mail-Links einfügen
268
7.3.1 E-Mail-Adressen blockweise umsetzen
270
7.4 URL-Links einfügen
272
7.4.1 Hyperlinks bei Gültigkeit umsetzen
273
7.4.2 Hyperlinks entfernen
275
7.5 Aktienkurse abfragen
275
7.6 E-Mails per VBA verschicken
277
7.6.1 Direktversand einer E-Mail
277
7.6.2 E-Mail mit Dateianhang versenden
278
7.6.3 Aktive Tabelle per E-Mail versenden
281
7.6.4 Tabelle ohne Verknüpfungen versenden
282
7.6.5 Mehrere Dateianhänge versenden
283
7.6.6 Einen Bereich versenden
284
7.6.7 Auf Outlook-Funktionen zugreifen
286
7.6.8 Eine Sammel-E-Mail erstellen
287
8 VBE-Programmierung in Office
290
8.1 Die Voraussetzung
290
8.2 Bibliotheken einbinden
291
8.2.1 Gesetzte Verweise ermitteln
292
8.2.2 Die VBE-Bibliothek einbinden
293
8.2.3 Die VBE-Bibliothek entladen
294
8.2.4 Bibliotheksinfos schreiben
294
8.3 Die VBE-Komponenten
295
8.4 VBE-Komponenten auflisten
297
8.5 VBE-Komponenten entfernen
299
8.6 VBE-Komponenten exportieren
299
8.7 VBE-Komponenten importieren
300
8.8 Alle VBE-Komponenten aus Dokument entfernen
303
8.9 VBE aufrufen
304
8.10 Codezeilen auflisten
304
9 Excel-Programmierung
308
9.1 Zellen programmieren
308
9.1.1 Zellen ansprechen
308
9.1.2 Zellen benennen
313
9.1.3 Formeln einsetzen
315
9.1.4 Zellen formatieren
322
9.2 Zeilen und Spalten programmieren
327
9.2.1 Zeilen ein- und ausblenden
327
9.2.2 Spalten ein- und ausblenden
329
9.2.3 Zeilen löschen und einfügen
332
9.2.4 Spalten löschen und einfügen
336
9.2.5 Zeilenhöhe und Spaltenbreite einstellen
339
9.3 Tabellen programmieren
342
9.3.1 Tabellenblätter zählen und identifizieren
343
9.3.3 Tabellen ein- und ausblenden
347
9.3.2 Neue Tabellen einfügen
344
9.3.4 Tabellen schützen
350
9.3.5 Tabellenschutz entfernen
352
9.3.6 Registerlaschen einfärben
352
9.4 Arbeitsmappen programmieren
354
9.4.1 Geöffnete Arbeitsmappen ermitteln
354
9.4.2 Arbeitsmappen anlegen
355
9.4.3 Arbeitsmappen speichern
356
9.4.4 Arbeitsmappen drucken
358
9.4.5 Verknüpfungen ersetzen
359
9.4.6 Verknüpfungen auskundschaften
362
9.4.7 Verknüpfungen tauschen
363
10 Die Programmierung mit Word
366
10.1 Dokument(e) identifizieren
367
10.2 Dokumentvorlage ermitteln
368
10.3 Dokumentvorlage wechseln
369
10.4 Einstellungen am Dokument durchführen
370
10.5 Schriftarten ermitteln
371
10.6 Dokumenteigenschaften auslesen und setzen
373
10.6.1 Dokumenteigenschaften auflisten
374
10.6.2 Dokumenteigenschaften gezielt abfragen
375
10.6.3 Dokumenteigenschaften setzen
377
10.7 Kommentare aufspüren und auslesen
379
10.7.1 Kommentarinformationen auslesen
379
10.7.2 Kommentare formatieren
380
10.8 Texte/Formate suchen und ersetzen
382
10.8.1 Text suchen und Schriftart formatieren
382
10.8.2 Text suchen und Hervorhebung aktivieren
385
10.8.3 Text suchen und Lesemarken setzen
387
10.8.4 Die Suchergebnisse in neues Dokument transferieren
390
10.8.5 Texte suchen und ersetzen
391
10.8.6 Formate suchen und entfernen
393
10.8.7 Formate suchen und ergänzen
394
10.9 Arbeiten mit Hyperlinks
396
10.9.1 Hyperlinks in Dokumenten löschen
396
10.9.2 Hyperlink einfügen
396
10.9.3 Bilderhyperlinks einfügen
397
10.10 Bilder in Dokumenten verarbeiten
400
10.10.1 Bild einfügen
400
10.10.2 Mehrere Bilder einfügen
401
10.10.3 Bilder dokumentieren
403
10.10.4 Verknüpfte Bilder im Dokument aktualisieren
404
10.11 Arbeiten mit Tabellen
405
10.11.1 Tabelle einfügen, füllen und formatieren
405
10.11.2 Tabelle löschen
409
11 Programmierung mit Access
410
11.1 Das Programmieren von Tabellen
410
11.1.1 Tabelle öffnen
410
11.1.2 Tabelle öffnen und durchsuchen
412
11.1.3 Tabelle öffnen und positionieren
413
11.1.4 Tabelle öffnen und filtern
415
11.1.5 Tabelle öffnen und drucken
417
11.1.6 Tabelle kopieren
418
11.1.7 Tabelle umbenennen
420
11.1.8 Tabelle löschen
420
11.1.9 Tabelle speichern
421
11.1.10 Tabellen auslesen
421
11.1.11 Tabelleninhalte auslesen
422
11.1.12 Tabellen abfragen
425
11.1.13 Tabellen ändern
428
11.1.14 Datensätze aus einer Tabelle entfernen
431
11.1.15 Datensätze hinzufügen
432
11.2 Das Programmieren von Abfragen
435
11.2.1 Abfrage duchführen
435
11.2.2 Aktualisierungsabfrage durchführen
436
11.2.3 Anfügeabfrage ausführen
437
11.2.4 Löschabfrage ausführen
439
11.2.5 Tabellenerstellungsabfrage ausführen
440
11.2.6 Definitionsabfragen ausführen
441
11.2.7 Abfrage erzeugen mit ADO
445
11.2.8 Paramterabfrage erstellen
448
11.3 Das Programmieren von Formularen
449
11.3.1 Formular aufrufen
450
11.3.2 Formular öffnen mit eingestelltem Filter
451
11.3.3 Formular schließen
452
11.3.4 Formulare weiter ausbauen
452
12 Office im Zusammenspiel
458
12.1 Adressen nach Outlook transferieren
458
12.2 E-Mail-Verkehr in Word protokollieren
461
12.3 Access-DB in Word verfügbar machen
463
12.4 Objekte in Word-Dokumente integrieren
469
12.4.1 Arbeitsmappe als Symbol einfügen
469
12.4.2 Mehrere Arbeitsmappen als Symbol einfügen
471
12.5 Excel-Daten nach Word kopieren
472
12.5.1 Daten unverknüpft übertragen
473
12.5.2 Daten verknüpft übertragen
475
12.6 Der Datenaustausch zwischen Access und Excel
476
12.6.1 Import einer Excel-Tabelle nach Access
476
12.6.2 Export einer Access-Tabelle nach Excel
478
13 Auf Fehlersuche in Office
480
13.1 Typische Fehlerquellen
480
13.1.1 Syntaxfehler
480
13.1.2 Nicht verfügbare Befehle
481
13.1.3 Der Griff ins Ungewisse
483
13.1.4 Falscher Einsatz von Variablen
484
13.1.5 Fehlerliste einsehen
487
13.2 Die Fehlerbehandlung
487
13.3 Allgemeine Punkte zur Programmierung
489
14 Tuning der VBA-Programme
490
14.1 Makros schneller ablaufen lassen
490
14.1.1 Bildschirmaktualisierung abschalten
490
14.1.2 Auflistungen einsetzen
492
14.1.3 Objekte nicht markieren
493
14.1.4 Berechnung abschalten
494
14.1.5 Auf Sprünge verzichten
497
14.2 VBA-Abläufe sichtbar machen
498
14.2.1 Statusleiste einsetzen
498
14.2.2 Einen Fortschrittsbalken einsetzen
499
15 Die Office-VBA-FAQ
502
15.1 Office-Animationen erstellen
502
15.1.1 Objekte rotieren lassen
502
15.1.2 Laufrahmen erstellen
504
15.1.3 Einen blinkenden Hintergrund programmieren
506
15.1.4 Eine blinkende Zelle programmieren
507
15.2 Termine in den Outlook-Kalender übertragen
508
15.3 Excel-Auswertungen nach PowerPoint transportieren
510
15.4 Das Steuerelement TreeControl
512
15.5 Diagramme als Grafiken speichern
514
15.6 Das Kalendersteuerelement einsetzen
515
15.7 Zugriff auf Microsoft Graph programmieren
517
A Die Dateien zum Buch
520
Anhang B
522
Stichwortverzeichnis
534
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.