lehrerbibliothek.deDatenschutzerklärung
VBA mit Access   Datenbanken in professionelle Anwendungen verwandeln
Access mit VBA steuern und anpassen
Zeit sparen mit mehr als 50 Praxis-Codebeispielen 

HOT-STUFF-Bücher über 700.000 mal verkauft 
Die scharfen Praxislösungen
VBA mit Access


Datenbanken in professionelle Anwendungen verwandeln

Access mit VBA steuern und anpassen

Zeit sparen mit mehr als 50 Praxis-Codebeispielen



HOT-STUFF-Bücher über 700.000 mal verkauft

Die scharfen Praxislösungen



André Minhorst

Franzis' Verlag GmbH
EAN: 9783772372209 (ISBN: 3-7723-7220-1)
233 Seiten, paperback, 17 x 24cm, 2006

EUR 19,95
alle Angaben ohne Gewähr

Umschlagtext
Mithilfe von VBA verwandeln Sie einfache Access-Datenbanken in professionelle Anwendungen. Wenn Sie mehr wollen, als die Standardvorlagen und Datenbank-Assistenten von Access hergeben, bietet Ihnen VBA ungeahnte Möglichkeiten. Das Handwerkszeug dazu finden Sie in diesem Buch.



VBA ist die gemeinsame Programmiersprache von Microsoft Office und - im Vergleich mit anderen Sprachen - schnell gelernt. Dieses Buch zeigt Ihnen, wie Sie Access mit VBA effektiver nutzen, gezielt erweitern und Ihren individuellen Bedürfnissen anpassen können.



Neben den wichtigsten Programmiergrundlagen finden Sie hier eine umfangreiche VBA-Referenz und ein Kapitel mit vielen Tipps und Tricks aus der täglichen Praxis, die Ihnen jede Menge Zeit ersparen.



Aus dem Inhalt

- Einstieg in die VBA-Programmierung mit Access

- Routinen im Detail

- Variablen und Konstanten

- Codestrukturen

- Fehlerbehandlung

- VBA-Code in Access

- VBA erweitern

- Objektorientierte Programmierung

- API

- Tipps & Tricks mit mehr als 50 Code-Beispielen

- VBA-Referenz
Rezension
Visual Basic for Applications (kurz: VBA) ist eine Programmiersprache für Office-Anwendungen (wie z.B. Access, Word, Excel oder Outlook). Mit Hilfe von VBA lassen sich Arbeitsschritte und Abläufe automatisieren und dadurch erheblich bescheunigen. Das schöne an VBA ist, dass es (auch für Einsteiger) relativ leicht erlernbar ist. Das Buch "VBA mit Access" vermittelt die Grundlagen der Programmiersprache VBA und setzt dabei den Schwerpunkt auf die Anwendung mit Access. Strukturiert und begleitet von Screenshots bekommt man mit diesem Werk eine gute Einführung zum Thema. Man erfährt alles Wichtige, was zum erfolgreichen Arbeiten nötig ist. Gewappnet mit diesem Grundlagenwissen fällt die Vertiefung in die Materie (z.B. über Webseiten im Internet oder auch anderen Büchern) dann nicht mehr schwer. Das verständlich geschriebene Werk macht Spaß beim Erlernen.

Erwin Ferrao, lehrerbibliothek.de
Inhaltsverzeichnis
Vorwort 15


1 Einstieg in die VBA-Programmierung mit Access 17


1.1 Programmieren in Access? 17

1.2 Wohin mit dem Code? 17

1.3 Auf zur Entwicklungsumgebung 18

1.4 Direktaufruf oder Ereignisprozedur 18

1.5 VBA-Projekte 21

1.6 Standardmodule, Klassenmodule, Formularmodule und Berichtsmodule 21

1.7 Sub-Prozeduren, Function-Prozeduren, Methoden und Routinen 23


2 Routinen im Detail 25


2.1 Gute Routinen 25

2.2 Name = Funktion der Routine 26

2.3 Input und Output 27

2.4 Rückgabewerte von Function-Prozeduren 29

2.5 Rückgabeparameter 30

2.6 Wert oder Referenz? 31


3 Variablen 33


3.1 Gültigkeitsbereich und Lebensdauer von Variablen 34

3.2 Wert- und Referenztypen 36

3.3 Arrays 37

3.4 Benutzerdefinierte Typen 38

3.5 Variablennamen 39


4 Konstanten 41


5 Code-Strukturen 43


5.1 Bedingungen 43

5.2 Schleifen 45

5.3 Sonstiges 49


6 Fehlerbehandlung 51


6.1 Fehlerbehandlung von Laufzeitfehlern 51

6.2 Wirkungsbereich der Fehlerbehandlung 52

6.3 Das Objekt Err 52

6.4 Fortfahren nach einem Fehler 53

6.5 Benutzerdefinierte Fehler 53

6.6 Weitere Fehlerinformationen 53


7 VBA-Code in Access 55


7.1 Ereignisse 55

7.2 Auf Access-Objekte zugreifen 56


8 VBA erweitern 59


8.1 Verweise 59

8.2 Übersicht dank Objektkatalog 60

