Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
Materialien zum Buch
16
Geleitwort des Fachgutachters
17
1 Einführung
19
1.1 Was wird besser durch Makros und VBA?
19
1.2 Mit Makros arbeiten
21
1.2.1 Makro aufzeichnen
21
1.2.2 Makro ausführen
24
1.2.3 Makro ansehen
24
1.2.4 Makro speichern
26
1.2.5 Makrosicherheit ändern
27
1.2.6 Registerkarte »Entwicklertools«
28
1.2.7 Makrosicherheit dauerhaft ändern
29
1.3 Visual Basic Editor
31
1.3.1 Menüleiste und Symbolleiste
31
1.3.2 Projekt-Explorer und Fenster »Eigenschaften«
32
1.3.3 Codefenster
33
1.4 Makrocode verstehen und ändern
34
1.5 Makro per Schaltfläche ausführen
36
1.6 Relative Verweise verwenden
37
1.7 Persönliche Makroarbeitsmappe
39
1.8 Code schreiben für einfache Ausgaben
40
1.8.1 Eigene Sub-Prozedur
40
1.8.2 Ausgabe in Zelle
41
1.8.3 Ausgabe in Nachrichtenbox
42
1.8.4 Ausgabe im Direktfenster des VBE
43
1.9 Microsoft 365
44
1.10 Web-Apps
45
2 Grundlagen von Objekten und Ereignissen
47
2.1 Objekthierarchie und Auflistungen
47
2.2 Arbeitsmappen bearbeiten
48
2.2.1 Anzahl der Arbeitsmappen ermitteln
48
2.2.2 Neue Arbeitsmappe erzeugen
49
2.2.3 Vorhandene Arbeitsmappe öffnen
50
2.2.4 Alle Arbeitsmappen schließen
50
2.2.5 Name einer Arbeitsmappe ermitteln
51
2.2.6 Aktive Arbeitsmappe ermitteln
51
2.2.7 Arbeitsmappe aktivieren
53
2.2.8 Arbeitsmappe speichern
53
2.2.9 Arbeitsmappe über Index oder Namen auswählen
54
2.2.10 Pfad einer Arbeitsmappe ermitteln
55
2.3 Tabellenblätter bearbeiten
56
2.3.1 Tabellenblatt erzeugen
56
2.3.2 Tabellenblatt kopieren
57
2.3.3 Tabellenblatt verschieben
58
2.3.4 Tabellenblatt löschen
59
2.3.5 Tabellenblatt aktivieren
59
2.3.6 Tabellenblatt formatieren
60
2.3.7 Gitternetz, Zeilen- und Spaltenüberschriften
61
2.3.8 Seite einrichten
62
2.4 Auf Zellen und Zellbereiche zugreifen
63
2.4.1 Zellen über das »Range«-Objekt auswählen
63
2.4.2 Zellen über das »Cells«-Objekt auswählen
66
2.4.3 Zellinhalte verschieben oder kopieren
66
2.4.4 Teile von Zellinhalten kopieren
68
2.4.5 Zellinhalte löschen
69
2.4.6 Werte und Formeln eintragen
70
2.4.7 Zahlenformate anwenden
71
2.4.8 Zellen ausrichten
72
2.4.9 Schrifteigenschaften bestimmen
73
2.4.10 Einzelne Zeichen formatieren
75
2.4.11 Zellbereiche einrahmen
76
2.4.12 Hintergrundmuster von Zellen gestalten
77
2.4.13 Zellen einfügen
78
2.4.14 Zellen löschen
79
2.4.15 Zeilenhöhe und Spaltenbreite
80
2.4.16 Benutzten Zellbereich erkennen
81
2.4.17 Spezielle Zellen erkennen
82
2.4.18 Versatz mit Offset vornehmen
84
2.4.19 Zellbereich sortieren
85
2.4.20 Mehr als drei Sortierschlüssel
87
2.5 Ereignisprozeduren schreiben
88
2.5.1 Arbeitsmappe wird geöffnet
88
2.5.2 Arbeitsmappe wird geschlossen
89
2.5.3 Tabellenblatt wird aktiviert
89
2.5.4 Zellbereich wird ausgewählt
90
2.5.5 Zelle wird doppelt angeklickt
90
2.5.6 Tabellenblatt wird neu berechnet
91
3 Grundlagen der Programmierung mit VBA
93
3.1 Allgemeines
93
3.1.1 Codeblöcke auskommentieren
94
3.1.2 Zeilen zerlegen
95
3.2 Variablen und Datentypen
95
3.2.1 Namen, Werte
95
3.2.2 Deklarationen
96
3.2.3 Datentypen
96
3.2.4 Funktion »TypeName()«
100
3.2.5 Konstanten
101
3.2.6 Enumerationen
102
3.3 Operatoren
103
3.3.1 Arithmetische Operatoren
104
3.3.2 Vergleichsoperatoren
107
3.3.3 Logische Operatoren
109
3.3.4 Verkettungsoperator
111
3.3.5 Rangfolge der Operatoren
112
3.4 Verzweigungen
113
3.4.1 Einzeiliges »If … Then … Else«
113
3.4.2 If-Then-Else-Block
114
3.4.3 Select Case
116
3.5 Schleifen
118
3.5.1 Schleife mit »For … Next«
118
3.5.2 Schleife mit »Do … Loop«
122
4 Fehlerbehandlung
131
4.1 Eine Anwendung entwickeln
131
4.2 Syntaxfehler
132
4.3 Laufzeitfehler
133
4.3.1 Programm mit Laufzeitfehlern
133
4.3.2 Laufzeitfehler abfangen: »On Error«
135
4.4 Logische Fehler und Debugging
137
4.4.1 Einzelschrittverfahren
137
4.4.2 Haltepunkte
139
5 Mehr über die Programmierung mit VBA
141
5.1 Gültigkeitsbereiche
141
5.2 Datenfelder
143
5.2.1 Eindimensionale Datenfelder
144
5.2.2 Datenfeld sortieren
146
5.2.3 Mehrdimensionale Datenfelder
148
5.2.4 Dynamische Datenfelder
150
5.2.5 VBA-Funktion »Array()«
152
5.2.6 Datenfelder löschen oder freigeben
152
5.3 Prozeduren und Funktionen
154
5.3.1 Prozeduren
155
5.3.2 Parameter übergeben
157
5.3.3 Funktionen
159
5.3.4 Beispiel »Der letzte Tag im Monat«
161
5.3.5 Optionale Parameter
163
5.3.6 Benannte Parameter
165
5.3.7 Beliebig viele Parameter
167
5.3.8 Datenfelder als Parameter
168
5.3.9 Rekursive Prozeduren und Funktionen
170
5.4 Benutzerdefinierter Datentyp
171
5.5 Modular programmieren
174
5.5.1 Code in der gleichen Datei
174
5.5.2 Code in einer anderen Datei
175
5.6 Module exportieren und importieren
177
5.6.1 Ein Modul exportieren
178
5.6.2 Ein Modul importieren
178
6 Mehr über Objekte
181
6.1 Objektkatalog
181
6.2 Objekte referenzieren
182
6.2.1 Beispiel »Zellen verschieben«
183
6.3 Mit »With« auf Objekte zugreifen
184
6.4 Mit Objektvariablen arbeiten
185
6.4.1 Objektvariablen hierarchisch zuweisen
187
6.4.2 Neue Objekte erzeugen
188
6.4.3 Objekttyp ermitteln
189
6.5 For-Each-Schleife
190
6.6 Collections
192
6.7 Hauptobjekt »Application«
193
6.7.1 Anwendungspfad ausgeben
193
6.7.2 Prozedur zeitverzögert aufrufen
194
6.7.3 Excel-Anwendung schließen
194
6.8 Filtern
195
7 Diagramme und Grafiken
199
7.1 Diagramm erstellen
200
7.1.1 Diagrammblatt erstellen
200
7.1.2 Eingebettetes Diagramm erstellen
202
7.2 Diagramm ändern
204
7.2.1 Diagrammblatt ändern
204
7.2.2 Eingebettetes Diagramm ändern
208
7.3 Diagramm verwalten
208
7.3.1 Diagrammblatt verwalten
208
7.3.2 Eingebettetes Diagramm verwalten
210
7.4 Beispiel: Formatiertes Kreisdiagramm
211
7.5 Shapes
214
7.5.1 Rechteck
214
7.5.2 Oval
216
7.5.3 Linie
217
7.5.4 Verbinder
218
7.5.5 Geschlossene Freiform
220
7.5.6 Offene Freiform
221
7.5.7 Alle Formen
223
7.6 WordArt
224
7.7 Bedingte Formatierungen
226
7.7.1 Datenbalken
226
7.7.2 Zweifarbige Farbskala
227
7.7.3 Dreifarbige Farbskala
228
7.7.4 Symbolsatz
230
7.8 Sparklines
232
7.8.1 Linie
232
7.8.2 Spalte
233
7.8.3 Gewinn/Verlust
233
7.8.4 Formatierung
234
7.8.5 Alle Farben
235
7.9 SmartArt
236
7.10 Grafiken aus Bilddateien
237
7.10.1 Grafik einfügen
237
7.10.2 Grafik abschneiden
239
8 VBA- und Worksheet-Funktionen
243
8.1 Formeln zuweisen und lesen
244
8.1.1 Formeln zuweisen
244
8.1.2 Formeln lesen
245
8.2 Benutzereingaben
246
8.2.1 Funktion »InputBox()«
247
8.2.2 Methode »Application.InputBox()«
248
8.3 Einfacher Dialog mit dem Benutzer
251
8.3.1 Schaltfläche »OK«
252
8.3.2 Schaltflächen – eine Übersicht
252
8.3.3 Zeichen »Information«
253
8.3.4 Systemmodal
254
8.3.5 Schaltflächen »Ja« und »Nein«
254
8.3.6 Drei Schaltflächen einschließlich Default-Schaltfläche
255
8.3.7 Schaltflächen »Wiederholen« und »Abbrechen«
256
8.3.8 Schaltflächen »Abbrechen«, »Wiederholen« und »Ignorieren«
257
8.4 Zeichenketten
259
8.4.1 Zeichenketten umwandeln
260
8.4.2 Ausgabeformatierung
262
8.4.3 Datensätze zusammenfügen
264
8.4.4 Datensätze zerlegen
264
8.5 Datum und Uhrzeit
265
8.5.1 Rechnen mit Zeitangaben
265
8.5.2 Datumsangaben erstellen und Wochentage markieren
267
8.5.3 Jahreskalender
268
8.5.4 ISO-Kalenderwoche berechnen
270
8.5.5 Arbeitstage berechnen
271
8.6 Weitere Funktionen
273
8.6.1 Anwendung unterbrechen
273
8.6.2 Einheiten umrechnen
274
8.6.3 Zwischen Zahlensystemen umrechnen
276
8.6.4 Zellen zählen
277
8.6.5 Größte und kleinste Werte finden
278
8.6.6 Zahlen runden
279
8.6.7 Römische und arabische Zahlen umwandeln
280
9 Externe Daten
281
9.1 Ein Überblick
281
9.2 Einfache Textdateien
282
9.2.1 Einfache Textdateien schreiben
282
9.2.2 Einfache Textdateien lesen
284
9.3 CSV-Dateien
286
9.3.1 CSV-Dateien schreiben
286
9.3.2 CSV-Dateien lesen
288
9.4 Dateien mit wahlfreiem Zugriff
289
9.4.1 Benutzerdefinierten Datentyp erstellen
290
9.4.2 Datei mit allen Datensätzen erstellen
290
9.4.3 An beliebiger Stelle lesen
292
9.4.4 An beliebiger Stelle schreiben
294
9.5 Mit Dateien arbeiten
295
9.5.1 Dateien suchen und auflisten
295
9.5.2 Informationen über Dateien ermitteln
297
9.5.3 Operationen mit Dateien durchführen
298
9.5.4 Operationen mit Verzeichnissen ausführen
300
9.6 Daten mit MS Word austauschen
301
9.6.1 Objektmodell von Word
302
9.6.2 Word-Absätze schreiben
302
9.6.3 Word-Absätze lesen
304
9.6.4 Word-Tabelle schreiben
306
9.6.5 Word-Tabelle lesen
308
9.6.6 Internetseite lesen
310
9.7 Daten mit MS Outlook austauschen
311
9.7.1 Objektmodell von Outlook
312
9.7.2 Eine Arbeitsmappe als Anlage versenden
313
9.7.3 Integriertes E-Mail-Dialogfeld nutzen
314
9.7.4 Eine E-Mail zusammensetzen
315
9.7.5 Eine Serien-E-Mail erstellen
317
9.7.6 Bestimmten Zellbereich in E-Mail versenden
319
9.7.7 Auf Outlook-Verzeichnis zugreifen
321
9.7.8 Auf E-Mail-Anhänge zugreifen
322
9.7.9 Kontakt erzeugen
325
9.7.10 Auf Kontakte zugreifen
326
9.7.11 Termin erzeugen
327
9.7.12 Terminserie erzeugen
328
9.7.13 Auf Termine und Terminserien zugreifen
330
9.8 Daten mit MS Access austauschen
332
9.8.1 Beispieldatenbank: Aufbau
332
9.8.2 Beispieldatenbank: Verbindung herstellen
333
9.8.3 SQL-Befehle
334
9.8.4 Auswahlabfrage
334
9.8.5 Beispieldatenbank: Aktionsabfrage
336
9.8.6 Auswahl von Feldern und Datensätzen
338
9.8.7 Operatoren
339
9.8.8 Ergebnis sortieren
341
9.8.9 Ergebnis nach Eingabe
342
9.8.10 Ändern mit »UPDATE«
343
9.8.11 Einfügen mit »INSERT«
345
9.8.12 Löschen mit »DELETE«
345
9.9 Export in PDF-Dateien
347
9.9.1 Export einer Word-Datei
347
9.9.2 Export von Word-Dateien in einem Verzeichnis
348
9.9.3 Export einer Excel-Datei
349
9.9.4 Export von Excel-Dateien in einem Verzeichnis
350
9.9.5 Export von Dateien in einer Hierarchie
351
10 Dialogfelder
355
10.1 Integrierte Dialogfelder
355
10.1.1 Datei öffnen
356
10.1.2 Datei speichern unter
356
10.1.3 Hintergrundmuster für Zellbereich auswählen
357
10.1.4 Schriftformatierung für Zellbereich auswählen
358
10.2 Eigene Dialogfelder
359
10.2.1 Gestaltung des Dialogfelds
359
10.2.2 Code des Dialogfelds
361
10.2.3 Aufruf des Dialogfelds
361
10.2.4 Dialogfelder exportieren und importieren
362
10.3 Mit Steuerelementen arbeiten
363
10.3.1 Textfeld und Beschriftungsfeld
364
10.3.2 Optionsfeld und Kontrollkästchen
366
10.3.3 Liste, Bildlaufleiste und Drehfeld
369
10.3.4 Ausgabeformatierung
372
10.3.5 RefEdit und Umschaltfeld
374
11 Funktionen aus Excel 2021
377
11.1 Gleichmäßige Abfolge von Werten
377
11.2 Bereich mit zufälligen Werten
379
11.3 Alle unterschiedlichen Werte
382
11.4 Zellbereich filtern
384
11.5 Zellbereich sortieren
387
12 Beispielprojekte
391
12.1 Memory
391
12.1.1 Spielablauf
391
12.1.2 Aufbau des Spielfelds
393
12.1.3 Spiel starten
394
12.1.4 Spiel bedienen
397
12.2 Snake
400
12.2.1 Spielablauf
401
12.2.2 Aufbau des Spielfelds
402
12.2.3 Spiel starten
404
12.2.4 Spiel bedienen
408
12.3 Vokabeln
409
12.3.1 Programmablauf
409
12.3.2 Aufbau der Vokabelsammlung
410
12.3.3 Spiel starten
411
12.4 Puzzle
416
12.4.1 Ablauf des Puzzle-Spiels
416
12.4.2 Alle Bilder löschen
417
12.4.3 Schaltflächen für die Benutzer
418
12.4.4 Modulweite Variablen
419
12.4.5 Puzzle anzeigen und mischen
419
12.4.6 Benutzerin wählt ein Puzzle-Teil aus
423
12.4.7 Zwei Puzzle-Teile werden getauscht
424
12.4.8 Prüfen der Positionen
425
12.4.9 Zum nächsten Spiel
427
A Lösungen der Übungsaufgaben
429
Index
449