8.3 Early und Late Binding 61


9 Objektorientierte Programmierung 63


9.1 Eigene Objekttypen - warum? 64

9.2 Klassenmodule 65


10 API 73


10.1 Die Prozedurbibliotheken von Windows 73

10.2 Wo finde ich die API-Prozedur für meine Zwecke? 74

10.3 Beispiele für den Einsatz von API-Funktionen 76


11 Tipps und Tricks 85


11.1 Access macht Pause 85
Timeout per Formular 85
Kaffeepäuschen dank API 85

11.2 Aktuelles Datenbankobjekt ermitteln 86
Die Funktionen CurrentObjectType und CurrentObjectName 86
Einsatzbereiche 86

11.3 Alles zu seiner Zeit mit DoEvents 87
Betriebssystem, übernehmen Sie! 87
Praxisbeispiel: Fortschrittsbalken 87

11.4 Anwendungsdaten aus der Registry auslesen 87
Einzelnen Registry-Eintrag lesen 87
Alle Registry-Einträge für einen Bereich einer Anwendung lesen 88

11.5 Anwendungsdaten aus der Registry löschen 88
Registry-Eintrag löschen 88

11.6 Anwendungsdaten in der Registry speichern 89
Registryeintrag schreiben 89

11.7 Ausblenden des Datenbankfensters 89

11.8 Ausgabe von Anwendungen auf der Kommandozeile in Variable umleiten 90
Beispieldatenbank 90
Aus der Kommandozeile lesen 90

11.9 Benutzerdefinierte Fehler 93
Beispieldatenbank 93
Was sind benutzerdefinierte Fehler? 93
Fehler auslösen 94

11.10 Beständige Haltepunkte 95

11.11 Dateidialog per VBA öffnen 95
Datei öffnen-Dialog per API 96

11.12 Dateien mit richtiger Anwendung öffnen 98

11.13 Datumsfunktionen 99
Ausgabe des Wochentages 99
Alternative Ausgabe des Wochentages 100

11.14 Direktfenster für die Anwendung 100
Beispieldatenbank 100
Funktionen flexibel aufrufen 100

11.15 DoCmd.RunSQL und CurrentDB.Execute 101
Grundsätzliches 101
Einfache Beispiele 101
Abfragen mit Parametern 101
Gespeicherte Abfragen ausführen 102
Fehlerbehandlung 102

11.16 Ersten Buchstaben einer Zeichenkette groß schreiben 103

11.17 Externe Dateien drucken 104

11.18 Fehler in SQL-Anweisungen in VBA finden 104
Fehler finden per Abfrage 104
Wirkungsvoll bei längeren Abfragen 105

11.19 Formularcode ausgeben 105

11.20 Formularfelder auskundschaften 106
Funktion zur Ausgabe von Formular- und Steuerelementeigenschaften 107

11.21 Funktionen mit mehreren Rückgabewerten 108
Funktionsaufbau 108
Rückgabe per Parameter 108
Funktionsergebnis als Array zurückgeben 109
Funktionsergebnis per Variablenklasse 110

11.22 GUIDs erstellen 111

11.23 Interne Fehlermeldungen umgehen 112
Fehler in Formularen 113

11.24 Komplette Textdatei einlesen 113
Beispieldatenbank 114
Textfile lesen mit Input$ 114

11.25 Montag und Freitag der Woche zu einem bestimmten Datum ermitteln 114
Montag der Woche 114
Freitag der Woche 115

11.26 Nicht mehr benötigte Ereignisprozeduren finden 115
Ereignisprozeduren finden und entsorgen 115
Datenbankobjekte per VBA kopieren 116
Objekte im Datenbankfenster kopieren 116
Objekt per VBA kopieren 116

11.27 Optionale Parameter in Funktionen und Prozeduren 117
Optionale Parameter des Datentyps 'String' 117
Interpretation eines leeren optionalen Parameters 118
Optionale Zahlenparameter 118
Wahr oder falsch? 118
Wichtig: die Reihenfolge 119

11.28 Property-Deklarationen auf die Schnelle 119
Replace mit Access 97 120
Die Funktion Replace97 120

11.29 Schnell Werte abfragen mit DLookup 121
DLookup ohne Angst 121
DLookup easy 121
Wer zuerst kommt, mahlt zuerst 121
Dlookup mit Abfragen 122
Zahlen und Strings als Kriterium 122
DLookup mit Variablen 122

11.30 SELECT CASE in Ausdrücken 123
Kein verschachteltes Wenn mehr durch Choose und Switch 123
Die Switch-Funktion 123
Die Choose-Funktion 123

11.31 Status von Steuerelementen per Einzeiler steuern 124
Eigenschaften setzen per Boolean 124

11.32 Tabellen verknüpfen per VBA 125
Verknüpfen per VBA-Funktion 125

11.33 Textdateien zeilenweise lesen 126
Einlesen von Textdateien 127

11.34 Textdateien erstellen 127
Erstellen von Textdateien 127
Ausgabe ohne Anführungszeichen 128

11.35 Text an Datei anhängen 128
Anhängen einer Zeile an eine bestehende Textdatei 128
Einsatzgebiet 128

11.36 Umgebungsvariablen setzen und lesen per VBA 128
Beispieldatenbank 129
Umgebungsvariablen per API schreiben 129
Umgebungsvariablen per API lesen 129
Anwenden der Funktionen 130

11.37 Umrechnung des Datums von Windows zu Unix und zurück 130
Umrechnung per VBA-Funktion 130

11.38 Verknüpfung im Startmenü anlegen 131
Startmenüeintrag anlegen 131

11.39 Verknüpfung löschen per VBA 131
Verknüpfung lösen per VBA-Funktion 132

11.40 Verweise per Code anpassen 132
Beispieldatenbank 132
Verweise ausgeben 133
Verweise prüfen 133
Verweis hinzufügen 133
Verweis entfernen 134

11.41 Verzeichnisauswahl per VBA 134
Beispieldatenbank 134
Verzeichnisse auswählen per API 134
Verzeichnisse und Dateien 136
Dateiname und Verzeichnis der aktuellen Datenbank ermitteln 136
Dateiendungen massenweise ändern 137

11.42 Vorhandensein von Objekten prüfen 137
Is Nothing or Is Not Nothing 137
11.43 Wer hat Angst vor der bösen Null? 138
Nullwerte mit Nz() entschärfen 138
Datum-Nullwerte 139

11.44 Zahlen in Zeichenketten 139
Führende Zahlen ermitteln 139
Erste führende Zahl ermitteln 140

11.45 Alle enthaltenen Zahlen ermitteln 140

11.46 Zeit messen, aber genau! 140
Zeit messen per API 140
Beispiel: Wie lang ist eine Sekunde? 141
Zur aufgerufenen Prozedur und zurück 142
Mit Tastenkombination geht's schneller 142

11.47 Beziehungen auflisten mit VBA 142
Die Relations-Auflistung 142

11.48 Fehler bei SQL und Wahr oder Falsch 143
Beispieldatenbank 143
Umwandeln von bool'schen Werten verhindern 143

11.49 Fehlermeldung bei Aktionsabfragen abfangen 144

11.50 INSERT INTO mit UNION-Abfragen 145
Wie es nicht funktioniert 145
und wie Sie es besser machen! 145
INSERT INTO UNION per VBA 146
Querydef als Recordset 146
Beispielkonfiguration 146
Vom Querydef zum Recordset 146

11.51 Automatisierter Dateidownload 147
Beispieldatenbank 147
Halbautomatisierter Download 147
Vollautomatisierter Download 147
Downloaddatei in der Datenbank speichern 148
Dateien aus Datenbank exportieren 149

11.52 Tabellen auflisten per VBA 150
Die TableDefs-Auflistung benutzen 150

11.53 Tabelle mit Kalenderdaten 151
Beispieldatenbank 151
Die Tabelle tblKalenderdaten 151
Die Funktion KalenderdatenSchreiben 151


12 VBA-Referenz 153


Abs 153
AppActivate 153
Array 154
Asc 154
AscW 155
Atn 155
Beep 156
Calendar 156
CallByName 156
CBool 157
CByte 157
CCur 158
CDate 159
CDbl 159
CDec 160
ChDir 160
ChDrive 161
Choose 162
CInt 162
CLng 163
Close 163
Cos 163
CreateObject 164
CSng 164
CStr 165
CurDir 165
CVar 166
CVDate 166
CVErr 166
DateAdd 167
DateDiff 168
DatePart 169
DateSerial 170
DateValue 171
Day 171
DeleteSetting 172
Dir 172
DoEvents 173
EOF 173
Erase 174
Eval 174
Exp 175
FileAttr 175
FileCopy 176
FileDateTime 177
FileLen 177
Filter 177
Fix 178
Format 179
FormatCurrency 179
FormatDateTime 180
FormatNumber 180
FormatPercent 181
FreeFile 182
Get 182
GetAllSettings 183
GetAttr 184
GetObject 184
GetSetting 185
Hour 185
Ilf 186
IMEStatus 186
Input 186
Input # 187
InputBox 188
InStr 189
InStrRev 190
Int 190
IsArray 191
IsDate 191
IsEmpty 192
IsError 193
IsMissing 193
IsNull 194
IsNumeric 194
IsObject 195
Join 196
Kill 196
LBound 197
Left 197
Len 197
Line Input # 198
Loc 198
LOF 199
Log 199
Mid 200
Minute 200
MkDir 201
Mod 201
Month 202
MonthName 202
MsgBox 203
Now 204
Open 204
Partition 206
Print# 207
Put 208
QBColor 208
Randomize 209
Replace 210
Reset 210
RGB 211
Right 211
RmDir 212
Rnd 212
Round 212
SaveSetting 213
Second 213
Seek 214
SendKeys 214
SetAttr 215
Sgn 216
Shell 216
Sin 217
Space 217
Split 218
Sqr 218
StrComp 219
StrReverse 219
Switch 220
Tab 220
Tan 220
Timer 221
TimeSerial 221
TimeValue 222
TypeName 222
UBound 222
Val 223
VarType 223
Weekday 224
WeekdayName 225
Write# 226
Year 227