Access XP – Das Buch
H:/Sybex/Access_XP/DasBuchNeu.3d***8.6.2001***13:36:21 Format: A4 596 x 842 pts Original: 476.22 x 680.315 pts *setpagedevice*
Manfred Hoffbauer/Christoph Spielmann
Access XP – Das Buch
Fast alle Hard- und Software-Bezeichnungen, die in diesem Buch erw!hnt werden, sind gleichzeitig auch eingetragene Warenzeichen und sollten als solche betrachtet werden. Der Verlag folgt bei den Produktbezeichnungen im Wesentlichen den Schreibweisen der Hersteller. Der Verlag hat alle Sorgfalt walten lassen, um vollst!ndige und akkurate Informationen in diesem Buch bzw. Programm und anderen evtl. beiliegenden Informationstr!gern zu publizieren. SYBEXVerlag GmbH, D,sseldorf, ,bernimmt weder die Garantie noch die juristische Verantwortung oder irgendeine Haftung f,r die Nutzung dieser Informationen, f,r deren Wirtschaftlichkeit oder fehlerfreie Funktion f,r einen bestimmten Zweck. Ferner kann der Verlag f,r Sch!den, die auf eine Fehlfunktion von Programmen, Schaltpl!nen o.0. zur,ckzuf,hren sind, nicht haftbar gemacht werden, auch nicht f,r die Verletzung von Patent- und anderen Rechten Dritter, die daraus resultiert. Projektmanagement: Simone Schneider Endkontrolle: Gerald Bosch, D,sseldorf Satz: reemers publishing services gmbh, Krefeld Umschlaggestaltung: Guido Kr,sselsberg, Ratingen Farbreproduktionen: More Colour, Meerbusch Belichtung, Druck und buchbinderische Verarbeitung: Bercker, Grafischer Betrieb, Kevelaer ISBN 3-8155-0166-0 1. Auflage 2001 Dieses Buch ist keine Original-Dokumentation zur Software der Firma Microsoft. Sollte Ihnen dieses Buch dennoch anstelle der Original-Dokumentation zusammen mit Disketten verkauft worden sein, welche die entsprechende Microsoft-Software enthalten, so handelt es sich um Raubkopien der Software. Benachrichtigen Sie in diesem Fall umgehend Microsoft GmbH, Edisonstr. 1, 85716 Unterschleißheim. Auch die Benutzung einer Raubkopie kann strafbar sein. Der Verlag und Microsoft GmbH Alle Rechte vorbehalten. Kein Teil des Werks darf in irgendeiner Form (Druck, Fotokopie, Mikrofilm oder in einem anderen Verfahren) ohne schriftliche Genehmigung des Verlags reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielf!ltigt oder verbreitet werden. Printed in Germany Copyright C 2001 by SYBEX-Verlag GmbH, D,sseldorf
Projektbersicht
Vorwort
XXIII
Direkt loslegen
Kapitel 1
1
Daten verwalten
Kapitel 2
27
Daten auswerten und prsentieren
Kapitel 3
105
Tabellen
Kapitel 4
167
Abfragen
Kapitel 5
251
Formulare
Kapitel 6
329
Berichte
Kapitel 7
427
Datenzugriffsseiten
Kapitel 8
475
Eine Datenbank verwalten
Kapitel 9
505
Datenaustausch
Kapitel 10
611
Mit Bildern und anderen Objekten arbeiten
Kapitel 11
645
Access im Netzwerk
Kapitel 12
657
Makroprogrammierung
Kapitel 13
677
Spezifikationen von Access XP
Anhang A
785
Neuerungen in Access XP
Anhang B
791
Index
795
V
Inhalt
Vorwort
XXIII
Direkt loslegen
1
Kapitel 1
Was Sie mitbringen mssen
2
In fnf Minuten zur ersten Datenbank
2 3 4
Access starten Kontaktverwaltung entwerfen
Mit der Kontaktverwaltung arbeiten Kontakte einsehen Neue Kontakte eingeben Datens%tze bearbeiten Datens%tze l&schen Datens%tze drucken
13 13 15 17 18 18
Das Datenbankfenster &ffnen
20
Symbole anordnen
22 23
Datenbankfenster schließen
Wie geht es jetzt weiter?
23 23 24 24 25
Weitere Pauschall&sungen Datenbanken individuell gestalten Das Internet-Angebot der Autoren Weitere Service-Leistungen zu Microsoft Access
Daten verwalten
27
Kapitel 2
Datenbank im Schnelldurchgang
28 28 28 30
Datenbank anlegen Tabelle erstellen Daten in die Tabelle eingeben
Was ist eine Datenbank?
31 31
Was ist Access?
VII
Inhalt
Relationale Datenbanken
32 32 33 37 40 43 47
Tabellen Vorgehensweise Projektdatenbank erneut ffnen Die Entwurfsansicht einer Tabelle verstehen Weitere Datenfelder anlegen Den Tabellenentwurf ndern
Mit dem Datenblatt der Adressentabelle arbeiten Ein Datenblatt ffnen Den Aufbau eines Datenblatts verstehen Die Symbolleiste in der Datenblattansicht benutzen Nach Datenfeldern sortieren Gemeinsamkeiten von auswahlbasierten, formularbasierten und Spezialfiltern Zeilenhhe und Spaltenbreite ndern
In der Datenblattansicht den Tabellenentwurf ndern Projektetabelle anlegen Besonderheiten bei der Datenbearbeitung
Daten auswerten und pr sentieren
Kapitel 3
Abfragen Was ist eine Abfrage? Der Aufbau des Abfrageentwurfsfensters Das Prinzip der Abfrage Datenstze und -felder auswhlen Abfrage speichern und ausf-hren Daten im Datenblatt bearbeiten Das Layout des Abfragedatenblatts ndern Spalten hinzuf-gen Spalten und Zeilen lschen Spalten anordnen Spalten ausblenden Ein Abfragedatenblatt sortieren Eine Und-Verkn-pfung von Abfragekriterien durchf-hren Eine Oder-Verkn-pfung von Abfragekriterien durchf-hren Abfragen f-r verkn-pfte Tabellen entwerfen
VIII
H:/Sybex/Access_XP/DasBuchNeu.3d***8.6.2001***14:45:28 Format: A4 596 x 842 pts Original: 476.22 x 680.315 pts *setpagedevice*
48 49 50 51 66 70 74 81 82 99 105 106 106 107 109 110 115 116 117 117 117 118 119 120 122 124 125
Inhalt
Nachtr%gliches Erg%nzen einer Abfrage um eine weitere Tabelle Das Datenblatt einer Abfrage drucken
Formulare erstellen und anwenden
129 130 132 133 135 137 137
Mit nur vier Mausklicks zum Formular Formular anwenden Einspaltige Formulare erstellen Tabellarische Formulare erstellen Formulare im Layout eines Datenblatts erstellen Der Formular-Assistent von Access
Formulare fr Daten aus mehreren Tabellen erstellen Darstellung einer 1:n-Beziehung in einem Formular Darstellung einer 1:n-Beziehung in zwei synchronisierten Formularen Darstellung zweier relational verknpfter Tabellen als n:1-Beziehung
Datenausgabe mit Berichten
142 143 146 148 150 151 160 164
Berichte mit dem Berichts-Assistenten erstellen Adressetiketten drucken Eigene Etikettengr&ßen definieren
Tabellen
127 129
167
Kapitel 4
Tabelle manuell entwerfen
169
Tabellendefinition
170 170 171 173 177 178 179 179 180 180 181
Tabelle anlegen Die Symbolleiste im Tabellenentwurf Eigenschaften einer Tabelle Unterdatenbl%tter Tabellendefinition speichern Tabelle umbenennen Tabelle kopieren Tabelle verschieben Tabelle l&schen Tabellendefinition drucken
IX
Inhalt
Felder definieren Feldname Felddatentyp Der Feld-Generator Felder einfgen und l&schen
Feldeigenschaften Feldgr&ße bei Textfeldern Feldgr&ße bei Zahlenfeldern Format Besonderheiten bei Datumsangaben Dezimalstellen Eingabeformat Beschriftung Standardwert Gltigkeitsregel Gltigkeitsmeldung Eingabe erforderlich Leere Zeichenfolge Indiziert Neue Werte
Schlssel definieren Prim%rschlssel definieren Zusammengesetzte Prim%rschlssel Prim%rschlssel %ndern und l&schen Sekund%rschlssel 9bersicht aller Indizes Zusammengesetzte Sekund%rschlssel
Tabellendefinition nachtr%glich %ndern Felder einfgen Felder umbenennen Felder l&schen Felddatentyp %ndern
Tabellen verknpfen Relationale Verknpfung
Beziehungen Beziehung definieren Tabellen und Abfragen hinzufgen X
181 181 181 183 184 185 186 186 188 190 190 190 191 191 192 193 193 194 194 194 194 195 196 197 198 198 200 201 202 202 202 202 204 204 205 205 205
Inhalt
207 208 208 209 209 209 211 211 211 216
Die Symbolleiste des Dialogs Beziehungen Alle oder nur direkte Beziehungen anzeigen Layout ver%ndern Layout speichern Layout l&schen Beziehung definieren Beziehung %ndern Beziehung l&schen Verknpfungseigenschaften Beziehungstyp
Referenzielle Integrit%t
217 219
Aktualisierungsweitergabe und L&schweitergabe
Der Tabellen-Assistent
220 221 222 222 223 224 225
Tabellen-Assistent starten Beispieltabelle ausw%hlen Tabellenname und Prim%rschlssel definieren Beziehungen definieren Ansicht ausw%hlen Tabellen nachbearbeiten
Der Nachschlage-Assistent
226 226 227
Nachschlage-Assistent starten Adresse nachschlagen
Der Tabellenanalyse-Assistent
230 231 232 233
Tabellenanalyse-Assistent starten Tabelle automatisch analysieren Tabelle manuell analysieren
Hyperlinks in einer Tabelle speichern
240 240 241 241 247 248
Was ist ein Hyperlink? Hyperlink-Felder anlegen Hyperlinks einfgen Hyperlinks bearbeiten Optionen fr Hyperlinks in Datenbl%ttern
XI
Inhalt
Abfragen
Kapitel 5
Abfrage manuell entwerfen Entwurfsansicht &ffnen Eine bestehende Abfrage modifizieren Das Abfragefenster Die Symbolleiste des Abfragefensters
Tabellen und Abfragen hinzufgen Tabellen und Abfragen hinzufgen Tabellennamen anzeigen Feldlisten und ihre Eigenschaften Tabellen und Abfragen entfernen Beziehungen festlegen
Spalten ausw%hlen und anordnen Spalten hinzufgen Feldeigenschaften festlegen Spalten ausblenden Spalten l&schen Spalten anordnen Das Sternchen
Abfrageeigenschaften Beschreibung Alle Felder ausgeben Spitzenwerte Keine Duplikate und eindeutige Datens%tze Ausfhrungsberechtigungen Datens%tze sperren Datensatzgruppentyp ODBC-Wartezeit Filter und Sortiert nach Max Datens%tze
Abfragekriterien definieren Vergleiche Andere Kriterien Kriterien kombinieren
Abfrage sortieren XII
251 255 255 256 256 257 258 258 259 259 260 261 262 262 263 265 265 266 266 267 268 268 268 268 268 268 268 269 269 269 269 270 274 276 278
Inhalt
Abfrage speichern und ausfhren
279
Berechnete Felder
279
Duplikate unterbinden
281
Datens%tze gruppieren
282 283 285 286 286
Abfragefunktionen Daten gruppieren Mehrere Gruppenkriterien Abfragekriterien bei Gruppenbildung
Kreuztabellenabfragen Kreuztabellenabfragen aus Auswahlabfragen entwickeln Kreuztabellenabfrage direkt entwerfen Spaltenberschriften fixieren
290 290 295 297
Wann kann ein Dynaset bearbeitet werden?
298
Parameter in Abfragekriterien
300
Aktionsabfragen
303 305 310 314 318
Tabellenerstellungsabfrage Aktualisierungsabfragen Anfgeabfragen L&schabfrage
Die SQL-Ansicht des Abfragefensters
322 323 324 324 324
SQL-Anweisungen bearbeiten SQL-Anweisungen verwenden Abfragen importieren Unterschiede in Access-SQL
Abfrage dokumentieren
325
Die PivotTable-Ansicht und die PivotChart-Ansicht
326
XIII
Inhalt
Formulare
Kapitel 6
Warum Formulare?
330
Formular entwerfen
331 332 334 334 336 337 339 341 343 343
Ansichten eines Formulars Objektorientierte Philosophie Die Symbolleiste Das Eigenschaftenfenster Objekte formatieren Die Feldliste Die Toolbox Formulare speichern und schließen Formulare umbenennen, kopieren und l&schen
Mit Steuerelementen arbeiten Steuerelemente markieren Steuerelemente verschieben Gr&ße eines Steuerelements %ndern Lineale Raster Steuerelemente duplizieren, kopieren und l&schen Steuerelemente gruppieren Steuerelementtyp %ndern Hilfetexte und Tips zu Steuerelementen anzeigen Aktivierreihenfolge %ndern Standardeigenschaften von Steuerelementen %ndern Formate bertragen Automatisch formatieren Formulare als Vorlage fr neue Formulare verwenden
Die Steuerelementtypen im Einzelnen Bezeichnungsfelder Textfelder Kombinations- und Listenfelder Kontrollk%stchen, Optionsfelder und Umschaltfl%chen Optionsgruppen Befehlsschaltfl%chen Unterformulare und -berichte Gebundene Objektfelder Ungebundene Objektfelder Bilder Linien und Rechtecke XIV
329
344 345 345 348 349 349 351 352 352 353 354 355 357 358 360 361 361 363 371 381 383 385 390 396 398 399 400
Inhalt
400 401 404 411 414
Seitenwechsel Register Diagramme Kalender Web-Browser
Formularbereiche und -eigenschaften
416 416 417 417 417 419 419 419 421
Formularbereiche einblenden Formularkopf Seitenkopf Detailbereich Seitenfuß Formularfuß Bereichseigenschaften Formulareigenschaften
Formulare optimieren Berichte
425 427
Kapitel 7
Bericht entwerfen
428
Ansichten eines Berichts
431 431 432 433
Seitenansicht Layoutvorschau Entwurfsansicht
Bericht speichern
433
Besondere Steuerelementeigenschaften
435 435 437 438
Duplikate ausblenden Laufende Summe Vergr&ßerbar und verkleinerbar
Besondere Steuerelementtypen
439 439 439 439
Befehlsschaltfl%chen Umschaltfl%chen Seitenwechsel
XV
Inhalt
Berichtsbereiche und -eigenschaften Berichtsbereiche einblenden Berichtskopf Seitenkopf Gruppenkopf Detailbereich Gruppenfuß Seitenfuß Berichtsfuß Bereichseigenschaften Berichtseigenschaften
Daten sortieren Sortierreihenfolge entwerfen Bereiche fr Sortierkriterien Sortierung %ndern
Daten gruppieren Gruppieren mit dem Berichts-Assistenten Daten manuell gruppieren Gruppierung %ndern Bereiche fr Gruppenkriterien
447 447 449 449 450 450 451 453 453
Daten markieren
455
Beispiel: Projekte eines Jahres
457 457 459
Beispielabfrage entwerfen Beispielbericht entwerfen
Mehrspaltige Berichte und Formulare Mehrspaltige Berichte entwerfen Seitenansicht mehrspaltiger Berichte
Unterberichte und -formulare Hauptberichte Unterberichte Verwenden von Haupt- und Unterbericht Verknpfen von Haupt- und Unterbericht >ndern des Unterberichts
XVI
439 440 440 440 441 441 441 441 442 442 444
467 468 470 471 472 472 472 472 473
Inhalt
Datenzugriffsseiten
475
Kapitel 8
Beispiele fr Datenzugriffsseiten ansehen
476 477 479 480 481 482 483
Artikel mit Access anzeigen Artikel mit dem Internet Explorer anzeigen Artikel nach Kategorie Kundenbestellungen nach Firma anzeigen Umsatzanalyse Verkaufszahlen
Datenzugriffsseiten per Assistent entwerfen
484 484 484 489
Vorgehensweise Assistenten Die Datenzugriffsseite speichern
Den Entwurf einer Datenzugriffsseite %ndern Eine 9berschrift erg%nzen Die Eigenschaften der Seite bearbeiten Einen Lauftext erg%nzen Steuerelemente anordnen Einen Beschriftungsbereich einblenden Neue Felder hinzufgen Felder aus der Datenherkunft l&schen Neue Datenfelder hinzufgen Einen neuen Bereich fr die Felder der Projektetabelle anlegen Erweiterungseigenschaften festlegen Ein Summenfeld hinzufgen
Steuerelemente einer Datenzugriffsseite und ihre Eigenschaften Eine Datenbank verwalten
489 490 491 492 495 495 497 498 499 500 501 502 504 505
Kapitel 9
Das Datenbankfenster anwenden
506 506 507 508 508
Die Symbolleiste des Datenbankfensters Verknpfung zu einem Datenbankobjekt erstellen Datenbankobjekte in der Taskleiste Objekte ein- und ausblenden Die Ansicht und Anordnung von Symbolen im Datenbankfenster %ndern
510 XVII
Inhalt
Standard-Aktionen von Objekten Eigenschaften von Datenbankobjekten und Datenbanken Nach Datenbanken suchen Ein 9bersichtsformular fr die Datenbank erstellen Startparameter einer Datenbank
Access konfigurieren Allgemeine Optionen Objektnamen-Autokorrektur Optionen im Register Bearbeiten/Suchen Optionen fr Tabellen und Abfragen Optionen fr die Tastatur
Men- und Symbolleisten verwenden Men- und Symbolleisten anordnen Men- und Symbolleisten per Drag & Drop ver%ndern
Men- und Symbolleisten anpassen Symbolleisten zurcksetzen Men- und Symbolleisten ein- und ausblenden Neue Symbolleisten anlegen Symbole hinzufgen Neue Menleisten anlegen Neue Kontextmens anlegen Men- und Symbolleisten umbenennen Men- und Symbolleisten l&schen Eigenschaften von Men- und Symbolleisten Optionen fr Men- und Symbolleisten Schaltfl%chensymbole bearbeiten Schaltfl%chensymbole l&schen Den Namen eines Schaltfl%chensymbols %ndern Schaltfl%chensymbole gruppieren Eigenschaften von Schaltfl%chensymbolen
Die Rechtschreibung von Daten berprfen und korrigieren Zu prfende Daten ausw%hlen W&rterbcher verwalten Sprache ausw%hlen Texte w%hrend der Eingabe automatisch korrigieren
XVIII
510 511 513 516 520 522 524 525 526 528 529 530 532 534 536 536 537 537 538 540 543 545 545 546 547 548 550 550 551 551 552 553 554 554 555
Inhalt
Einstellungen fr Seiten und internationale Einstellungen
557
Eine Datenbank sichern
557
Eine Datenbank konvertieren
558
Eine Datenbank komprimieren
560
Eine Datenbank reparieren
563 563 563 564
Wiederherstellen nach einem Abbruch von Access Wiederherstellen nach einem Festplattenfehler Wiederherstellen der Systemdatenbank
Eine Datenbank ver- und entschlsseln
565
Eine Datenbank schtzen
566 567 569 570 571 577 577 580 582 584 585
Eine Datenbank durch ein Kennwort schtzen Eine Datenbank in eine .mde-Datei konvertieren Das Sicherheitssystem von Access Datensicherheits-Assistent Manuelle Konfiguration des Sicherheitssystems Die Arbeitsgruppen-Informationsdatei Anmeldeverfahren aktivieren Benutzergruppen verwalten Benutzer verwalten Zugriffsberechtigungen zuweisen und entziehen Den Eigentmer einer Datenbank und ihrer Objekte einsehen und %ndern Benutzer, Benutzergruppen und Zugriffsrechte dokumentieren Sicherungsmaßnahmen testen
588 589 591
Eine Datenbank dokumentieren
592
Eine Datenbank replizieren
594 594 595 599 601 603
Was bedeutet Replizieren? Eine Datenbank replizieren Mit replizierten Datenbanken arbeiten Replizierte Datenbanken synchronisieren Datenkonflikte l&sen XIX
Inhalt
Datenbanken ber den Aktenkoffer von Windows replizieren und synchronisieren
Eine Datenbank aufteilen
607
Die Leistung einer Datenbank analysieren
609
Datenaustausch
Kapitel 10
611
Die Zwischenablagen von Windows und Office XP
612
Tabellen verknpfen
615
Dateien und Tabellen importieren
618
Verknpfen und Importieren von Access-Tabellen und anderen Datenbankobjekten dBASE-Tabellen verknpfen und importieren FoxPro-Tabellen verknpfen und importieren ODBC-Daten verknpfen und importieren Verknpfte Tabellen l&schen Kalkulationstabellen verknpfen und importieren Textdateien mit Trennzeichen verknpfen und importieren Textdateien mit festgelegtem Format verknpfen und importieren
619 621 622 623 624 624 628 632
Tabellen exportieren
634
Seriendruck mit Word
634 635
Word XP
Daten in Word weiterbearbeiten
636
Daten in Excel analysieren
637
HTML exportieren, importieren und verknpfen
638 638 640
Exportieren von Objekten in statische HTML-Dateien Importieren und Verknpfen von HTML-Dateien
Exportieren in XML-Dokumente Verknpfung mit Outlook und Exchange XX
605
641 642
Inhalt
Mit Bildern und anderen Objekten arbeiten
645
Kapitel 11
Einfhrung
646 646 649 649
OLE Automatisierung Dynamischer Datenaustausch
Objekte einbetten
650 650 654
OLE-Objekte einfgen und bearbeiten Bearbeiten eingebetteter Objekte verhindern
Objekte verknpfen
655 655
Verknpftes Objekt erstellen
Access im Netzwerk
657
Kapitel 12
Access im Netzwerk bedienen
658 659 661 662 665
Datenbanken &ffnen Datenbankobjekte bearbeiten Daten im Netzwerk bearbeiten Anzeige aktualisieren
Access im Netzwerk programmieren
665 666 667
Entfernte Tabellen verknpfen Netzwerkeigenschaften von Access programmieren
Access am SQL-Server Projekte mit einem SQL-Server MSDE oder der SQL-Server im Lieferumfang von Access OLE DB, ADO und ODBC
Makroprogrammierung
669 670 672 674 677
Kapitel 13
Das erste Makro
680
Makroerstellung im Detail
683 687 690
9bersicht aller Makro-Aktionen Editieren von Makros
XXI
Inhalt
Grundlagen der Makroprogrammierung Ausdrcke und Funktionen Verweise auf Objekte Erstellen von Ausdrcken mit dem Ausdrucks-Editor Bedingungen Gruppen-Makros Fehlersuche Ereignisse
Makroprogrammierung in der Praxis
692 692 712 727 731 736 737 739 745 745 776 781
Arbeiten mit Makros in Formularen Arbeiten mit Makros in Berichten Tastenbelegungs-Makros
Spezifikationen von Access XP
Anhang A
785
Neuerungen in Access XP
Anhang B
791
Index
Produktivit%t und Effizienz
792
Datenzugriff und Analyse
792
Programmierung und Entwicklung
793 795
XXII
Vorwort
Vorwort
Liebe Leserinnen und Leser, vielen Dank f,r Ihr Vertrauen, das Sie in uns Autoren und das vorliegende Buch setzen. Wir haben uns sozusagen im voraus alle M,he gegeben, Sie nicht zu entt!uschen. Seit nunmehr sieben Jahren schreiben wir f,r Sie ,ber Microsoft Access und haben mehr Freude denn je daran. Die Erfahrung aus ungez!lten Leserbriefen – inzwischen d,rften es mehrere hundert sein – zeigt: Unsere Leser wissen Qualit!t zu sch!tzen. Deshalb haben wir das vorliegende Buch !ußerst sorgf!ltig auf Access XP ,berarbeitet und legen besonderen Wert auf die Belange der Einsteiger. Mit dem Rundgang in den ersten drei Kapiteln dieses Buchs arbeiten Sie sich an praktischen Beispielen orientiert in die Benutzung von Microsoft Access XP ein. Das Access XP Buch enth!lt eine vollst!ndige Beschreibung aller Programmfunktionen der aktuellen Datenbank von Microsoft und ist daher bestens als Nachschlagewerk geeignet. Da es sich zus!tzlich zu dem umfassenden Nachschlageteil auch mit fortgeschrittenen Techniken der Datenverwaltung und der Makroprogrammierung besch!ftigt, kDnnen Sie dieses Buch ,ber mehrere Jahre hinweg einsetzen. Mit der tatkr!tigen Unterst,tzung von AndrI Minhorst haben wir alle Neuerungen von Access XP in das Buch eingearbeitet. Sie werden mit diesem Buch gut zurechtkommen, wenn Access XP Ihre erste Datenbank ist. Aber auch als Umsteiger von einer anderen Datenbank oder von fr,heren Access-Versionen werden Sie umfassend informiert.
Sicherheitshinweis Wir haben alle in diesem Buch beschriebenen Verfahren und Techniken sowie die auf der CD enthaltene Software nach bestem Ermessen gepr,ft, getestet und st!ndig verbessert. Dennoch sollten Sie sich dar,ber im Klaren sein, dass wir nat,rlich keinen Beta-Test im Stil der großen Software-H!user durchf,hren kDnnen. Wir ,bernehmen daher keine Gew!hrleistung f,r die Richtigkeit der im Buch beschriebenen Verfahren und Techniken oder der Software auf der beiliegenden CD. F,r Verbesserungsvorschl!ge sind wir jedoch jederzeit dankbar. Damit wir Ihr Access-XP-Buch auch in Zukunft kontinuierlich verbessern kDnnen, senden Sie uns bitte Ihre Meinung zu. Wenden Sie sich per Mail an manfred.
[email protected], oder senden Sie ein Fax an 0211/171 93 58. Manfred Hoffbauer und Christoph Spielmann
XXIV
Direkt loslegen Was Sie mitbringen mssen In fnf Minuten zur ersten Datenbank Mit der Kontaktverwaltung arbeiten Das Datenbankfenster &ffnen Symbole anordnen Wie geht es jetzt weiter? Die Benutzeroberfl%che von Access
2 2 13 20 22 23 24
1
Direkt loslegen
Ein seit jeher bekanntes Handicap von Datenbanken wie Access besteht darin, dass diese Programme eine Menge Wissen voraussetzen, bevor der Anwender ,berhaupt etwas machen kann. Access XP zeigt, dass es auch anders geht. In diesem Kapitel erfahren Sie, wie Sie sehr rasch zu Ihrer ersten Datenbank kommen.
Was Sie mitbringen m/ssen Voraussetzungen f r die Arbeit mit Access
Bevor Sie mit Access so richtig loslegen kDnnen, m,ssen Sie, d.h. eigentlich Ihr PC, folgende Voraussetzungen erf,llen: Ihr PC muss den Hardware-Anforderungen von Access XP entsprechen. Das bedeutet: die Hauptspeicherausstattung (RAM) sollte zus!tzlich zu den Mindestanforderungen f,r das Betriebssystem (Windows 98: 24 MByte; Windows ME und Windows NT 4.0: 32 MByte; Windows 2000: 64 MByte) f,r jede Office-Applikation, die sie parallel benutzen noch einmal 8 MByte hinzugef,gt werden. F,r Access allein w!re das 8 MByte. Nutzen Sie auch Word und Excel parallel zu Access, so kommen noch einmal 16 MByte dazu. F,r eine Windows ME Installation bedeutet dies: 32 MByte + 8 MByte (Access) + 8 MByte (Word) + 8 MByte (Excel) = 56 MByte Hauptspeicherausstattung als Minimum. Festplattenspeicher muss ebenfalls ausreichend vorhanden sein (je nach Installationsvariante zwischen 100 und 200 MByte). Dabei darf aber nicht ,bersehen werden, das f,r die eigentlichen Datenbanken ebenfalls noch Speicherplatz benDtigt wird. Auf Ihrem PC muss Windows 98, ME (oder hDher) oder Windows NT 4.0 (und Service Pack 6) oder Windows 2000 installiert sein. Außerdem wird der Internet Explorer ab Version 4.01 (einschließlich des Service Pack 1) benDtigt. Außerdem m,ssen Sie nat,rlich Access XP (deutschsprachige Version) installiert haben. Wenn Sie sicher sind, dass diese drei Voraussetzungen erf,llt sind, kDnnen Sie jetzt an dieser Stelle weitermachen.
In f/nf Minuten zur ersten Datenbank Damit Sie schnell und effektiv einen anschaulichen Pberblick ,ber die Leistungsmerkmale von Access gewinnen, legen Sie in den folgenden Minuten eine Beispieldatenbank zur Verwaltung Ihrer Kontakte an. Sie gehen dazu wie folgt vor:
2
1
Sie starten Access.
2
Sie entwerfen mit dem Datenbank-Assistenten eine Datenbank zur Verwaltung von Kontakten.
3
Sie drucken eine Liste Ihrer Kontakte auf Papier.
In fnf Minuten zur ersten Datenbank
Access starten Der Start von Access erfolgt ,ber die Taskleiste von Windows. Klicken Sie auf die Schaltfl!che Start, und w!hlen Sie den Befehl Microsoft Access aus der Liste. Je nachdem, wie Sie Access installiert haben, kann sich der Befehl auch hinter einem anderen Befehl verbergen. In vielen F!llen heißt der Befehl Programme > Microsoft Access.
Abb. 1.1 Access starten
Kurze Zeit nach der Auswahl des Eintrags Microsoft Access aus der Taskleiste von Windows erscheint das Programmfenster von Access auf dem Bildschirm. Access Dffnet automatisch einen Dialog, ,ber den Sie eine neue Datenbank erstellen oder eine bestehende Datenbank Dffnen kDnnen. Mit der Option Leere Access-Datenbank beginnen Sie den manuellen Entwurf einer neuen Datenbank. Das gibt Ihnen die MDglichkeit, eine neue Datenbank individuell zu gestalten. Zum Einstieg in Access sollten Sie sich jedoch f,r eine der beiden anderen Optionen entscheiden. Unter der Option Datei > ffnen kDnnen Sie eine auf Ihrer Festplatte gespeicherte Datenbank Dffnen. Sie haben damit beispielsweise die MDglichkeit, eine der im Lieferumfang von Access enthaltenen Beispieldatenbanken zu Dffnen.
Startdialog
Neue Datenbank entwerfen
Bestehende Datenbank ffnen
3
Direkt loslegen
Abb. 1.2 Der Startdialog von Access
Datenbankassistent starten
Die mit Mit Vorlage beginnen beschrifteten Option bietet weitere MDglichkeiten zum Entwurf einer neuen Datenbank. Nur ist Ihnen in diesem Fall der DatenbankAssistent von Access dabei behilflich. Da dies f,r den Einstieg genau das Richtige ist, klicken Sie jetzt die Option Mit Vorlage beginnen an.
Kontaktverwaltung entwerfen Neue Datenbank anlegen
Nachdem Sie im Startdialog die Option Mit Vorlage beginnen ausgew!hlt haben, Dffnet Access den Dialog Vorlagen. Innerhalb dieses Dialogs ist das Register Allgemein markiert. Hier sehen Sie Symbole mit der Beschriftung Leere Datenbank, Datenzugriffsseite, Projekt (Bestehende Datenbank) und Projekt (Neue Datenbank). Wenn Sie bereits mit einer fr,heren Version von Access gearbeitet haben, ist der Begriff Projekt neu f,r Sie. Ein Access-Datenbank-Projekt ist eine neue Datenbankart. Es steht im Gegensatz zu bisherigen Access-Datenbanken, in denen s!mtliche Objekte wie Tabellen, Abfragen, Formulare, Berichte usw. enthalten sind. In einem Projekt werden nur noch Formulare, Berichte, Makros, Module und die ebenfalls neuen Seiten verwaltet, nicht aber die eigentlichen Daten. Diese werden in entsprechenden Objekten in einer SQL-Server-Datenbank organisiert. Erst mit einem Klick auf das Register Datenbanken zeigt Access eine Palette von vordefinierten Datenbanken an, die Sie quasi auf Mausklick vom Datenbank-Assistenten erstellen lassen kDnnen. Verwenden Sie die vertikale Rolleiste, um einen Pberblick ,ber die Anwendungsgebiete f,r die Beispieldatenbanken zu gewinnen. Außerdem kDnnen Sie auf die in Tabelle 1.1 gezeigten Symbole klicken, um zwischen verschiedenen Ansichten der Beispieldatenbanken zu wechseln.
4
In fnf Minuten zur ersten Datenbank
Abb. 1.3 Der Datenbankassistent von Access
Ansichten des Datenbanken-Assistenten
Symbol
Bedeutung Zeigt die Beispieldatenbanken als große Schaltfl!chen an (vergleiche Abbildung 1.3). Zeigt eine Liste der Beispieldatenbanken an. Zeigt Details zu den Beispieldatenbanken an. Tabelle 1.1
Die in Tabelle 1.1 aufgef,hrten Ansichten stimmen mit den im Explorer von Windows verf,gbaren Ansichten weitgehend ,berein. Wenn Sie sich mit Windows bereits ein wenig auskennen, werden Ihnen weitere Parallelen in der Benutzeroberfl!che von Access nicht verborgen bleiben. Sie kDnnen den Datenbank-Assistenten sp!ter erneut aufrufen, um weitere Datenbanken wie beispielsweise eine Bestellabwicklung oder eine Lagerverwaltung zu erstellen. Um die folgenden Abschnitte mDglichst problemlos nachvollziehen zu kDnnen, sollten Sie sich an dieser Stelle jedoch f,r die Kontaktverwaltung entscheiden. Zum Entwurf der Kontaktverwaltung haben Sie folgende MDglichkeiten:
Datenbank zur Kontaktverwaltung erstellen
Sie f,hren einen Doppelklick auf den Eintrag Kontaktverwaltung durch oder Sie markieren den Eintrag Kontaktverwaltung und klicken auf die Schaltfl!che OK.
5
Direkt loslegen
Access Dffnet in beiden F!llen den Dialog Neue Datenbankdatei, mit dem Sie einen Ordner und einen Namen f,r die neue Datenbank vergeben.
Abb. 1.4 Der Dialog Neue Datenbankdatei
Pber das Kombinationsfeld und die Symbole im oberen Teil des Dialogs kDnnen Sie das Laufwerk und den Ordner ausw!hlen, in dem Access die neue Datenbank anlegen soll. Wenn Sie bereits mit Windows 95/98/NT und ggf. auch Office 95 oder 97 gearbeitet haben, erkennen Sie schnell einige bekannte Elemente. Der Dialog zur Anlage von neuen Dateien ist allerdings – wie der Dialog zum Rffnen und Speichern von Dateien – um eine vertikale Symbolleiste im linken Teil erweitert worden. Mithilfe dieser Symbole kDnnen Sie schneller zu bestimmten Ordnern navigieren. Die Symbole werden in Tabelle 1.2 erl!utert. Wenn Sie zuvor mit einer anderen Office-XP-Anwendung gearbeitet haben, werden Sie feststellen, dass der Dialog zur Anlage von neuen Dateien der gleiche wie bei den anderen Anwendungen ist. Wenn Sie sich noch nicht so gut mit Windows auskennen, dann werden Sie sich dar,ber freuen, dass Access von Haus aus neue Datenbanken im Ordner Eigene Dateien speichert. Damit Sie Ihre Datenbanken auch wiederfinden, l!dt Access bestehende Datenbanken standardm!ßig aus demselben Ordner. Es ist daher nicht unbedingt notwendig, dass Sie sich mit dem Dialog Neue Datenbankdatei weiter auseinandersetzen. Davon einmal abgesehen, ist der Dialog weitgehend selbsterkl!rend. Der Vollst!ndigkeit halber enth!lt Tabelle 1.2 eine Pbersicht der Symbole des Dialogs.
6
In fnf Minuten zur ersten Datenbank
Symbole des Dialogs Datei > Neue Datenbank
Symbol
Bedeutung W!hlt das aktuelle Laufwerk und den aktuellen Ordner aus. Wechselt zum zuletzt geDffneten Ordner. Wechselt zum ,bergeordneten Ordner. Rffnet den Internet-Explorer. LDscht die markierte Datei. Erstellt einen neuen Ordner. Rffnet eine Liste mit weiteren Befehlen zum Einstellen der Ansicht der Dateiliste. Rffnet eine Liste mit weiteren Befehlen zum LDschen, Umbenennen, zur Aufnahme einer Datenbank in die Favoritenliste und zum Verbinden von Netzlaufwerken. Wechselt zum Ordner Verlauf. In diesem Ordner befindet sich zu jeder aufgerufenen Datenbank ein Shortcut. Wechselt zum Ordner Eigene Dateien. Hier werden Ihre Datenbanken standardm!ßig gespeichert. Wechselt zum Ordner Desktop. Wenn Sie Ihre Datenbank hier speichern, wird diese direkt auf dem Desktop erstellt. Wechselt zum Ordner der Favoriten. Die Eintr!ge, zu denen Shortcuts in diesem Ordner angelegt werden, legen Sie selbst ,ber den Befehl Extras > Zu Favoriten hinzuf1gen fest. Wechselt zum Webordner. Dieses beinhaltet ausschließlich Angaben in Form von Internet-Adressen. Tabelle 1.2
7
Direkt loslegen
Dateiname
Access gibt im Kombinationsfeld Dateiname des Dialogs standardm!ßig einen von der jeweiligen Datenbank abh!ngigen Text vor, z.B. Kontaktverwaltung1. Das Kombinationsfeld Dateityp gibt an, um welche Datei es sich handelt. In der Regel werden Sie es mit Microsoft-Access-Datenbanken zu tun haben. Der eigentliche Dateiname besteht aus dem unter Dateiname angegebenen Text und der typspezifischen Erweiterung. Hier kommt die Erweiterung .mdb zum Einsatz, welche f,r Microsoft DataBase (engl. f,r Datenbank) steht. Sie kDnnen den vorgegebenen Dateinamen ,bernehmen oder unter Ber,cksichtigung der Namenskonventionen von Windows einen anderen eingeben. Ob im Feld Dateiname der Dateiname mit (z.B. Kontaktverwaltung.mdb) oder ohne Endung angegeben wird, h!ngt von den Einstellungen des Windows-Explorers ab. Im Abschnitt Projektdatenbank erneut 4ffnen in Kapitel 2 Daten verwalten erfahren Sie, wie Sie diese Einstellung !ndern kDnnen.
Hinweis
Weitere Hinweise zum Rffnen von und zur Suche nach Datenbanken finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs unter der Pberschrift Das Datenbankfenster anwenden. Nachdem Sie die Namensvorgabe mit einem Klick auf die Schaltfl!che Erstellen best!tigt haben, folgt eine Reihe von Dialogseiten, mit denen Sie weitere Einzelheiten der neuen Datenbank einstellen kDnnen. Der erste Dialog enth!lt dabei lediglich den Hinweis, dass die neue Datenbank Kontakt- und Anrufinformationen speichert. Sie kDnnen diesen Dialog mit einem Klick auf die Schaltfl!che Weiter best!tigen.
Das Datenbankfenster
Zu diesem Zeitpunkt hat der Assistent die neue Datenbank bereits angelegt. Sie erkennen dies daran, dass im Hintergrund des Dialogs das so genannte Datenbankfenster angezeigt wird. Da die Datenbank noch keine Objekte enth!lt, ist das Datenbankfenster noch weitgehend leer. Hier finden sich lediglich drei Eintr!ge, die mit Erstellt eine Tabelle... beginnen. Die Bedeutung dieser Eintr!ge wird im Abschnitt Eine Tabelle anlegen in Kapitel 2 Daten verwalten beschrieben. Neben diesen Eintr!gen werden Sie hier sp!ter die vom Assistenten erstellten Tabellen, Formulare und Berichte finden. Wenn Sie den Vorgang vor dem Erstellen der Datenbankobjekte abbrechen, wird allerdings die leere Datenbank Kontaktverwaltung1.mdb ,brigbleiben. Sie kDnnen diese dann beispielsweise mit dem Explorer von Windows lDschen. Der Assistent erstellt in der neuen Datenbank eine oder mehrere Tabellen, in der Access Ihre Daten speichert. Ein Dialog bietet eine Auswahlliste der Felder, die der Assistent in der Kontaktverwaltung f,r erforderlich h!lt. Die Liste enth!lt dar,ber hinaus kursiv dargestellte Felder, die Sie zus!tzlich ausw!hlen kDnnen. Wenn Sie beispielsweise das Geburtsdatum von Personen oder Mobiltelefonnummern in der Datenbank speichern wollen, dann kreuzen Sie die entsprechenden Feldnamen mit einem Mausklick an.
8
In fnf Minuten zur ersten Datenbank
Abb. 1.5 Felder ausw!hlen
Im Falle der Kontaktverwaltung werden mehrere Tabellen eingerichtet, deren Eintr!ge Sie nach Ihren W,nschen ausw!hlen kDnnen. Um die Eintr!ge einer anderen als der Tabelle Kontaktinformationen zu !ndern, klicken Sie einfach auf den entsprechenden Tabellennamen im Listenfeld Datenbanktabellen. Sofort werden in der Liste auf der rechten Seite des Fensters die Felder der gew!hlten Tabelle angezeigt.
Abb. 1.6 Stil f r die Bildschirmanzeige ausw!hlen
9
Direkt loslegen
Stil f r die Bildschirmanzeige
Nach einem Klick auf die Schaltfl!che Weiter Dffnet der Assistent einen Dialog, mit dem Sie einen Stil f,r die Bildschirmanzeige ausw!hlen kDnnen. Klicken Sie nacheinander auf die aufgef,hrten Stile und beobachten Sie, wie sich die Anzeige im linken Teil des Dialogs !ndert. Er enth!lt eine Art Vorschau, die einen Eindruck davon vermittelt, wie die vom Assistenten zu entwerfenden Formulare sp!ter aussehen. F,r das Beispiel markieren Sie den Eintrag Standard und klicken Sie auf die Schaltfl!che Weiter.
Abb. 1.7 Stil f r den Ausdruck ausw!hlen
Stil f r die Druckausgabe
Mit dem folgenden Dialog w!hlen Sie ebenfalls einen Stil aus. Hier geht es jedoch nicht um die Bildschirmanzeige, sondern um den Ausdruck auf Papier. Der Assistent verwendet den ausgew!hlten Stil f,r den Entwurf der Berichte in der Kontaktverwaltung. Sie kDnnen sp!ter weitere Beispieldatenbanken entwerfen, um die Auswirkung der verschiedenen Stile einmal auszuprobieren. An dieser Stelle markieren Sie den Eintrag Gesch7ftlich und klicken auf die Schaltfl!che Weiter. Die letzten beiden Dialogseiten des Datenbank-Assistenten haben vergleichsweise wenig Erkl!rungsbedarf. Auf der vorletzten Dialogseite kDnnen Sie einen Namen f,r die Datenbank eingeben. Beachten Sie, dass es sich hierbei nicht um den Dateinamen handelt, unter dem Access die Datenbank auf Ihrer Festplatte speichert, sondern vielmehr um den Namen, den Access sp!ter im Pbersichtsformular der Datenbank anzeigt. Weiterhin kDnnen Sie hier angeben, ob in den Berichten ein Bild erscheinen soll. Falls ja, kreuzen Sie zun!chst das Kontrollk!stchen an. Rffnen Sie dann durch Bet!tigen der Bild...-Schaltfl!che den Grafik einf1gen-Dialog und w!hlen Sie ein Bild aus. Dieses Bild wird zun!chst in der linken, oberen Ecke Ihrer Berichte plaziert. Selbstverst!ndlich kDnnen Sie die Position des Bildes nach Fertigstellung der Datenbank nach eigenen W,nschen ver!ndern.
10
In fnf Minuten zur ersten Datenbank
Abb. 1.8 Datenbankname und Bild f r die Berichte ausw!hlen
Auf der letzten Dialogseite bestimmen Sie ,ber zwei Kontrollk!stchen, ob Access die neue Datenbank automatisch Dffnen und Hilfe zur Benutzung der Datenbank anzeigen soll. Das erste Kontrollk!stchen ist standardm!ßig angekreuzt, das zweite nicht. Sie kDnnen sich die beiden Dialogseiten mit weiteren Mausklicks auf die Schaltfl!che Weiter anschauen. Wenn Sie den Vorgang abk,rzen wollen, klicken Sie an dieser Stelle direkt auf die Schaltfl!che Fertig stellen.
Datenbank automatisch ffnen
Abb. 1.9 Das Startformular der Kontaktverwaltung
11
Direkt loslegen
Es dauert einen Moment, bis der Assistent die neue Datenbank erstellt hat. Je nachdem, wie schnell Ihr PC ist, kDnnen Sie w!hrenddessen beobachten, wie nacheinander die einzelnen Tabellen im Datenbankfenster erscheinen. Wenn der Assistent seine Arbeit abgeschlossen hat, wird die neue Datenbank automatisch geDffnet und das Startfenster erscheint auf dem Bildschirm.
Startformular
Tipp
Datenbankfenster
Pause machen
Die Titelleiste des Startfensters tr!gt die Pberschrift Haupt1bersicht. Da solche Fenster bei Access Formulare heißen, wird das Startfenster zuk,nftig als Startformular bezeichnet. Das Startformular enth!lt eine Reihe so genannter Befehlsschaltfl!chen, ,ber die Sie Befehle ausf,hren kDnnen. Bei der Haupt,bersicht der Kontaktverwaltung handelt es sich um ein so genanntes Pbersichtsformular. Wenn Sie sp!ter eigene Pbersichtsformulare erstellen wollen, dann schlagen Sie im Abschnitt Ein 9bersichtsformular f1r die Datenbank erstellen in Kapitel 9 Eine Datenbank verwalten dieses Buchs nach. Im unteren Teil des Access-Fensters finden Sie ein verkleinertes Fenster mit der Titelleiste Kontaktverwaltung. Hierbei handelt es sich um das Datenbankfenster, das Sie im weiteren Verlauf dieses Kapitels noch besser kennen lernen. Vorher sollen Sie jedoch erfahren, wie Sie die Datenbank beenden und eine Pause einlegen kDnnen. Klicken Sie auf die Schaltfl!che Diese Datenbank schließen und beobachten Sie, wie Access die Haupt,bersicht und das Datenbankfenster schließt. Zum Beenden von Access haben Sie unter anderem folgende MDglichkeiten: W!hlen Sie den Befehl Datei > Beenden aus der Men,leiste, oder bet!tigen Sie die Tastenkombination A$, oder w!hlen Sie den Befehl Schließen aus dem Systemmen, des Access-Fensters oder f,hren Sie einen Doppelklick auf das Systemmen,feld durch.
Wenn Sie außerdem Windows beenden wollen, dann w!hlen Sie den Befehl Beenden aus dem Men, Start der Taskleiste.
Hinweis
12
Sie sollten Access und Windows immer ,ber die daf,r vorgesehenen Befehle beenden. Schalten Sie Ihren PC erst dann aus, wenn Windows heruntergefahren ist. Sie erkennen dies daran, dass Windows den Text Sie k4nnen den Computer jetzt ausschalten. anzeigt. Wenn Sie Ihren PC ausschalten, w!hrend Access und eine Datenbank noch geDffnet sind, kann dabei Datenverlust auftreten. Manchmal geht dabei sogar die gesamte Datenbank verloren. Wenn ein solches Problem doch einmal beispielsweise durch einen Stromausfall auftreten sollten, lesen Sie Kapitel 9 Eine Datenbank verwalten dieses Buchs. Dort finden Sie weitere Hinweise zum Reparieren einer Datenbank.
Mit der Kontaktverwaltung arbeiten
Mit der Kontaktverwaltung arbeiten In diesem Abschnitt Dffnen Sie die mit dem Assistenten erstellte Datenbank zur Kontaktverwaltung, um Kontakte einzusehen und zu bearbeiten. Falls das nicht bereits geschehen ist, m,ssen Sie die Datenbank zun!chst Dffnen: 1
Starten Sie Access.
2
Klicken Sie im Startfenster unter Datei 4ffnen auf die Kontaktverwaltung1.
Kontaktverwaltung ffnen
Abb. 1.10 Kontaktverwaltung ffnen
Kurze Zeit nach dem Rffnen der Datenbank zeigt Access wieder die Haupt,bersicht der Datenbank und das auf SymbolgrDße verkleinerte Datenbankfenster an.
Kontakte einsehen In der Haupt,bersicht ist von Kontakten noch nicht viel zu sehen. Um die in der Datenbank gespeicherten Kontakte einsehen zu kDnnen, m,ssen Sie zun!chst auf die Befehlsschaltfl!che Kontaktpersonen eingeben/anzeigen klicken. Beobachten Sie, wie Access das Formular mit der Titelleiste Kontaktpersonen Dffnet.
13
Direkt loslegen
Abb. 1.11 Kontaktpersonen einsehen und bearbeiten
Was Sie auf dem Bildschirm (oder in Abbildung 1.11) sehen, ist ebenfalls ein Formular. Es handelt sich im Unterschied zur Haupt,bersicht jedoch nicht um ein Formular zur Steuerung der Kontaktverwaltung, sondern um ein typisches Formular zur Datenbearbeitung. Es enth!lt beschriftende Texte wie beispielsweise Vorname, Nachname und Firma. Neben den Beschriftungen finden Sie Felder zur Eingaben von Daten. Da Sie die Datenbank soeben erst erstellt haben, enth!lt diese allerdings noch keine Daten. Im Abschnitt Neue Kontakte eingeben erfahren Sie, wie Sie neue Daten eingeben kDnnen. Vorher lernen Sie noch, welche Funktion die Navigationsschaltfl!chen im unteren Teil des Formulars haben. Im linken unteren Teil des Formulars Kontaktpersonen finden Sie die so genannten Navigationsschaltfl!chen. Da Sie noch keine Kontakte eingegeben haben, wird in dem Zahlenfeld als aktuelle Datensatznummer die 1 angezeigt. Auch der Text von 1 weist darauf hin, dass sich derzeit nur dieser eine, leere Datensatz in der Datenbank befindet. Wenn Sie sp!ter weitere Datens!tze eingegeben haben, wird hinter dem Text von die Gesamtanzahl der vorhandenen Datens!tze angezeigt. Mit den in Tabelle 1.3 aufgef,hrten Navigationsschaltfl!chen kDnnen Sie dann in den Daten bl!ttern.
14
Mit der Kontaktverwaltung arbeiten
Navigationsschaltfl%chen im Formular Kontaktpersonen
Schaltfl!che
Wirkung Zeigt den ersten Kontakt an. Zeigt den vorhergehenden Kontakt an. Zeigt den nachfolgenden Kontakt an. Zeigt den letzten Kontakt an. Positioniert auf einen neuen Kontakt. Tabelle 1.3
Im unteren Teil des Formulars Kontaktpersonen finden Sie die Befehlsschaltfl!che 2, mit der Sie auf die zweite, sonst nicht sichtbare, Seite des Formulars wechseln kDnnen. Die zweite Formularseite enth!lt u.a. Felder f,r die Eingabe der Kontaktart, einer E-Mail-Adresse und einer Anmerkung. Durch einen Mausklick auf die Befehlsschaltfl!che 1 gelangen Sie wieder zur ersten Formularseite. Access speichert die Daten ,brigens nicht im Formular, sondern in der dem Formular zugrundeliegenden Datentabelle. Was solche Tabellen sind und wie Sie selbst Tabellen entwerfen, erfahren Sie in Kapitel 2 Daten verwalten dieses Buchs. Bis dahin sollten Sie sich aber noch ein wenig mit der Bearbeitung von Kontakten besch!ftigen.
Die zwei Seiten des Formulars Kontaktpersonen
Hinweis
Neue Kontakte eingeben Das Formular enth!lt nun fast nur leere Felder und Sie kDnnen mit der Eingabe des ersten Kontaktes beginnen. Probieren Sie das ruhig einmal aus. Geben Sie einen Vornamen, einen Namen usw. ein. Eine Besonderheit ist hier das Feld Kontakt-Nr. Es enth!lt beim neuen Datensatz den Wert AutoWert. Da Access den Wert dieses Feldes automatisch vergibt, kDnnen Sie es nicht bearbeiten. Die Ursache daf,r besteht darin, dass es sich hierbei um ein so genanntes AutoWert-Feld handelt, in dem Access eine fortlaufende Nummer hochz!hlt. Access zeigt den AutoWert an, sobald Sie eine Eingabe in eines der Felder des Formulars t!tigen. Wenn Sie den neuen Kontakt durch die Auswahl des Befehls Datens7tze > Datensatz speichern oder das Bet!tigen der Tastenkombination H speichern, wird er zum Bestandteil der Datenbank. Durch einen erneuten Klick auf das entsprechende Symbol kDnnen Sie dann wieder zu einem neuen Kontakt wechseln und weitere Daten eingeben.
AutoWert Feld
Datensatz speichern
15
Direkt loslegen
Abb. 1.12 Ein neuer Kontakt
Eine Besonderheit von Access gegen,ber den meisten anderen Datenbankprogrammen besteht darin, dass es zus!tzlich zu den in der Datenbank gespeicherten einen neuen Kontakt anzeigt. Dies war auch beim ersten Kontakt, den Sie eingegeben haben, der Fall. Wenn Sie bereits mehrere Kontakte eingegeben haben, kDnnen Sie auf den neuen Kontakt positionieren, indem Sie auf die entsprechende Navigationsschaltfl!che klicken. Abbildung 1.13 zeigt das Formular, nachdem bereits mehrere Datens!tze eingegeben wurden. Wie Sie der Abbildung entnehmen kDnnen, handelt es sich bei dem aktuellen Datensatz um den dritten von sechs Datens!tzen.
16
Mit der Kontaktverwaltung arbeiten
Abb. 1.13 Einer von mehreren Datens!tzen
Datens%tze bearbeiten Wenn Sie die Daten eines bestimmten Kontaktes !ndern wollen, dann m,ssen Sie zun!chst mit den Navigationsschaltfl!chen auf ihn positionieren. Das Formular zeigt dann die Felder eines Kontaktes an. Das 0ndern einzelner Felder erfolgt nun ganz einfach dadurch, dass Sie auf einen Eintrag klicken, damit Access die blinkende Einf,gemarke anzeigt. Dann stehen Ihnen die unter Windows ,blichen Tasten zur Bearbeitung des Textes zur Verf,gung. Im linken Teil des Formulars finden Sie eine graue Fl!che, in der Access ein schwarzes Dreieck anzeigt. Es handelt sich hierbei um den so genannten Datensatzmarkierer, der Aufschluss ,ber den aktuellen Status eines Datensatzes gibt. Auch wenn das in diesem Fall nicht direkt erkennbar ist, listet Access in einigen Formularen und in der Datenblattansicht manchmal mehrere Datens!tze auf. Es gibt dann eine Reihe von Datensatzmarkierern, die untereinander angezeigt werden. Das ist der Grund daf,r, dass man auch von einer Indikatorspalte spricht.
Datensatzmarkierer
In dem Augenblick, in dem Sie an einem der dargestellten Felder 0nderungen vornehmen, !ndert sich der Datensatzmarkierer von einem schwarzen Dreieck in einen symbolisierten Stift. Sie kDnnen das als Hinweis darauf verstehen, dass die 0nderungen noch nicht endg,ltig in der Datenbank gespeichert wurden. Solange Access den Stift anzeigt, kDnnen Sie die 0nderungen durch das Bet!tigen der E-Taste oder einen Klick auf das R1ckg7ngig-Symbol wieder r,ckg!ngig machen.
&nderungen r ckg!ngig machen
17
Direkt loslegen
Access speichert die 0nderungen an einem Datensatz automatisch, wenn Sie auf einen anderen Datensatz positionieren oder das Formular schließen. Alternativ kDnnen Sie die 0nderungen auch explizit speichern, indem Sie auf den Datensatzmarkierer klicken. Der symbolisierte Stift !ndert sich dann wieder in ein schwarzes Dreieck. Weitere Hinweise zu den unter Windows ,blichen Tasten zur Datenbearbeitung und zur Bedeutung des Datensatzmarkierers finden Sie in Kapitel 2 Daten verwalten dieses Buchs.
Datens%tze l&schen Manchmal ist es erforderlich, einen in der Datenbank gespeicherten Datensatz zu lDschen. Dies ist beispielsweise vorstellbar, wenn Sie den Kontakt zu einer Person verlieren oder einen Kontakt versehentlich doppelt eingegeben haben. Um einen Datensatz zu lDschen, gehen Sie wie folgt vor: 1
Positionieren Sie mit den Navigationsschaltfl!chen auf den Datensatz, den Sie lDschen wollen.
2
Klicken Sie in der Symbolleiste auf die Schaltfl!che Datensatz l4schen.
3
Best!tigen Sie die Warnung, dass sich das LDschen nicht r,ckg!ngig machen l!sst, mit einem Klick auf die Schaltfl!che Ja.
Abb. 1.14 Diese Warnung zeigt Access vor dem Lschen eines Kontaktes an
Mit dem LDschen des Datensatzes gehen alle Daten von der ersten und zweiten Formularseite verloren. Da es keine MDglichkeit gibt, diesen Vorgang r,ckg!ngig zu machen, sollten Sie wirklich nur die Datens!tze lDschen, die Sie nicht mehr benDtigen.
Datens%tze drucken
18
Neben der Anzeige und Bearbeitung von Daten ist die Ausgabe auf dem Drucker eine der wichtigsten Funktionen einer Datenbank. Der Datenbank-Assistent hat daher eine Reihe so genannter Berichte erstellt, die f,r die Ausgabe der Kontakte auf Papier bestens geeignet sind.
Mit der Kontaktverwaltung arbeiten
Bevor Sie sich diese Berichte ansehen kDnnen, m,ssen Sie das Formular Kontaktpersonen zun!chst durch einen Mausklick auf das Symbol Schließen in der rechten oberen Ecke des Fensters schließen. Wenn das geschehen ist, zeigt Access wieder die Haupt,bersicht der Kontaktverwaltung an. Klicken Sie hier auf die Befehlsschaltfl!che mit der Beschriftung Berichtsvorschau, um eine Pbersicht der Druckberichte zu erhalten.
Kontaktformular schließen
Abb. 1.15 (bersicht der Berichte
Die Handhabung der in der Kontakverwaltung gespeicherten Berichte soll exemplarisch anhand des ersten Berichts in der Pbersicht erl!utert werden. Um ihn zu Dffnen, klicken Sie auf die Befehlsschaltfl!che Vorschau f1r Bericht Alphabetische Liste der Kontaktpersonen. Access Dffnet ein weiteres Fenster, das die Daten in der Weise anzeigt, wie Sie sie drucken kDnnen. Es handelt sich hierbei um die so genannte Seitenansicht des Berichts. Um den Bericht aus der Seitenansicht auszudrucken, klicken Sie auf das Drucken-Symbol.
Bericht drucken
Die Seitenansicht enth!lt eine Reihe weiterer Funktionen, die ausf,hrlich in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs besprochen werden. So kDnnen Sie die Seitenansicht beispielsweise stufenlos verkleinern und vergrDßern (zoomen). Bei Berichten mit mehreren Druckseiten verf,gen Sie außerdem ,ber Navigationsschaltfl!chen, mit denen Sie in der Seitenansicht bl!ttern kDnnen. In Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs erfahren Sie mehr ,ber den Gebrauch von Berichten und wie Sie diese mit den Assistenten von Access entwerfen. In Kapitel 7 Berichte erfahren Sie alles ,ber den manuellen Entwurf von Berichten. 19
Direkt loslegen
Abb. 1.16 Seitenansicht eines Berichts
Wenn Sie wollen, kDnnen Sie sich nun einmal den anderen Bericht der Kontaktverwaltung ansehen. Beenden Sie hierf,r zuerst die Seitenansicht mit einem Mausklick auf die Schaltfl!che Schließen in der Symbolleiste. W!hlen Sie anschließend einen anderen Bericht aus der Pbersicht. Nachdem Sie sich alle Berichte angesehen haben, klicken Sie in der Berichts,bersicht auf die Schaltfl!che Zur Haupt1bersicht zur1ckkehren.
Das Datenbankfenster 1ffnen Der Datenbank-Assistent von Access hat eine Haupt,bersicht erstellt, die beim Rffnen der Datenbank automatisch erscheint. Da gleichzeitig das Datenbankfenster minimiert wird, ist von den Interna der Datenbank nichts mehr zu sehen. Wenn Sie sich das Datenbankfenster einmal anschauen wollen, dann haben Sie dazu folgende MDglichkeiten: Klicken Sie auf die Schaltfl!che Datenbankfenster in der Symbolleiste oder w!hlen Sie den Befehl Fenster > Kontaktverwaltung1: Datenbank aus der Men,leiste oder klicken Sie auf das Symbol Wiederherstellen in der Titelleiste des minimierten Datenbankfensters oder bet!tigen Sie die ?-Taste. 20
Das Datenbankfenster &ffnen
Abb. 1.17 Das Datenbankfenster der Kontaktverwaltung
Das Datenbankfenster ist sozusagen die Steuerzentrale einer Access-Datenbank. Wenn Sie eine Datenbank Dffnen, Dffnet Access automatisch das Datenbankfenster. Da das Datenbankfenster und die Datenbank quasi identisch sind, zeigt Access in der Titelleiste des Datenbankfensters den Namen der Datenbank und den Text Datenbank an. Es gibt zwar einige Datenbankanwendungen, die das Datenbankfenster ausblenden, es ist aber trotzdem vorhanden. Ausgehend vom Datenbankfenster kDnnen Sie die Objekte einer Datenbank, also Tabellen, Abfragen, Formulare, Berichte, Seiten, Makros und Module, Dffnen und bearbeiten. Sie kDnnen eine Datenbank Dffnen, ohne dass Access ein Pbersichts- oder ein anderes Formular automatisch Dffnet. Wenn Sie dies w,nschen, dann halten Sie w!hrend des Rffnens der Datenbank die H-Taste gedr,ckt. Das Datenbankfenster enth!lt eine Objektsymbolleiste, ,ber die Sie die unterschiedlichen Objektgruppen betrachten kDnnen. Wenn Sie im Fall der Kontaktverwaltung beispielsweise auf das Symbol Tabellen klicken, zeigt Access die Eintr!ge Anrufe, Kontaktarten, Kontaktpersonen und 9bersichtseintr7ge an. Das sind die Tabellen der Kontaktverwaltung, die der Assistent erzeugt hat. Wenn Sie anschließend auf das Register Formulare klicken, kDnnen Sie die Formulare der Kontaktverwaltung einsehen. Bei einem Mausklick auf das Register Abfragen zeigt die Liste die Eintr!ge Erstellt eine neue Abfrage in der Entwurfsansicht und Erstellt eine Abfrage unter Verwendung eines Assistenten an. Weitere Eintr!ge sind nicht vorhanden, da die Kontaktverwaltung keine Abfragen enth!lt.
Datenbankobjekte
Tipp
Tabellen
Formulare
Abfragen
21
Direkt loslegen
Symbole anordnen Das Datenbankfenster von Access funktioniert !hnlich wie der Explorer von Windows. So kDnnen Sie mit der rechten Maustaste auf einen leeren Bereich des Datenbankfensters klicken, um das Kontextmen, zu Dffnen. Es enth!lt u.a. den Befehl Ansicht, mit dem Sie Objekte des Datenbankfensters als große Symbole, kleine Symbole, Liste oder mit Details anzeigen lassen kDnnen. Diese sind allerdings auch in der Symbolleiste des Datenbankfensters zu finden.
Ansicht
Abb. 1.18 Datenbankfenster mit Eintr!gen in Listenform
Symbole anordnen
AutoAnordnen
Am Raster ausrichten
Hinweis
22
Außerdem ist der Befehl Symbole anordnen des Kontextmen,s interessant. Hiermit kDnnen Sie die Objektliste des Datenbankfensters nach Name, Typ, Datum der letzten Erstellung und Datum der letzten Bearbeitung sortieren lassen. Bei den Ansichten Große Symbole und Kleine Symbole steht Ihnen im Kontextmen, Symbole anordnen zus!tzlich die Option AutoAnordnen zur Verf,gung. Wenn Sie diese Option einschalten, ordnet Access die Symbole stets automatisch innerhalb des Datenbankfensters an. W!hrend Access im Datenbankfenster kleine oder große Symbole anzeigt, kDnnen Sie den Befehl Symbole ausrichten aus dem Kontextmen, ausw!hlen. Dieser Befehl richtet die Symbole einmalig aus. Wenn Sie stattdessen die Option AutoAnordnen einschalten, werden die Symbole automatisch immer ausgerichtet. Es gibt eine Reihe weiterer Befehle und anderer Bearbeitungsmethoden, die Sie auf die Objekte des Datenbankfensters anwenden kDnnen. So enth!lt beispielsweise das Kontextmen, einer Tabelle Befehle zum Rffnen der Datenblatt- oder der Entwurfsansicht. Sie werden im weiteren Verlauf dieses Buchs immer wieder mit dem Datenbankfenster konfrontriert und lernen seine Bedeutung so schrittweise kennen. In Kapitel 9 Eine Datenbank verwalten dieses Buchs finden Sie außerdem weitere Hinweise zum Datenbankfenster.
Wie geht es jetzt weiter?
Datenbankfenster schließen Das Schließen des Datenbankfensters f,hrt automatisch zum Schließen der Datenbank. Sie haben folgende MDglichkeiten, um eine Datenbank bzw. das Datenbankfenster zu schließen: W!hlen Sie bei aktiviertem Datenbankfenster den Befehl Datei > Schließen aus der Men,leiste oder klicken Sie auf das Symbol Schließen in der Titelleiste des Datenbankfensters oder bet!tigen Sie bei aktiviertem Datenbankfenster die Tastenkombination S$. Wenn Sie die Kontaktverwaltung nicht schließen, sondern weiter mit ihr arbeiten wollen, dann kDnnen Sie das Datenbankfenster auf SymbolgrDße verkleinern oder direkt auf das Fenster Haupt1bersicht klicken. Sie kDnnen dann wie gewohnt mit der Datenbank arbeiten.
Hinweis
Wie geht es jetzt weiter? Sie wissen nun, wie Sie Access starten und beenden. Außerdem haben Sie mit dem Datenbank-Assistenten von Access eine Kontaktverwaltung angelegt. Anhand dieses Beispiels haben Sie Kontakte eingesehen, bearbeitet und gedruckt. Außerdem haben Sie mit dem Datenbankfenster sozusagen die Steuerzentrale der Kontaktverwaltung kennen gelernt. Das ist schon eine ganze Menge. Ein Problem der mit dem Assistenten entworfenen Datenbank besteht jedoch darin, dass sie recht unflexibel ist. Stellen Sie sich nur vor, dass Sie neben der Postanschrift zus!tzlich auch ein Postfach mit eigener Postleitzahl eingeben wollen. Oder wie sollen Sie wohl mehrere E-Mail-Adressen oder eine Mobiltelefonnummer verwalten? Dieses und vieles mehr ist von der Kontaktdatenbank bisher nicht vorgesehen.
Weitere Pauschall&sungen Der Datenbank-Assistent sieht leider keine MDglichkeit vor, die fehlenden Informationen in die Datenbank aufzunehmen. Die mit den Assistenten entworfenen Datenbanken sind n!mlich wirklich nur f,r einen ersten Kontakt mit Access und den groben Entwurf einer Beispieldatenbank geeignet.
Noch mehr Beispieldatenbanken
Sie sollten sich ruhig die M,he machen, weitere Beispieldatenbanken zu entwerfen. Schauen Sie sich doch einmal die Bestellabwicklung und die Mitgliederverwaltung des Datenbank-Assistenten an. Sie werden sehen, dass Access noch weitaus komplexere Aufgaben als die Verwaltung von Kontakten bew!ltigen kann. 23
Direkt loslegen
Tipp
Dar,ber hinaus ist im Lieferumfang von Access eine Beispieldatenbank namens Nordwind enthalten. Da sie standardm!ßig installiert wird, brauchen Sie diese Datenbank nicht erst mit dem Datenbank-Assistenten anzulegen. Um die Datenbank zu Dffnen, f,hren Sie im Startdialog von Access einen Doppelklick auf den Eintrag Nordwind.mdb durch.
Datenbanken individuell gestalten All das hilft Ihnen aber noch nicht bei dem Vorhaben, mit Ihren Kontakten auch eine E-Mail-Adresse zu speichern. Sie erreichen dies nur, indem Sie sich weiter mit Access besch!ftigen und lernen, Ihre individuellen Datentabellen, Abfragen, Formulare, Berichte und Datenzugriffsseiten zu entwerfen. Einiges zu diesem Thema erfahren Sie in Kapitel 2 Daten verwalten und Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs. Die Kapitel 4 Tabellen, Kapitel 5 Abfragen, Kapitel 6 Formulare, Kapitel 7 Berichte und Kapitel 8 Datenzugriffsseiten in Teil II vervollst!ndigen Ihr Wissen ,ber den manuellen Entwurf von Datenbankobjekten.
Das Internet-Angebot der Autoren Die Autoren dieses Buchs bieten seit mehreren Jahren Informationen zu Microsoft Access im Internet an. Unter der Adresse http://www.fullaccess.de finden Sie mehr als 100 Tipps & Tricks, zahlreiche Leserfragen mit Antworten und jede Menge Beispieldatenbanken zu allen Versionen von Microsoft Access. Die meisten Bereiche von fullAccess sind kostenlos und f,r jedermann verf,gbar. Dar,ber hinaus finden Sie einen Shop, ,ber den Sie Entwickler-Tools und Anwenderprogramme f,r Microsoft Access bestellen kDnnen. Besonders wertvoll ist der ebenfalls kostenlose Info-Pool von fullAccess. Dort finden Sie eine Liste von Verweisen auf Internet-Seiten mit weiteren Informationen ,ber Microsoft Access. Alle Informationen von fullAccess werden im Abstand von zwei Wochen oder k,rzer aktualisiert. Auf der diesem Buch beiliegenden CD finden Sie das zum Zeitpunkt der Drucklegung dieses Buchs aktuelle Internet-Angebot von fullAccess. Tipp
24
Wie geht es jetzt weiter?
Abb. 1.19 Das Internet-Angebot der Autoren dieses Buchs
Weitere Service-Leistungen zu Microsoft Access Informationen ,ber weitere Service-Leistungen wie beispielswese Beratung, Software-Entwicklung und Schulung rund um das Thema Microsoft Access finden Sie auf folgender Internet-Seite: http://www.trinidat.de Dort wirbt die von den Autoren gegr,ndete Firma f,r ihr Dienstleistungsangebot. Die TriniDat Software-Entwicklung GmbH hat sich auf die Entwicklung individueller Software mit Microsoft Access, dem Oracle und dem Microsoft SQL Server spezialisiert.
25
Daten verwalten Datenbank im Schnelldurchgang Was ist eine Datenbank? Relationale Datenbanken Mit dem Datenblatt der Adressentabelle arbeiten In der Datenblattansicht den Tabellenentwurf %ndern
28 31 32 48 81
2
Daten verwalten
In diesem Kapitel erfahren Sie, wie Sie mit Access Daten verwalten. Zun!chst entwerfen Sie eine einfache Datenbank sozusagen im Schnelldurchgang. Anschließend erfahren Sie etwas ,ber grundlegende Begriffe zum Thema Datenbanken. Dann geht es richtig in die Praxis: Am Beispiel von Adressen arbeiten Sie sich in den manuellen Entwurf von Tabellen ein. Anschließend Dffnen Sie das Datenblatt der Tabelle und geben Adressen ein. Auf dieser Basis entwerfen Sie eine zweite Tabelle f,r Projekte. Damit sind Sie daf,r gewappnet, das eigentliche Geheimnis einer Datenbank wie Access zu l,ften, und erstellen eine Beziehung zwischen der Adressen- und der Projektetabelle. Die Beispiele in Kapitel 3 Daten auswerten und pr7sentieren bauen auf der Adressenund der Projektetabelle auf. Sie lernen mit Abfragen, Formularen und Berichten weitere MDglichkeiten zur Darstellung und Bearbeitung von Daten kennen.
Datenbank im Schnelldurchgang Im ersten Kapitel dieses Buches haben Sie erfahren, wie Sie mithilfe des Assistenten eine komplette Datenbankanwendung im Schnellverfahren erstellen. Damit wissen Sie aber noch nichts ,ber die zugrunde liegenden Objekte einer Datenbank. Bevor die Erstellung der Tabellenstrukturen im Detail erkl!rt werden, folgt hier die Erstellung und Bearbeitung einer Tabelle ebenfalls im Schnelldurchgang – sozusagen als Appetitanreger.
Datenbank anlegen Datenbank anlegen
Wollten Sie nicht schon immer Ihre Krimis in einer Datenbank erfassen? Die folgende kleine Anwendung mag dazu als Anregung dienen. 1
Starten Sie Access.
2
Klicken Sie im Startdialog im Abschnitt Neu auf die Option Leere Datenbank.
3
Geben Sie den Namen krimi in das Feld Dateiname ein.
4
Beenden Sie den Dialog mit einem Klick auf die Schaltfl!che Erstellen.
Tabelle erstellen Zun!chst ist die Tabelle vorzubereiten, die die Daten aufnehmen soll. Neue Tabelle erstellen
28
1
Klicken Sie auf Neu.
2
W!hlen Sie die Entwurfsansicht und best!tigen Sie mit OK.
Datenbank im Schnelldurchgang
Abb. 2.1 Eine neue Tabelle anlegen
In der Entwurfsansicht wird die Tabellenstruktur festgelegt. Es gen,gt, in der Spalte Feldname den Feldbezeichner einzugeben und den Felddatentyp in der zweiten Spalte anzupassen (Siehe Abbildung. 2.2). Bei der Laufenden Nr. stellen Sie als Felddatentyp AutoWert ein, bei den anderen kann die Vorgabe Text best!tigt werden. Bevor die Arbeit an der Tabelle abgeschlossen wird, muss das erste Feld als Prim!rschl,sselfeld definiert werden. Dazu klicken Sie einfach auf die Schaltfl!che in der Symbolleiste.
Tabellenstruktur festlegen
Anschließend kDnnen Sie die Tabelle schließen. Klicken Sie dazu auf die SchließenSchaltfl!che des Fensters. Die Abfrage, ob gespeichert werden soll, beantworten Sie mit Ja.
Abb. 2.2 Die neue Tabelle wird in der Entwurfsansicht gestaltet
29
Daten verwalten
Spaltenbreite anpassen
Die Tabelle ist fertig, aber noch etwas un,bersichtlich, da die Spalten standardm!ßig sehr schmal eingestellt sind. Das !ndern Sie folgendermaßen. 1
Markieren Sie die Tabelle im Datenbankfenster.
2
Rffnen Sie die Tabelle ,ber die Schaltfl!che ffnen.
3
Markieren Sie die zweite Spalte (Autor) durch Anklicken.
4
W!hlen Sie aus dem Men, Format den Befehl Spaltenbreite.
5
Geben Sie eine beliebige Spaltenbreite ein (z.B. 25 oder 30) und best!tigen Sie mit OK.
6
Verfahren Sie ebenso mit den beiden anderen Spalten.
Abb. 2.3 Die Einstellung der Spaltenbreite
Daten in die Tabelle eingeben Daten in die Tabelle eingeben
Um Daten in die Tabelle einzugeben, setzen Sie den Cursor in das erste Feld und tragen direkt etwas ein – in diesem Fall, den Autorennamen. Best!tigen Sie mit der oder mit der T Taste. Der Zellcursor springt in das n!chste Feld bzw., wenn das letzte Feld des Datensatzes erreicht ist, in den n!chsten Datensatz. Die Spalte Laufende-Nr wird dabei ausgespart, da Access hier selbstst!ndig eine Nummer f,r jeden neuen Datensatz vergibt. Damit ist der Schnelldurchgang auch schon abgeschlossen. Sie haben sozusagen mit einfachstem Handwerkszeug eine Datenbank erstellt, ohne einen Assistenten zu Hilfe zu nehmen. In den folgenden Abschnitten erfahren Sie, wie Sie jedes Detail bei der Tabellengestaltung f,r Ihre Zwecke und Datenbanken nutzen kDnnen.
30
Was ist eine Datenbank?
Was ist eine Datenbank? Bevor Sie mit dem manuellen Entwurf der Adressentabelle beginnen, sollten Sie zun!chst wissen, womit Sie es bei Access zu tun haben. Die folgenden Abs!tze kl!ren die Begriffe relationale Datenbank, Tabelle, Datensatz und Datenfeld, die zum Verst!ndnis einer Datenbank erforderlich sind.
Was ist Access? Access ist ein Vertreter der Gruppe der so genannten Relational Database Management Systems (abgek,rzt: RDBMS, deutsch: relationale Datenbankverwaltungssysteme). Das sind Programme, die speziell f,r die Verwaltung großer Datenbest!nde entwickelt wurden.
Relationales Datenbankverwaltungssystem
Access bietet ,ber die Verwaltung von Daten hinaus noch einiges mehr. Es zeichnet sich insbesondere durch eine sehr leicht zu bedienende Oberfl!che aus, welche die Bearbeitung und Pr!sentation der Daten gegen,ber klassischen RDBMS stark vereinfacht. Das Produkt besteht aus insgesamt drei funktionellen Kernbereichen: 1
Das eigentliche DBMS (englisch: Database Management System), das selbst sehr große Datenbest!nde auf der Festplatte verwalten kann.
2
Die Benutzeroberfl!che, die den Zugriff auf die Daten sowie deren Auswertung und Pr!sentation erlaubt. Die Benutzeroberfl!che bildet sozusagen die Schnittstelle zwischen Ihnen als Anwender und dem DBMS.
3
Die Programmiersprache Visual Basic f,r Applikationen (kurz: VBA), die Ihnen die Programmierung eigener Anwendungen mit eigenen Benutzeroberfl!chen ermDglicht. Eine Datenbankanwendung ist eine Sammlung von Tabellen, Abfragen, Formularen, Berichten, Makros und Modulen, die zu einem funktionierenden Ganzen zusammengef,gt werden. Die Steuerung einer Anwendung erfolgt in der Regel ,ber Men,s oder Befehlsschaltfl!chen.
Sie brauchen sich wegen der enormen Leistungsvielfalt von Access keine Sorgen zu machen. Das Produkt ist n!mlich so ausgelegt, dass Sie auch mit einfachen Mitteln schnell zu Ergebnissen kommen. Bereits am Ende dieses Kapitels werden Sie mehrere Tabellen angelegt und einige Beispieldaten eingegeben haben. Sie werden Daten !ndern, suchen und lDschen. Außerdem sortieren Sie die Adressentabelle nach verschiedenen Kriterien. Anhand der Beispiele lernen Sie die wichtigsten Verfahren im Umgang mit Daten kennen. Sie kDnnen dieses Wissen dann zur Verwaltung Ihrer eigenen Datenbest!nde einsetzen. Erst mit wachsenden Anspr,chen benDtigen Sie weitere Funktionen. Sie kDnnen sich diese Funktionen dann schrittweise erarbeiten und geben selbst das Tempo Ihrer Vorgehensweise vor. Seien Sie aber jederzeit versichert, dass Access Ihren wachsenden Anspr,chen gerecht wird. Vorab sollen jedoch einige grunds!tzliche Prinzipien der Dateiverwaltung erl!utert werden, die Ihnen die Arbeit mit Access sicher erleichtern werden.
Schnelle Ergebnisse
Wachsende Anspr che
31
Daten verwalten
Relationale Datenbanken Planung einer Datenbank
Access ist ein relationales Datenbanksystem. Eine Datenbank bildet die Zusammenfassung von Objekten, die der LDsung einer bestimmten Aufgabe dienen. Sie sollten diese Aufgabe mDglichst vor dem Beginn Ihrer Arbeit mit Access formulieren. Ein Beispiel f,r eine solche Aufgabe ist die Planung und Abrechnung der Projekte eines Unternehmens.
Tabellen Datenfelder und Datens!tze einer Tabelle
Jede Datendatei eines relationalen Systems sieht wie eine Tabelle aus. Die Spalten der Tabelle sind die Datenfelder und die Zeilen die Datens!tze der Tabelle. Aus diesem Grund wird im Zusammenhang mit Datenbanken nicht von einer Datendatei, sondern von einer Datentabelle oder kurz einer Tabelle gesprochen. Der logische Hintergrund einer Tabelle l!sst sich mit der Unterscheidung zwischen Eigenschaften und Objekten beschreiben. Ein Datensatz bildet ein Objekt aus der Wirklichkeit ab; die Datenfelder enthalten die relevanten Eigenschaften des Objekts. Wenn Sie an eine Produkttabelle denken, dann bildet jeder Datensatz ein real existierendes Produkt ab. Die Datenfelder der Tabelle, die beispielsweise den Namen, die Farbe und den Preis eines Produkts enthalten, beschreiben lediglich die f,r die Anwendung interessanten Eigenschaften. Tats!chlich hat jedes Produkt nat,rlich weitaus mehr Eigenschaften, als in der Tabelle gespeichert werden. So sind die meisten Produkte durch ihre Form, ihre chemische Zusammensetzung und ihr Verhalten im praktischen Einsatz gekennzeichnet. Diese Eigenschaften werden jedoch nur dann in der Tabelle gespeichert, wenn sie f,r die konkrete Anwendung interessant sind. Alle anderen Eigenschaften sind irrelevant. Die Tabelle bildet damit ein stark vereinfachtes Bild der Wirklichkeit ab.
Hinweis
Dieses Buch verwendet die Begriffe Tabelle, Datensatz und Datenfeld. Im heutigen Sprachgebrauch sind insbesondere im Zusammenhang mit der strukturierten Abfragesprache SQL h!ufig die Begriffe Tabelle, Zeile und Spalte zu finden. Es handelt sich hierbei um Synonyme, die aber leicht zu Sprachverwechslungen f,hren. Dieses Buch verwendet die Begriffe Zeile und Spalte daher f,r Tabellen, die als solche auf dem Bildschirm angezeigt werden. Bei den in der Datenbank gespeicherten Datentabellen werden die Begriffe Datensatz und Datenfeld verwendet.
Objekte einer Datenbank Objekte der Wirklichkeit und einer Datenbank
32
Eine Tabelle bildet Objekte der Wirklichkeit ab und ist gleichzeitig ein Objekt der Datenbank. Als Objekte einer Datenbank werden alle Bestandteile bezeichnet, die die Datenbank ausmachen. Das sind Tabellen, Abfragen, Formulare, Berichte, Makros, Module und Datenzugriffsseiten. Datenzugriffsseiten sind eine wesentliche Neuerung in Access XP. Prinzipiell !hneln sie stark dem Objekttyp Formular. Sie dienen der Dateneinsicht und der Datenbearbeitung. Im Gegensatz zu Formularen
Relationale Datenbanken
aber sind Datenzugriffsseiten f,r den Zugriff auf Datenbanken ,ber Internet oder Intranet vorgesehen. Sie werden deshalb im HTML-Format gespeichert. Leider heißt das nicht, dass mit einem beliebigen Browser auf eine solche Seite zugegriffen werden kann. Um mit Datenzugriffsseiten arbeiten zu kDnnen, benDtigen Sie den Internet Explorer 5 und eine g,ltige Office-XP-Lizenz. Damit wird der Kreis der potenziellen Benutzer einer Datenzugriffsseite bereits eingeschr!nkt. Auch die MDglichkeit der plattformunabh!ngigen Benutzung von Access-Datenbanken bleibt somit verbaut.
.mdb-Datei Access speichert alle Objekte einer Datenbank in einer Datei mit der Erweiterung .mdb (f,r Microsoft DataBase). Es gibt andere RDBMS, die f,r jedes Objekt einer Datenbank eine einzelne oder sogar mehrere Dateien anlegen. Das hat den Nachteil, dass der Pberblick ,ber diese Dateien schnell verloren geht. Bei Access werden alle zusammengehDrenden Objekte auch in einer gemeinsamen Datei gespeichert. Es liegt auf der Hand, den Begriff Datenbank auch als Synonym f,r eine .mdb-Datei zu verwenden.
Datenbankdatei
Eine Datenbank anlegen Ziel dieses Abschnitts ist eine Tabelle, die Adressdaten speichert. Der Unterschied zu der in Kapitel 1 Direkt loslegen mit dem Assistenten erstellten Kontaktverwaltung besteht darin, dass Sie die Tabelle diesmal selbst entwerfen. Sie erhalten auf diesem Weg das notwendige Wissen, um sp!ter Ihre eigenen Tabellen zu erstellen.
Vorgehensweise Access speichert Daten in den Tabellen einer Datenbank. Bevor Sie mit der Eingabe von Daten beginnen kDnnen, m,ssen Sie zun!chst eine geeignete Tabelle entwerfen. Da Tabellen zu den Objekten einer Datenbank z!hlen und in der .mdb-Datei gespeichert werden, m,ssen Sie vor dem Entwurf einer Tabelle zun!chst eine Datenbank anlegen. Sie sehen, dass der in Kapitel 1 Direkt loslegen beschriebene Datenbank-Assistent Ihnen eine ganze Menge Vorarbeiten abgenommen hat. Dort konnten Sie nach nur wenigen Minuten mit der Dateneingabe beginnen. Sie haben sich diesen geringen Aufwand aber mit dem fast vollst!ndigen Verzicht auf Flexibilit!t erkauft. Damit Sie Ihre individuellen Daten eingeben kDnnen, m,ssen Sie folgende Punkte erledigen: 1
Sie m,ssen eine neue Datenbank anlegen oder eine bestehende Datenbank Dffnen.
2
Sie m,ssen eine Tabelle entwerfen, deren Struktur zu den zu speichernden Daten passt.
3
Sie m,ssen das Datenblatt zur Dateneingabe Dffnen. 33
Daten verwalten
Die folgenden Abschnitte beschreiben die einzelnen Punkte.
Beispiel: Projektverwaltung
CD zum Buch
Dieses Buch verwendet h!ufig das Beispiel einer Adressen- und einer Projektetabelle. Sie werden dieses Beispiel in den folgenden Abschnitten sukzessive zu einer Projektverwaltung entwickeln. Dabei gelangen Sie allerdings nicht zu einer vollst!ndigen Anwendung. Das Buch vermittelt das Wissen, das Sie in die Lage versetzt, Ihre eigenen Datenbankanwendungen zu erzeugen. Die Autoren haben das Beispiel der Projektverwaltung jedoch zu einer vollst7ndigen Anwendung weiterentwickelt. Sie finden das Ergebnis auf der dem Buch beiliegenden CD. Weitere Hinweise zum Aufbau der CD zum Buch finden Sie zu Beginn des Buchs.
Projektdatenbank anlegen Datenbank anlegen
Zur Anlage der Projektdatenbank m,ssen Sie Access zun!chst starten. Klicken Sie im Startdialog auf die Option Leere Datenbank. Access Dffnet dann direkt den Dialog Neue Datenbankdatei. Wenn Access bereits gestartet und der Startdialog nicht mehr zu sehen ist, w!hlen Sie den Befehl Datei > Neu... aus der Men,leiste oder klicken Sie bei markiertem Datenbankfenster auf die Schaltfl!che Neu der Symbolleiste. In beiden F!llen Dffnet Access den Dialog Neue Datei, unter dessen Eintr!gen sich auch Leere Datenbank befindet. Ein Klick auf diesen Eintrag Dffnet den Dialog Neue Datenbankdatei.
Abb. 2.4 Neue Datenbank anlegen
34
Relationale Datenbanken
Gehen Sie nun wie folgt vor: 1
W!hlen Sie aus dem Kombinationsfeld Speichern in das Laufwerk, in dem Access die neue Datenbank anlegen soll.
2
Im Textfeld unter dem Kombinationsfeld erscheinen daraufhin die Verzeichnisse des gew!hlten Laufwerks. W!hlen Sie hier das Verzeichnis aus.
3
Geben Sie den Namen Projekte in das Feld Dateiname ein.
4
Sie brauchen die Erweiterung .mdb als Kennung f,r Datenbanken nicht einzugeben, da Access sie automatisch erg!nzt.
5
Behalten Sie die Einstellung des Kombinationsfeldes Dateityp auf den Eintrag Microsoft Access Datenbanken bei.
6
Beenden Sie den Dialog mit einem Klick auf die Schaltfl!che Erstellen.
Es vergeht ein kurzer Moment, bis Access die Datenbank angelegt hat. Danach zeigt es das Datenbankfenster f,r die neue Datenbank an. Wenn Sie bereits mit !lteren Access-Versionen gearbeitet haben, wird Ihnen auffallen, dass es in den einzelnen Objektkategorien bereits Eintr!ge gibt. Diese heißen z.B. Erstellt eine neue Tabelle in der Entwurfsansicht oder Erstellt ein Formular unter Verwendung eines Assistenten. Die Bedeutung dieser Eintr!ge wird weiter unten in diesem Kapitel erl!utert. Access XP sieht erstmalig die MDglichkeit vor, Datenbanken im Format der Vorg!ngerversion zu erstellen. Leider beschr!nkt sich diese MDglichkeit auf Access 97 und Access 2000, die Versionen 1.0, 1.1, 2.0 und 7.0 werden somit nicht ber,cksichtigt. Im Kapitel 9 Eine Datenbank verwalten finden Sie Hinweise darauf, wie Sie Datenbanken, die mit fr,heren Programmversionen erstellt wurden, unter Access XP nutzen kDnnen. Außerdem erfahren Sie dort, wie Sie Datenbanken, die mit Access XP erstellt wurden, Benutzern von Access 97 zug!nglich machen kDnnen. Dateinamen von Datenbanken m,ssen den Konventionen von Windows entsprechen. Sie d,rfen daher bis zu 255 Zeichen lang sein und auch Leerzeichen enthalten. Dateinamen d,rfen aber keines der folgenden Zeichen enthalten:
Hinweis
Namenskonventionen
\?:*„<>| Außerdem d,rfen Dateinamen nicht mit dem Leerzeichen beginnen.
Das Access 2002-Dateiformat Access XP bringt ein neues Dateiformat, das Access 2002-Dateiformat, mit. Grunds!tzlich versteht es ohne Konvertierung auch das Access 2000-Dateiformat und es ist anzuraten, zun!chst mit diesem zu arbeiten – es sei denn, sie arbeiten erstmalig mit Access XP und m,ssen nicht auf Datenbanken fr,herer Versionen zur,ckgrei35
Daten verwalten
fen oder mit Anwendern Daten austauschen, die mit anderen Versionen von Access arbeiten. Access XP besitzt Objekte, Methoden Eigenschaften und Funktionen, die in Access 2000 nicht verf,gbar sind. Anders in Access XP ist: 1
Es sind Vorkehrungen f,r unbekannte Eigenschaften und Objekte getroffen, die es unter Umst!nden in zuk,nftigen Versionen von Access geben wird.
2
Es ist die MDglichkeit vorhanden, eine Access-Datei in Access-2002 als MDE oder ADE zu speichern.
3
Es wurde ein verbessertes Speicherformat realisiert.
Abb. 2.5 Eine Access XP-Datei ist nicht kompatibel zum Dateiformat fr herer Versionen
Datenbank schließen Das Datenbankfenster von Access ist gleichbedeutend mit der Datenbank, die Sie gerade geDffnet haben. Access zeigt den Namen der Datenbank in der Titelzeile des Datenbankfensters an. Pber die Schaltfl!chen des Datenbankfensters kDnnen Sie die Objekte der Datenbank einsehen und bearbeiten.
Mglichkeiten zum Schließen einer Datenbank
Access kann – solange Sie nicht mit VBA programmieren – nur eine Datenbank gleichzeitig Dffnen. Bevor Sie eine andere Datenbank Dffnen kDnnen, m,ssen Sie die aktuelle Datenbank schließen. Sie haben dazu unter anderem folgende MDglichkeiten: W!hlen Sie den Befehl Datei > Beenden aus der Men,leiste, um die Datenbank zu schließen und Access zu beenden, oder w!hlen Sie bei markiertem Datenbankfenster den Befehl Datei > Schließen aus der Men,leiste oder klicken Sie auf das Schließen-Symbol des Datenbankfensters oder
36
Relationale Datenbanken
f,hren Sie einen Doppelklick auf das Systemmen,feld des Datenbankfensters durch oder aktivieren Sie das Datenbankfenster, und bet!tigen Sie die Tastenkombination S$ oder Dffnen Sie eine andere Datenbank, damit Access die aktuelle Datenbank automatisch schließt.
Projektdatenbank erneut &ffnen Wenn Sie nach dem Beenden von Access erneut mit der Projektdatenbank arbeiten wollen, dann gehen Sie wie folgt vor: 1
Starten Sie Access.
2
W!hlen Sie den Befehl Datei > ffnen aus der Men,leiste oder klicken Sie auf das gleichnamige Symbol.
3
F,hren Sie einen Doppelklick auf den Dateinamen Projekte durch, oder markieren Sie die Datei Projekte, und klicken Sie auf die ffnen-Schaltfl!che.
Abb. 2.6 4ffnen der Projekte-Datenbank
Access Dffnet dann die Datenbank und zeigt das Datenbankfenster an. Wenn Sie eine Datenbank z.B. schreibgesch,tzt Dffnen wollen, klicken Sie auf den nach unten zeigenden Pfeil des Kombinationsfeldes ffnen, und w!hlen den entsprechenden Befehl. 37
Daten verwalten
Hinweis
Tipp
MDglicherweise enth!lt der Datenbankname zus!tzlich die Endung .mdb. Dies h!ngt von den Einstellungen des Windows-Explorers ab. Sie kDnnen diese Einstellung folgendermaßen !ndern: 1
Rffnen Sie den Windows-Explorer.
2
F,hren Sie den Men,befehl Ansicht > Ordneroptionen aus.
3
Wechseln Sie zum Register Ansicht und w!hlen Sie die entsprechende Einstellung der Option Dateien und Ordner > Dateinamenerweiterung bei bekannten Dateinamen ausblenden.
Wenn Sie oft mit derselben Datenbank arbeiten wollen, dann kDnnen Sie mit dem Explorer von Windows ein Symbol f,r diese Datenbank auf dem Desktop von Windows ablegen. Ziehen Sie die .mdb-Datei dazu bei festgehaltener rechter Maustaste aus dem Explorer auf den Desktop und w!hlen Sie den Befehl Verkn1pfungen(en) hier erstellen aus dem Kontextmen,. Bei einem Doppelklick auf das Verkn,pfungssymbol wird Access gestartet und die entsprechende Datenbank automatisch geDffnet.
Eine Tabelle anlegen Bevor Sie mit der Eingabe von Daten beginnen kDnnen, benDtigen Sie zun!chst eine Tabelle. Dieser Abschnitt erl!utert den Entwurf einer Tabelle anhand des Beispiels einer Adressentabelle. Sie haben zwei MDglichkeiten, um eine Adressentabelle anzulegen: Sie entwerfen die Tabelle manuell oder Sie ,berlassen die Arbeit dem Tabellen-Assistenten.
Manueller Tabellenentwurf Tabellen-Assistent
Als Einsteiger sollten Sie die Adressentabelle unbedingt manuell entwerfen. Sie erfahren so, was Tabellen sind und wie sie funktionieren. Den Tabellen-Assistenten sollten Sie einsetzen, wenn Sie bereits mit dem Tabellenentwurf vertraut sind. Der Tabellen-Assistent f,hrt schnell und zuverl!ssig zu einem Datenmodell, das auch aus mehreren Tabellen bestehen kann. Der TabellenAssistent definiert auf Wunsch sogar Beziehungen zwischen den Tabellen einer Datenbank.
Datenmodell Unter einem Datenmodell versteht man die Beschreibung aller Tabellen einer Datenbank und deren Beziehungen. Weiter unten in diesem Kapitel entwerfen Sie ein Datenmodell, das aus der Adressen- und der Projektetabelle sowie einer Beziehung zwischen beiden Tabellen besteht.
38
Relationale Datenbanken
In der Praxis ist es jedoch h!ufig so, dass die vom Assistenten erstellten Tabellen lediglich als Vorlage f,r Ihre eigenen Anwendungen dienen und daher manuell ,berarbeitet werden m,ssen. Sie lernen daher zun!chst, wie Sie Tabellen manuell entwerfen. Sie finden die Beschreibung des Tabellen-Assistenten in Kapitel 4 Tabellen dieses Buchs. Die folgenden Abschnitte erl!utern den manuellen Entwurf von Tabellen. Hinweis
Adressentabelle entwerfen Zur Anlage der Adressentabelle haben Sie mehrere MDglichkeiten: W!hlen Sie den Befehl Einf1gen > Tabelle aus der Men,leiste, oder markieren Sie die Schaltfl!che Tabellen der Symbolleiste im linken Teil des Datenbankfensters und bet!tigen Sie die Schaltfl!che Neu in der Symbolleiste des Datenbankfensters oder markieren Sie die Schaltfl!che Tabellen der Symbolleiste im linken Teil des Datenbankfensters und f,hren Sie einen Doppelklick auf den Eintrag Erstellt eine Tabelle in der Entwurfsansicht durch.
Abb. 2.7 Das Datenbankfenster
Der Men,befehl Einf1gen > Tabelle und das Bet!tigen der Schaltfl!che Neu f,hren zur Anzeige des Dialogs Neue Tabelle, der eine Pbersicht der MDglichkeiten zum Entwurf einer neuen Tabelle enth!lt. Da Sie die Tabelle manuell entwerfen wollen, f,hren Sie einen Doppelklick auf den Eintrag Entwurfsansicht durch. Die Beschreibung der anderen Eintr!ge des Dialogs finden Sie in Kapitel 4 Tabellen dieses Buchs. Die zweite MDglichkeit f,hrt Sie direkt zur Entwurfsansicht einer neuen Tabelle. 39
Daten verwalten
Abb. 2.8 Neue Tabelle anlegen
Wenn Sie bereits mit !lteren Versionen von Access gearbeitet haben, werden Ihnen nicht die bereits vorhandenen Eintr!ge im Datenbankfenster wie z.B. Erstellt eine Tabelle in der Entwurfsansicht entgangen sein. Diese Eintr!ge sind keine wesentliche Neuerung, sondern stellen lediglich Shortcuts zu den bekannten Methoden dar, um eine Tabelle zu erstellen. Sie werden !hnliche Eintr!ge auch in den Auflistungen der anderen Objekte finden. Wenn Sie diese Eintr!ge nicht benDtigen, kDnnen Sie deren Anzeige auch abstellen. Benutzen Sie dazu den Men,befehl Extras > Optionen. Im Register Ansicht des Fensters Optionen deaktivieren Sie das Optionsfeld Neue Objektverkn1pfungen.
Die Entwurfsansicht einer Tabelle verstehen Access Dffnet die Entwurfsansicht einer neuen Tabelle. Sie haben damit eine Tabelle als Objekt der Datenbank angelegt. Im n!chsten Schritt m,ssen Sie Datenfelder und einige Eigenschaften wie beispielsweise den Prim!rschl,ssel der Tabelle definieren.
Hinweis
40
Beachten Sie den Unterschied zwischen der Tabelle, die Access in der Datenbank speichert, und der Tabelle, die Access auf dem Bildschirm anzeigt. Die Tabelle, die Access in der Datenbank speichert, ist ein Objekt der Datenbank. Die sichtbare Tabelle dient lediglich der Anzeige und Bearbeitung der Eigenschaften der Datentabelle. Es handelt sich hierbei genau genommen um ein Objekt der Benutzeroberfl!che. Um Verwechslungen zu vermeiden, wird die auf dem Bildschirm angezeigte Tabelle zuk,nftig als Entwurfsansicht oder Tabellenentwurf bezeichnet.
Relationale Datenbanken
Abb. 2.9 Entwurfsansicht einer neuen Tabelle
Datenfelder hinzufgen In der Entwurfsansicht legen Sie die Eigenschaften der neuen Adressentabelle fest. Sie bestimmen die Namen der Datenfelder, welche Art von Daten sie speichern und einige Regeln, welche die Tabelle als Ganzes betreffen.
Eigenschaften
Die Entwurfsansicht besteht aus einer Tabelle mit den drei Spalten Feldname, Felddatentyp und Beschreibung. Mit diesen drei Spalten bestimmen Sie den Namen, den Datentyp und die Beschreibung eines Datenfeldes. Weitere Feldeigenschaften kDnnen Sie ,ber die Register Allgemein und Nachschlagen im unteren Teil des Entwurfsfensters einstellen. Wenn die Datentabelle weitere Felder enthalten soll, m,ssen Sie der Entwurfsansicht neue Zeilen hinzuf,gen und mindestens den Feldnamen eingeben und einen Felddatentyp ausw!hlen. Das erste Feld der Adressentabelle soll die eindeutige Identifikation jeder Adresse ermDglichen. Access bietet hierzu den Felddatentyp AutoWert an. Access vergibt die Werte f,r AutoWert-Felder automatisch, indem es bei der Anlage eines neuen Datensatzes den AutoWert jeweils um eins erhDht. Solange Sie keine Datens!tze lDschen, entspricht der AutoWert daher der Reihenfolge, in der Sie die Datens!tze sp!ter eingeben.
Felder
Das erste Datenfeld
41
Daten verwalten
Geben Sie den Wert Adresse-Nr als Feldnamen ein. Klicken Sie anschließend in die Spalte f,r den Felddatentyp. Access zeigt dann ein Kombinationsfeld an. Klicken Sie auf den nach unten zeigenden Pfeil des Kombinationsfeldes, und w!hlen Sie den Eintrag AutoWert aus der Liste. Tragen Sie anschließend den folgenden Text als Beschreibung f,r das Feld ein: “Eindeutige Adressennummer; wird automatisch vergeben.“
Abb. 2.10 Anlage eines AutoWertFeldes
Tabelle speichern
Die Titelzeile des Tabellenentwurfsfensters zeigt an, dass Sie mit dem Erstellen einer noch nicht benannten Tabelle begonnen haben. Wenn Sie das Fenster sp!ter schließen, fragt Sie Access automatisch, ob Sie die Tabelle speichern wollen. Sie werden dann zur Eingabe eines Tabellennamens aufgefordert. Sofern Sie die Tabelle bereits vorher speichern wollen, ohne das Fenster zu schließen, verwenden Sie den Befehl Datei > Speichern unter, und geben Sie den Text “Adressen“ als Namen der Tabelle ein. Auf die Frage, ob ein Prim!rschl,ssel erstellt werden soll, antworten Sie mit einem Klick auf die Schaltfl!che Nein. Wenn Sie die Schaltfl!che Ja bet!tigen, erstellt Access selbstst!ndig ein neues Feld und legt dieses als Prim!rschl,sselfeld fest. Sie haben aber bereits ein Feld erstellt, welches als Prim!rschl,sselfeld vorgesehen ist. Im n!chsten Abschnitt erfahren Sie, wie Sie dieses Feld in ein Prim!rschl,sselfeld umwandeln.
Den Prim%rschlssel der Adressentabelle festlegen Access ermDglicht die Definition von Indizes, die h!ufig auch als Schl,ssel bezeichnet werden. Indizes bzw. Schl,ssel beschleunigen den Zugriff auf eine Tabelle in sortierter Reihenfolge und sind eine wichtige Voraussetzung f,r die relationale Verkn,pfung von Tabellen. Auch wenn Ihnen der Begriff Index an dieser Stelle vielleicht noch nicht ganz klar sein mag, so sollten Sie dennoch einen Prim!rschl,ssel f,r die Adressennummer anlegen. 42
Relationale Datenbanken
Falls die Einf,gemarke bereits in der zweiten Zeile des Entwurfsfensters angezeigt wird, klicken Sie erneut in der Zeile f,r die Adressennummer. W!hlen Sie dann den Befehl Bearbeiten > Prim7rschl1ssel, oder klicken Sie in der Symbolleiste auf die Schaltfl!che Prim7rschl1ssel. Access stellt dann links neben dem Feldnamen einen symbolisierten Schl,ssel dar und markiert das Feld damit als Prim!rschl,ssel. Die Anlage von Indizes bzw. Schl,sseln ist an dieser Stelle zwar nicht unbedingt notwendig, aber hilfreich f,r die weitere Arbeit mit den Beispieltabellen. Wenn Sie bereits jetzt mehr ,ber die Anlage und den Gebrauch von Indizes wissen wollen, dann schlagen Sie in Kapitel 4 Tabellen nach.
Prim!rschl ssel
Hinweis
Weitere Datenfelder anlegen Das zweite Datenfeld der Adressentabelle soll die Anrede f,r die Person oder Firma speichern. Bet!tigen Sie nacheinander die Tasten V und P, um die Einf,gemarke in die erste Spalte der zweiten Zeile zu bewegen. Alternativ kDnnen Sie auch mit der Maus innerhalb der entsprechenden Zelle klicken. Geben Sie den Text Anrede als Feldnamen ein, und best!tigen Sie mit . W!hlen Sie anschließend den Eintrag Text aus dem Kombinationsfeld Felddatentyp. Sie finden im unteren Teil des Fensters einen Bereich, in den Sie Feldeigenschaften eintragen kDnnen. Vorerst benDtigen Sie lediglich den Eintrag Feldgr4ße. Mit diesem Eintrag bestimmen Sie die maximale Anzahl Zeichen, die sp!ter in das Textfeld eingetragen werden kDnnen. Bei der Neuanlage eines Textfeldes tr!gt Access f,r die FeldgrDße standardm!ßig den Wert 50 ein. Um diesen Wert zu !ndern, klicken Sie in das Feld und ,berschreiben den Standardwert. Wenn Sie lieber die Tastatur verwenden, dann bet!tigen Sie die &-Taste, um zwischen dem Entwurfsbereich im oberen Teil des Fensters und dem Bereich f,r die Feldeigenschaften zu wechseln. Geben Sie f,r das Anredefeld die FeldgrDße “30“ ein.
Das zweite Datenfeld
Zus!tzliche Feldeigenschaften
Feldgrße !ndern
Beachten Sie, dass der Bereich f,r die Feldeigenschaften auf das aktuelle Datenfeld bezogen ist. Access markiert das aktuelle Datenfeld in der Tabelle durch ein vorangestelltes Dreieck. Probieren Sie es doch einmal aus. Klicken Sie abwechselnd auf die Zeile f,r die Adressennummer und auf die Zeile f,r die Anrede. Sehen Sie, wie sich die Anzeige der Feldeigenschaften !ndert?
43
Daten verwalten
Abb. 2.11 Feldgrße f r das Feld Anrede festlegen
Weitere Feldeigenschaften
Weitere Datenfelder
Der Feldname, der Felddatentyp und die Beschreibung sind im eigentlichen Sinne ebenfalls Feldeigenschaften. Es handelt sich hierbei um die einzigen Feldeigenschaften, die f,r alle Datenfelder verf,gbar sind. Die Zusammenstellung der Eigenschaften im unteren Bereich des Tabellenentwurfsfensters variiert mit dem Datentyp des aktuell markierten Feldes. In Kapitel 4 Tabellen dieses Buchs finden Sie die Beschreibung aller Feldeigenschaften und eine Pbersicht dar,ber, welche Feldeigenschaften f,r welche Felddatentypen verf,gbar sind. Tabelle 2.1 zeigt alle Felder der Adressentabelle. Bei der Anlage der Felder brauchen Sie lediglich den Feldnamen einzugeben und den Felddatentyp auszuw!hlen. Die einzige Ausnahme sind die Textfelder, bei denen Sie zus!tzlich die FeldgrDße eingeben m,ssen.
Felder der Adressentabelle
44
Feldname
Felddatentyp
GrDße bei Textfeldern
Adress-Nr.
AutoWert
Anrede
Text
30
Name
Text
60
Straße
Text
30
PLZ und Ort
Text
40
Telefon
Text
20
Telefax
Text
20
Relationale Datenbanken
Felder der Adressentabelle (Forts.)
Feldname
Felddatentyp
GrDße bei Textfeldern
Mobil
Text
20
Email
Text
20
Bemerkung
Memo
Anlagedatum
Datum/Uhrzeit
0nderungsdatum
Datum/Uhrzeit Tabelle 2.1
Die Anlage eines gemeinsamen Feldes f,r Postleitzahl und Ort bringt Vorteile bei der Erfassung internationaler Adressen. So kDnnen Sie dem Ort bei ausl!ndischen Adressen auch eine L!nderkennung wie beispielsweise das A f,r Austria (Rsterreich) voranstellen. Wenn Sie bereits mit anderen Datenbanksystemen als Access gearbeitet haben, erscheint Ihnen die Wahl der Feldnamen wahrscheinlich etwas ungewDhnlich. Sie sollten jedoch wissen, dass Access Feldnamen bis zu einer L!nge von maximal 64 Zeichen erlaubt. Dabei d,rfen Buchstaben, Ziffern und die meisten Sonderzeichen verwendet werden. Sie kDnnen daher mit Access aussagekr!ftige Namen vergeben und sollten diese MDglichkeit auch nutzen. Weitere Einzelheiten zur Bildung von Feldnamen finden Sie unter dem Stichwort Namenskonventionen in Kapitel 4 Tabellen dieses Buchs.
Tipp
Feldnamen
Abb. 2.12 Alle Felder der Adressentabelle
45
Daten verwalten
Hinweis
Die in Tabelle 2.1 gezeigte Struktur der Adressentabelle ist bewusst etwas einfacher gehalten, als es eine professionelle LDsung erfordern w,rde. So kDnnte man beispielsweise in zwei weiteren Feldern eine Postfachadresse und eine Postleitzahl f,r das Postfach speichern. Außerdem kDnnte man ,ber relationale Verkn,pfungen eine Brief-, eine Liefer- und eine Rechnungsadresse f,r Firmen hinterlegen. Pber eine weitere Relation kDnnte man die Eingabe beliebiger Kommunikationsarten wie Internet-Seiten usw. vorsehen. Die MDglichkeiten zur Gestaltung solcher Datenmodelle sind recht vielf!ltig. Dieses Buch vermittelt Ihnen das Wissen, das Sie zur Realisierung solcher Datenmodelle benDtigen. Vorl!ufig soll es jedoch bei der einfachen Adressentabelle bleiben.
Weitere Schlssel anlegen Sekund!rschl ssel
Wie weiter oben bereits erw!hnt wurde, beschleunigen Indizes die Sortierung einer Tabelle und damit die Datensuche in Feldern, nach denen indiziert wurde. Da Sie die Adressentabelle wahrscheinlich h!ufig nach Namen durchsuchen wollen, ist die Anlage eines Indizes f,r das entsprechende Datenfeld empfehlenswert. Markieren Sie das Datenfeld Name und klicken Sie dann in das Eingabefeld Indiziert der Feldeigenschaften. Klicken Sie auf den nach unten zeigenden Pfeil des Kombinationsfeldes und w!hlen Sie den Eintrag Ja (Duplikate m4glich) aus der Liste.
Index mit Duplikaten
Abb. 2.13 Anlage eines Indexes f r das Namensfeld
Die genannten Schritte f,r das Feld Name definieren einen Index, der auch Wiederholungen von Namen erlaubt. Wenn Sie die Tabelle sp!ter einmal alphabetisch nach Namen sortieren lassen, dann verwendet Access automatisch diesen Index. Sie erhalten die sortierte Tabelle dann quasi sofort, da der Index den Sortiervorgang ,berfl,ssig macht. Außerdem werden Suchvorg!nge im Namensfeld extrem beschleunigt. 46
Relationale Datenbanken
Da die Verwaltung von Indizes jedoch w!hrend der Bearbeitung von Tabellen Zeit kostet, sollten Sie sparsam mit deren Anlage sein. Indizes lohnen sich nur dann, wenn verh!ltnism!ßig h!ufig in einer bestimmten Reihenfolge auf ein bestimmtes Datenfeld zugegriffen wird. Außerdem ist bei Access die Anzahl der Indizes je Tabelle auf 32 begrenzt.
Die Tabelle speichern Damit ist die Definition der Adressentabelle abgeschlossen. Zum Speichern der Tabelle w!hlen Sie den Befehl Datei > Speichern aus der Men,leiste oder klicken Sie in der Symbolleiste auf die Schaltfl!che Speichern. Falls Sie der Tabelle noch keinen Namen geben haben, geben Sie “Adressen“ als Namen ein, und klicken Sie auf OK.
Abb. 2.14 Adressentabelle speichern
Anschließend kDnnen Sie das Tabellenentwurfsfenster schließen. Sie haben dazu folgende MDglichkeiten: Klicken Sie auf das Symbol Schließen in der Titelzeile des Entwurfsfensters oder w!hlen Sie den Befehl Schließen aus dem Systemmen, des Fensters, bet!tigen Sie die Tastenkombination S$, oder w!hlen Sie den Befehl Datei > Schließen aus der Men,leiste.
Den Tabellenentwurf %ndern Wenn Ihnen w!hrend der weiteren Arbeit auff!llt, dass Sie Fehler bei der Anlage der Adressentabelle gemacht haben, dann kDnnen Sie den Tabellenentwurf nachtr!glich korrigieren, indem Sie wie folgt vorgehen: 1
Markieren Sie im Datenbankfenster das Register Tabellen.
2
Klicken Sie mit der rechten Maustaste auf den Eintrag Adressen, um das Kontextmen, zu Dffnen.
3
W!hlen Sie den Befehl Entwurfsansicht aus dem Kontextmen,. 47
Daten verwalten
Die Entwurfsansicht kann auch ,ber die Schaltfl!che in der Men,leiste des Datenbankfensters aktiviert werden.
Tabellenstruktur !ndern
Zeilen lschen
Erweitern
Zeilen einf gen
In der Entwurfsansicht kDnnen Sie Feldnamen, Felddatentypen, Beschreibungen und weitere Feldeigenschaften !ndern. Klicken Sie dazu in die entsprechende Zeile und f,hren Sie die notwendigen 0nderungen durch. Verwenden Sie den Befehl Zeilen l4schen, um ein Datenfeld zu lDschen. Den Befehl finden Sie in der Men,leiste unter Bearbeiten > Zeilen L4schen, in der Symbolleiste und im Kontextmen,. Beachten Sie dabei, dass mit dem LDschen des Datenfeldes auch alle in ihm gespeicherten Daten verloren gehen. Wenn Sie den Befehl Zeilen l4schen nicht in der Men,leiste Bearbeiten finden, haben Sie vermutlich die erweiterbare Men,anzeige noch nicht deaktiviert. Dies f,hrt dazu, dass Sie manche Befehle erst nach Bet!tigen des Erweitern-Symbols am unteren Ende des Men,s benutzen kDnnen. Wie Sie alle Men,befehle st!ndig sichtbar machen, erfahren Sie im Abschnitt Die Men1leiste in Kapitel 1 Direkt loslegen. F,gen Sie neue Datenfelder in eine leere Zeile an das Ende der Tabelle an. Wenn Sie ein Datenfeld vor bereits bestehenden Datenfeldern einf,gen wollen, dann benDtigen Sie den Befehl Zeilen einf1gen. Das Symbol f,r diesen Befehl finden Sie in der Symbolleiste und im Kontextmen,. Dieser Befehl f,gt eine neue leere vor der aktuellen Zeile ein. W!hlen Sie den Befehl Datei > Speichern, oder klicken Sie auf das gleichnamige Symbol, um die 0nderungen an der Tabellenstruktur zu speichern.
Hinweis
Beachten Sie, dass beim nachtr!glichen 0ndern der Struktur einer Tabelle, die bereits Daten enth!lt, unter Umst!nden Datenverluste auftreten kDnnen. Weitere Einzelheiten zum Bearbeiten von Tabellen mit Daten finden Sie in Kapitel 4 Tabellen. Dort wird auch beschrieben, wie sich Datenverluste beim nachtr!glichen 0ndern einer Tabellenstruktur vermeiden lassen.
Mit dem Datenblatt der Adressentabelle arbeiten In diesem Abschnitt verwenden Sie die Datenblattansicht der Adressentabelle zur Eingabe und Bearbeitung von Daten. Außer f,r Tabellen kDnnen Sie die Datenblattansicht auch f,r Abfragen und Formulare Dffnen. Außerdem lassen sich einige Arbeitstechniken f,r Datenbl!tter auf Abfragen, Formulare und Berichte ,bertragen. Damit ist gew!hrleistet, dass Sie das einmal erworbene Wissen vielfach anwenden kDnnen.
48
Mit dem Datenblatt der Adressentabelle arbeiten
Neben Datenbl!ttern sind Formulare ein wichtiges Mittel zur Eingabe und Bearbeitung von Daten. Eine Einf,hrung in die Arbeit mit Formularen finden Sie in Kapitel 3 Daten auswerten und pr7sentieren. Weitergehende Informationen zum manuellen Entwurf enth!lt Kapitel 6 Formulare dieses Buchs.
Hinweis
Wenn Sie Ihre Daten im Internet bereitstellen wollen, kDnnen Sie das mithilfe von Datenzugriffsseiten tun. Diese !hneln grunds!tzlich den Formularen, werden aber im HTML-Format erstellt. Seiten werden in Kapitel Datenzugriffsseiten behandelt.
Ein Datenblatt Dffnen Vor dem Rffnen des Datenblatts der Adressentabelle m,ssen Sie zun!chst Access starten und die Projektdatenbank Dffnen. Wenn Sie, wie zu Beginn dieses Kapitels beschrieben, eine Verkn,pfung zur Projektdatenbank auf dem Desktop von Windows abgelegt haben, gen,gt hierf,r ein Doppelklick auf das Verkn,pfungssymbol.
Projektdatenbank ffnen
Access Dffnet die Projektdatenbank und zeigt das Datenbankfenster an. Um das Datenblatt der Adressentabelle zu Dffnen, gehen Sie wie folgt vor: 1
Markieren Sie im Datenbankfenster das Register Tabellen.
2
Markieren Sie den Eintrag Adressen.
3
Klicken Sie auf die Schaltfl!che ffnen, oder w!hlen Sie den Befehl ffnen aus dem Kontextmen,.
Wie Sie an der Anordnung als ersten Befehl im Kontextmen, erkennen kDnnen, ist das Rffnen die Aktion, die Access standardm!ßig mit Tabellen, Abfragen, Formularen und Berichten durchf,hrt. Sie kDnnen das Rffnen der Adressentabelle daher auch durch einen Doppelklick auf den Tabellennamen durchf,hren. Access f,hrt bei einem Doppelklick auf ein Objekt stets den ersten Befehl des Kontextmen,s aus. Wenn noch die Entwurfsansicht f,r das Tabellenfenster aktiv ist, kDnnen Sie direkt in die Datenblattansicht wechseln. Klicken Sie einfach auf das Datenblatt-Symbol in der Symbolleiste. Access wechselt dann direkt in die Datenblattansicht und ermDglicht die Eingabe von Daten.
Tipp
Aus der Entwurfsansicht in die Datenblattansicht wechseln
49
Daten verwalten
Abb. 2.15 4ffnen der Adressentabelle in der Datenblattansicht
Abb. 2.16 Tabellenentwurf speichern
Den Aufbau eines Datenblatts verstehen Datens!tze und Datenfelder
Access Dffnet die Tabelle in der Datenblattansicht. Die Datenblattansicht – oder einfacher ausgedr,ckt: das Datenblatt – enth!lt Spalten mit dem Feldnamen der Adressentabelle. Die Zeilen des Datenblatts entsprechen den Datens!tzen der Adressentabelle. Da Sie noch keine Daten eingegeben haben, zeigt Access als einzige Zeile einen leeren Datensatz an. Wenn das Datenblatt einer Tabelle aktiv ist, finden Sie in der Men,leiste unter anderem den Auswahlpunkt Datens7tze, der speziell auf die Bearbeitung von Daten zugeschnitten ist. Die Befehle dieses Men,s werden in den folgenden Abschnitten erl!utert.
Entwurfs-Symbol
50
Auch die Symbolleiste !ndert sich. So ersetzt Access die Anzeige des Datenblattdurch das Entwurfs-Symbol. Mit ihm kDnnen Sie bei Bedarf von der Datenblatt- zur Entwurfsansicht des Tabellenfensters wechseln.
Mit dem Datenblatt der Adressentabelle arbeiten
Abb. 2.17 Das Men Datens(tze
Die folgenden Abschnitte beschreiben zun!chst die Techniken zur Bearbeitung von Daten im Datenblatt. Sie erfahren, wie Sie Adressen eingeben, !ndern, lDschen und suchen kDnnen. Die darauf folgenden Abschnitte besch!ftigen sich mit dem Layout des Datenblatts. Das Layout bestimmt, wie Access das Datenblatt anzeigt. Einige Elemente des Datenblatt-Layouts sind Schriftarten und -attribute, ZeilenhDhen und Spaltenbreiten, Gitternetzlinien und Text- und Hintergrundfarben.
Hinweis
Die Symbolleiste in der Datenblattansicht benutzen Viele der Befehle zur Eingabe und Bearbeitung von Daten in der Datenblattansicht sind nicht nur ,ber die Men,leiste, sondern zus!tzlich auch ,ber Schaltfl!chen der Symbolleisten und einige auch ,ber Kontextmen,s erreichbar. Access zeigt in der Datenblattansicht die Symbolleiste Tabellendatenblatt an. Tabelle 2.2 enth!lt eine Pbersicht ,ber die Symbolleiste Tabellendatenblatt.
Die Symbolleiste in der Datenblattansicht
Symbol
Bedeutung Aktiviert die Entwurfsansicht Speichert das Datenblatt-Layout
51
Daten verwalten
Die Symbolleiste in der Datenblattansicht (Forts.)
Symbol
Bedeutung Druckt das Datenblatt Rffnet die Seitenansicht des Datenblatts Pr,ft die Rechtschreibung von Texten Verschiebt das markierte Element in die Zwischenablage Kopiert das markierte Element in die Zwischenablage F,gt den Inhalt der Zwischenablage ein Pbertr!gt Formate (ist bei aktiver Datenblattansicht nicht verf,gbar) Macht die letzte 0nderung r,ckg!ngig F,gt einen Hyperlink ein Sortiert aufsteigend nach dem aktuellen Datenfeld Sortiert absteigend nach dem aktuellen Datenfeld Definiert einen auswahlbasierten Filter Definiert einen formularbasierten Filter Wendet einen Filter und eine Sortierung an oder entfernt den aktuellen Filter Sucht nach Daten Positioniert auf den neuen Datensatz LDscht den aktuellen Datensatz Aktiviert das Datenbankfenster
52
Mit dem Datenblatt der Adressentabelle arbeiten
Die Symbolleiste in der Datenblattansicht (Forts.)
Symbol
Bedeutung Aktiviert den Dialog zum Einf,gen von Unterdatenbl!ttern Entwirft ein neues Datenbankobjekt Rffnet den Office-Assistenten Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 2.2
Adressen eingeben Access zeigt die Spalten der Tabelle in der gleichen Reihenfolge an, wie sie durch die Anordnung in der Tabellenstruktur vorgegeben ist. Die linke Spalte ist daher f,r die Anzeige der Adressennummer zust!ndig. Die Feldnamen bilden die Spalten,berschriften. Ein Blick in die Statuszeile verr!t, dass Access hier die Feldbeschreibung aus der Tabellenstruktur anzeigt. Sie sehen also, dass sich die Eingabe der Beschreibungen bei der Anlage der Tabellenstruktur lohnt. Access verwaltet AutoWert-Felder automatisch. Daher l!sst es auch keine Eingabe in die Spalte f,r die Adressennummer zu. Wenn Sie dennoch versuchen, eine Adressennummer einzugeben oder zu !ndern, ertDnt ein Signalton und Access zeigt in der Statuszeile eine Fehlermeldung an. Sie sollten jetzt einfach die -Taste bet!tigen, so dass Access die Einf,gemarke in der zweiten Spalte anzeigt.
AutoWert-Felder
Sie kDnnen jetzt direkt mit der Eingabe von Daten beginnen. Geben Sie beispielsweise “Frau“ als Anrede ein und best!tigen Sie mit . In diesem Augenblick passieren mehrere Dinge. Access ,bernimmt Ihre Eingabe in die Zelle und wechselt automatisch zur n!chsten Spalte. Sie erkennen das daran, dass die Einf,gemarke jetzt in der Spalte f,r den Namen angezeigt wird.
Abb. 2.18 Daten eingeben
53
Daten verwalten
Neuer Datensatz
Außerdem Dffnet Access automatisch eine weitere Zeile. Diese zweite Tabellenzeile ist mit einem Sternchen gekennzeichnet. Außer der Anzeige von (AutoWert) als Adressennummer ist die Zeile jedoch leer. Es handelt sich hierbei um eine Besonderheit von Access. Access stellt immer einen neuen Datensatz zus!tzlich zu den tats!chlich in der Tabelle gespeicherten Datens!tzen dar. Dies hat einen entscheidenden Vorteil. Wenn Sie einen Datensatz eingeben wollen, dann brauchen Sie lediglich innerhalb des neuen Datensatzes zu klicken und kDnnen mit der Dateneingabe beginnen. Access f,gt diesen Datensatz dann automatisch zu den bereits bestehenden Datens!tzen hinzu.
Datensatz bearbeiten
Indikatorspalte und aktueller Datensatz
Datensatzmarkierer
Beachten Sie, dass der neue Datensatz stets durch ein Sternchen gekennzeichnet ist. Sobald Sie die Eingabe in den bislang leeren Datensatz beginnen, !ndert Access das Sternchen in die Darstellung eines Stiftes. Der Stift ist das Symbol f,r einen Datensatz, der gerade bearbeitet wird. Access f,gt der Tabelle gleichzeitig einen neuen leeren Datensatz hinzu, der wiederum mit einem Sternchen gekennzeichnet ist. Erst wenn Sie die 0nderungen speichern, wird der Datensatz durch ein Dreieck gekennzeichnet. Das Dreieck ist das Symbol f,r den aktuellen Datensatz, wenn dieser noch nicht ge!ndert bzw. die 0nderungen bereits gespeichert wurden. Probieren Sie das doch einmal aus. W!hlen Sie den Befehl Datens7tze > Datensatz speichern, und beobachten Sie, wie sich der Stift in ein Dreieck !ndert. Tabelle 2.3 gibt einen Pberblick ,ber die so genannten Datensatzmarkierer, die Access links im Datenblatt anzeigt.
Datensatzmarkierer
Symbol Datensatzmarkierer
54
Bedeutung
Dreieck
Markiert den aktuellen Datensatz, wenn dieser nicht ge!ndert oder die 0nderungen bereits gespeichert wurden.
Stift
Markiert den aktuellen Datensatz, wenn dieser gerade ge!ndert wird. Der Indikator !ndert sich in ein Dreieck, wenn die 0nderungen gespeichert werden.
Sternchen
Markiert den neuen Datensatz, den Access automatisch anzeigt. Wenn Sie mit der Eingabe in den neuen Datensatz beginnen, !ndert sich der Indikator automatisch in den Stift. Außerdem f,gt Access einen zus!tzlichen leeren Datensatz hinzu.
Mit dem Datenblatt der Adressentabelle arbeiten
Datensatzmarkierer (Forts.)
Symbol Datensatzmarkierer Gesperrt
Bedeutung Der Datensatz ist von einem anderen Anwender oder einer anderen Applikation gesperrt. Tabelle 2.3
Fahren Sie jetzt mit der Dateneingabe fort. Geben Sie den Namen, die Straße, die Postleitzahl, den Ort usw. ein. Wenn Sie die Eingabe in die letzte Spalte durch das Bet!tigen der -Taste abschließen, wechselt Access automatisch in die erste Spalte der n!chsten Zeile. Wenn Sie also das 0nderungsdatum eingegeben haben, zeigt Access die Einf,gemarke im Feld f,r die Adressennummer des neuen Datensatzes an. Auch in diesem Augenblick passieren wieder einige Dinge, die Sie wissen sollten. Mit dem Verlassen einer Zeile des Datenblattes best!tigen Sie n!mlich implizit alle 0nderungen, die Sie an dem Datensatz vorgenommen haben. Access speichert diese 0nderungen dann automatisch in der Tabelle. Das ist auch der Grund daf,r, dass Access den Stift als Datensatzmarkierer nicht mehr anzeigt. Der Aufruf des Befehls Datei > Datensatz speichern ist daher meistens ,berfl,ssig.
Datensatz speichern
Da der neue Datensatz jetzt der aktuelle Datensatz ist, zeigt Access in der entsprechenden Zeile das Dreieck an. Der abgeschlossene Datensatz wird ohne Markierung angezeigt. Die Eingabe Ihres ersten Datensatzes ist beendet.
Abb. 2.19 Weitere Datens!tze eingeben
Access erwartet Datumswerte in dem Format, das Sie in den L7ndereinstellungen der Systemsteuerung von Windows definiert haben. Im deutschsprachigen Raum kDnnen Sie beispielsweise “1.8.01“, “1. August 2001“ oder “01.08.2001“ verwenden.
Datumswerte eingeben
Sie kDnnen jetzt nach dem gleichen Verfahren weitere Datens!tze eingeben. Bet!tigen Sie auf dem Feld f,r die Adressennummer stets die -Taste. Tippen Sie dann Werte in die anderen Spalten ein und best!tigen Sie Ihre Eingabe jedesmal mit der -Taste. Alles weitere erledigt Access.
55
Daten verwalten
Adressen %ndern Die Technik zur Eingabe neuer Daten haben Sie bereits kennen gelernt. Sie klicken einfach innerhalb eines Feldes des neuen Datensatzes und beginnen mit der Eingabe. Dieser Abschnitt erl!utert das Bearbeiten bereits eingegebener Adressen. Im n!chsten Abschnitt erfahren Sie dann, wie Sie Daten lDschen kDnnen.
Aufbau eines Datenblatts
Bevor Sie mit dem 0ndern von Daten beginnen, sollten Sie sich den Aufbau eines Datenblatts verdeutlichen. Ein Datenblatt besteht aus Zeilen und Spalten. Die Kreuzpunkte von Zeilen und Spalten bilden die so genannten Zellen. Wenn Sie Daten !ndern, dann sind das in aller Regel die Inhalte von Zellen. Sie !ndern also beispielsweise den Wert des aktuellen Datenfeldes im aktuellen Datensatz. Eine Ausnahme von dieser Regel ist das Einf,gen oder LDschen eines ganzen Datensatzes oder einer ganzen Tabelle. Außerdem kDnnen Sie mit Access so genannte Aktualisierungsabfragen definieren, die mehrere oder sogar alle Datens!tze einer Tabelle in einem Schritt !ndern. Mehr zu diesem Thema finden Sie in Kapitel 5 Abfragen unter der Pberschrift Aktualisierungsabfragen.
Zellen ausw!hlen
Bevor Sie die Daten einer Zelle !ndern kDnnen, m,ssen Sie sie aktivieren. Wenn Sie die Maus verwenden, dann klicken Sie die zu !ndernde Zelle einfach an. Verwenden Sie zuvor gegebenenfalls die horizontale und die vertikale Rollleiste, um den entsprechenden Bereich der Tabelle einsehen zu kDnnen. Wenn Sie dann innerhalb der Zelle klicken, zeigt Access dort automatisch die Einf,gemarke an.
Abb. 2.20 Die Navigationsschaltfl!chen
Navigationsschaltfl!chen
56
Im unteren Teil des Datenblatts finden Sie links neben der horizontalen Rollleiste einige Symbole, die f,r das Positionieren auf Datens!tze vorgesehen sind. Tabelle 2.4 erl!utert dieses Symbole.
Mit dem Datenblatt der Adressentabelle arbeiten
Schaltfl%chen zur Navigation im Datenblatt
Schaltfl!che
Wirkung Positioniert auf den ersten Datensatz Positioniert auf den vorhergehenden Datensatz Positioniert auf den nachfolgenden Datensatz Positioniert auf den letzten Datensatz Positioniert auf den neuen Datensatz Klicken Sie in dieses Feld und geben Sie eine Datensatznummer ein, damit Access den entsprechenden Datensatz aktiviert. Mit der %-Taste gelangen Sie ebenfalls in dieses Feld. Tabelle 2.4
Wenn Sie die Tastatur bevorzugen, um den richtigen Datensatz auszuw!hlen, dann haben Sie dazu mehrere MDglichkeiten. Sie kDnnen beispielsweise die Tasten V, Y, U und O verwenden. Weitere Tastenkombinationen finden Sie in Tabelle 2.5.
Tastatur
Alternativ kDnnen Sie auch die Unterpunkte des Befehls Bearbeiten > Gehe zu verwenden, um den ersten, letzten, n!chsten, vorhergehenden oder neuen Datensatz auszuw!hlen. Die Wirkung dieser Befehle entspricht der Wirkung der Navigationsschaltfl!chen in Tabelle 2.4. F,r das Positionieren auf den neuen Datensatz gibt es mit dem Befehl Einf1gen > Datensatz eine weitere Alternative. Auf die Auswahl des Datensatzes folgt die Auswahl des Datenfeldes. In diesem Fall eignen sich die Tasten T und HT.
Tasten in der Datenblattansicht
Taste(n)
Wirkung
T
Aktiviert die n!chste Zelle
HT
Aktiviert die vorhergehende Zelle
P
Einf,gemodus: Aktiviert die erste Zelle der aktuellen Zeile 0nderungsmodus: Positioniert die Einf,gemarke auf den Anfang des Feldes
57
Daten verwalten
Tasten in der Datenblattansicht (Forts.)
Taste(n)
Wirkung
:
Einf,gemodus: Aktiviert die letzte Zelle der aktuellen Zeile 0nderungsmodus: Positioniert die Einf,gemarke auf das Ende des Feldes
V
Aktiviert die n!chste Zeile
Y
Aktiviert die vorhergehende Zeile
SP
Einf,gemodus: Aktiviert die erste Zelle der ersten Zeile 0nderungsmodus: Positioniert die Einf,gemarke auf den Anfang des Feldes
S:
Einf,gemodus: Aktiviert die letzte Zelle der letzten Zeile 0nderungsmodus: Positioniert die Einf,gemarke auf das Ende des Feldes
U
Bl!ttert eine Seite nach unten
O
Bl!ttert eine Seite nach oben
S+
Aktiviert die erste Zelle des leeren Datensatzes, den Access automatisch anzeigt
"
Wechselt zwischen Einf,ge- und 0nderungsmodus
H"
Rffnet das Zoom-Fenster Tabelle 2.5
Sie erkennen die jeweils aktuelle Zelle daran, dass sie entweder invertiert, oder daran, dass die Einf,gemarke innerhalb der Zelle dargestellt wird. Wenn Sie die richtige Zelle gefunden haben, dann gibt es zwei MDglichkeiten:
&nderungsmodus
Einf gemodus
58
Wenn Sie die Zelle mit der Maus angeklickt haben, befindet sich Access bereits im 0nderungsmodus. Sie erkennen dies an der Darstellung der Einf,gemarke. Setzen Sie dann die Cursor-Tasten dazu ein, um auf ein bestimmtes Zeichen zu positionieren. Sie kDnnen einzelne Zeichen oder WDrter markieren, lDschen oder in die Zwischenablage kopieren. Wenn Access den Feldinhalt invertiert darstellt, dann ist der Einf,gemodus aktiv. Wenn Sie in diesem Modus mit der Eingabe von Daten beginnen, dann wird der bisherige Feldinhalt ,berschrieben. Access lDscht den alten Feldinhalt und erwartet Ihre Eingaben.
Mit dem Datenblatt der Adressentabelle arbeiten
Nur wenn Sie zun!chst die "-Taste bet!tigen, dann wechselt Access in den 0nderungsmodus und stellt die Einf,gemarke dar. Sie kDnnen dann den bisherigen Feldinhalt bearbeiten. Pber das Register Tastatur des Dialogs, den Sie mit dem Befehl Extras > Optionen Dffnen, kDnnen Sie die Funktionsweise der Cursor-Tasten und das Verhalten von Access beim Aktivieren eines Feldes einstellen. So l!sst sich Access beispielsweise so konfigurieren, dass die Einf,gemarke beim Aktivieren eines Feldes automatisch am Ende des Feldinhalts dargestellt wird. Weitere Hinweise zu diesem Thema finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs unter der Pberschrift Access konfigurieren. In beiden F!llen kDnnen Sie die Eingabe durch das Bet!tigen der - oder der T-Taste abschließen. Beachten Sie jedoch, dass Access die 0nderungen erst in der Tabelle speichert, wenn Sie den Datensatz bzw. die Datenblattzeile verlassen oder den Befehl Datens7tze > Datensatz speichern ausw!hlen. Bis dahin kDnnen Sie alle noch nicht gespeicherten 0nderungen durch die Auswahl des Befehls Bearbeiten > R1ckg7ngig, einen Mausklick auf das R1ckg7ngig-Symbol oder das Bet!tigen der E-Taste wieder r,ckg!ngig machen. Hierbei ist zu beachten, dass einmaliges Bet!tigen des jeweiligen Befehls den vorherigen Zustand in der aktuellen Zelle wiederherstellt. Mehrmaliges Bet!tigen nimmt alle 0nderungen am aktuellen Datensatz zur,ck.
Tipp
Eingabe abschließen
&nderungen r ckg!ngig machen
Abb. 2.21 Das Zoom-Fenster
59
Daten verwalten
Access ermDglicht f,r fast alle Eingabefelder den Aufruf des Zoom-Fensters. Wenn Ihnen der Platz zur Eingabe in eine Zelle nicht ausreicht, dann Dffnen Sie das ZoomFenster mit der Tastenkombination H". Das Zoom-Fenster stellt einen vergrDßerten Eingabebereich dar. Geben Sie die Daten ein und klicken auf OK, oder bet!tigen Sie die -Taste, um die Eingabe abzuschließen. Tabelle 2.6 stellt die gerade beschriebenen Tasten zur Bearbeitung von Daten noch einmal ,bersichtlich dar. Die Tabelle enth!lt zus!tzlich einige Tastenkombinationen, die Ihnen die Eingabe von Daten erleichtern.
Tasten zur Bearbeitung von Daten
Taste
Wirkung
"
Wechselt zwischen dem Einf,ge- und dem 0nderungsmodus
H"
Rffnet das Zoom-Fenster
E
Hebt die noch nicht gespeicherten 0nderungen am aktuellen Datensatz wieder auf
S#
Kopiert den Wert aus dem gleichen Datenfeld des vorhergehenden Datensatzes
SAK
Ersetzt den Wert der Zelle durch den in der Tabellendefinition festgelegten Vorgabewert. Der Vorgabewert wird in der Tabellenstruktur mit der zus!tzlichen Feldeigenschaft Standardwert definiert
Sa
Markiert alle Zellen des Datenblatts
H
Speichert den aktuellen Datensatz Tabelle 2.6
Adressen l&schen Bevor Sie den Befehl zum LDschen ausw!hlen, m,ssen Sie zun!chst den Bereich markieren, den Sie lDschen wollen. Es kann sich dabei um eine Folge von Zeichen, eine Zelle, einen oder mehrere Datens!tze handeln.
Zeichen markieren
60
Zum Markieren mehrerer Zeichen positionieren Sie die Einf,gemarke zun!chst auf das erste zu markierende Zeichen. Ziehen Sie sie dann bei festgehaltener linker Maustaste auf das letzte zu markierende Zeichen. Access stellt die markierten Zeichen invertiert dar und Sie kDnnen sie mit dem Befehl Bearbeiten > L4schen lDschen.
Mit dem Datenblatt der Adressentabelle arbeiten
Abb. 2.22 Wort via Doppelklick markieren
Sofern Sie eines oder mehrere WDrter einer Zelle markieren wollen, f,hren Sie einen Doppelklick auf das erste zu markierende Wort durch. Halten Sie die linke Maustaste gedr,ckt und erweitern Sie die Markierung durch Ziehen mit der Maus. Access f,gt dem markierten Bereich dann weitere WDrter hinzu. Klicken Sie zun!chst innerhalb der Zelle, die Sie markieren wollen. Access stellt die Einf,gemarke innerhalb der Zelle dar. Bet!tigen Sie dann die "-Taste, so dass Access den gesamten Inhalt der Zelle markiert. Die Auswahl des Befehls Bearbeiten > L4schen f,hrt zum LDschen des entsprechenden Feldwertes.
Wortweise lschen
Inhalt einer Zelle lschen
Abb. 2.23 Feldwert ber das Kontextmen lschen
Sie kDnnen das LDschen eines Zellinhalts auch mit der Maus erledigen. Klicken Sie dazu mit der rechten Maustaste auf die gew,nschte Zelle, und w!hlen Sie den Befehl Ausschneiden aus dem Kontextmen,. Der Befehl Ausschneiden lDscht den Zellinhalt in die Zwischenablage von Windows. Um einen Datensatz zu lDschen, m,ssen Sie diesen zun!chst aktivieren, indem Sie die Einf,gemarke in eine beliebige Zelle der entsprechenden Datenblattzeile positionieren. W!hlen Sie dann entweder den Befehl Bearbeiten > Datensatz l4schen aus der Men,leiste oder klicken Sie auf das Datensatz l4schen-Symbol der Symbolleiste und best!tigen Sie die folgende Meldung mit einem Druck auf die Schaltfl!che Ja.
Datensatz lschen
61
Daten verwalten
Tipp
Auch das LDschen eines Datensatzes kDnnen Sie ,ber das Kontextmen, erledigen. Klicken Sie dazu mit der rechten Maustaste auf die Indikatorspalte des zu lDschenden Datensatzes und w!hlen Sie den Befehl Datensatz l4schen aus dem Kontextmen,.
Abb. 2.24 Datensatz lschen
Mehrere Zeilen markieren
Wenn Sie eine Gruppe von zusammenh!ngenden Datens!tzen gleichzeitig lDschen wollen, markieren Sie zun!chst den ersten Datensatz. Klicken Sie anschließend bei gedr,ckter H-Taste auf den letzten zu markierenden Datensatz, so dass Access alle dazwischen liegenden Datens!tze ebenfalls markiert.
Ziehen mit der Maus
Als Variante kDnnen Sie auch hier die Technik des Ziehens anwenden. Klicken Sie auf den Datensatzmarkierer des ersten zu markierenden Datensatzes, und erweiteren Sie die Markierung dann, indem Sie die Maus bei festgehaltener linker Taste nach oben oder nach unten f,hren. Access erweitert die Markierung um alle Datenblattzeilen, die zwischen der aktuellen und der zuerst markierten Tabellenzeile liegen. W!hlen Sie schließlich den Befehl Bearbeiten > Datensatz L4schen aus, um die Gruppe der Datens!tze zu lDschen.
Lschen r ckg!ngig machen
Versehentlich gelDschte Zeichen oder WDrter kDnnen Sie durch die Auswahl des Befehls Bearbeiten > R1ckg7ngig oder einen Klick auf das gleichnamige Symbol wieder zur,ckholen. Achtung: Das LDschen von Datens!tzen bzw. Datenblattzeilen ist immer endg,ltig. Wenn Sie einen Datensatz einmal gelDscht haben, sind die Daten verloren. Der Befehl Bearbeiten > R1ckg7ngig ist f,r gelDschte Datens!tze nicht verf,gbar.
Bearbeiten > Ausschneiden
62
Verwenden Sie gegebenenfalls den Befehl Bearbeiten > Ausschneiden, wenn Sie nicht sicher sind, ob Sie zu lDschende Daten noch benDtigen. Dieser Befehl lDscht den Datensatz zwar auch endg,ltig, erzeugt jedoch eine Kopie in der Zwischenablage von Windows. Sie kDnnen den Datensatz dann sp!ter mit Bearbeiten > Einf1gen wieder aus der Zwischenablage einf,gen.
Mit dem Datenblatt der Adressentabelle arbeiten
Adressen suchen Solange Sie nur wenige Adressen in Ihrer Datei speichern, finden Sie einen bestimmten Eintrag wahrscheinlich am besten, indem Sie die Tabelle durchbl!ttern. Sobald sich der Adressenbestand auf mehrere Hundert oder Tausend vergrDßert, werden Sie die Suchfunktion von Access nicht mehr missen wollen. Rffnen Sie in diesem Fall zun!chst die Adressentabelle, und w!hlen Sie dann den Befehl Bearbeiten > Suchen, oder klicken Sie auf das Suchen-Symbol der Symbolleiste. In beiden F!llen Dffnet Access den gleichnamigen Dialog.
Bearbeiten > Suchen
Access sieht verschiedene MDglichkeiten zur Suche vor. Welche MDglichkeit Sie w!hlen, h!ngt ganz von den Voraussetzungen ab. Diese bestimmen maßgeblich die Suchdauer. Ung,nstige Voraussetzungen sind gegeben, wenn Sie weder den genauen Suchbegriff kennen noch eine Vorstellung davon haben, in welchem Datenfeld gesucht werden soll. Die Kenntnis des genauen Suchbegriffs und des zu durchsuchenden Datenfeldes hingegen schr!nkt die Suche ein und beschleunigt sie.
Abb. 2.25 Alle Datenfelder durchsuchen
Im ung,nstigsten Fall ist Ihnen nur ein Teil des Suchwertes bekannt. Sie wissen weder genau, in welchem Feld, noch, an welcher Position innerhalb des Feldes der Suchwert zu finden ist. In diesem Fall geben Sie die Ihnen bekannte Zeichenfolge in das Kombinationsfeld Suchen nach ein. Aus dem Kombinationsfeld Vergleichen w!hlen Sie den Eintrag Teil des Feldinhaltes. Da Sie nicht genau wissen, in welchem Feld der Eintrag vorkommt, w!hlen Sie im Kombinationsfeld Suchen in den Eintrag Adressen: Tabelle.
Suchen nach einem Teil des Feldwertes
63
Daten verwalten
Suchbereich
Suchen und Weitersuchen
Weitersuchen
Suchen in einem bestimmten Feld
Ist im Kombinationsfeld Suchen der Eintrag Alle markiert, wird das ganze Dokument durchsucht. Falls Abw7rts oder Aufw7rts markiert ist, wird der Bereich vom aktuellen Feld bis zum unteren bzw. oberen Ende durchsucht. Access f,hrt den Vergleich zeichenweise durch und findet alle Felder, in denen der Suchwert an einer beliebigen Stelle enthalten ist. So wird bei der Suche nach “gasse“ beispielsweise die Straße “Obergasse“ oder der Name “Gassenhauer“ gefunden. Zum Starten des Suchvorgangs bet!tigen Sie die Weitersuchen-Schaltfl!che. Wenn die Suche erfolgreich verl!uft, markiert Access die Fundstelle durch die Darstellung in inverser Schrift. Es kommt vor, dass die gefundene Stelle durch den Suchen-Dialog verdeckt wird. Sie erkennen dies leicht durch die Position des Datensatzmarkierers. Klicken Sie in diesem Fall auf die Titelzeile des Suchfensters und verschieben Sie es an eine geeignetere Position. Durch fortgesetztes Bet!tigen der Schaltfl!che Weitersuchen kDnnen Sie weitere Vorkommen des Suchwertes aufsp,ren. Access f,hrt die Suche dann in der Richtung fort, die Sie ,ber das Kombinationsfeld Suchen eingestellt haben. Sie kDnnen so alle Vorkommen des Suchwertes aufsp,ren oder die Suche durch einen Mausklick auf die Schaltfl!che Schließen beenden. Sie kDnnen den Suchvorgang erheblich beschleunigen, wenn Sie das Feld kennen, in dem gesucht werden soll. In diesem Fall markieren Sie zun!chst eine Zelle der Spalte oder die ganze Spalte, in der Access die Suche durchf,hren soll. Wenn Sie anschließend den Suchen-Dialog aufrufen, stellt Access im Kombinationsfeld Suchen in zwei Alternativen zur Wahl: den markierten Datensatz oder die gesamte Tabelle. Um schneller ans Ziel zu kommen, markieren Sie hier die Bezeichnung der zu untersuchenden Spalte. Diese Vorgehensweise funktioniert allerdings nur, wenn wirklich nur eine Spalte bzw. ein Feld markiert ist.
Abb. 2.26 Suchen nach dem Teil einer Straßenbezeichnung
Die Suche in einem bestimmten Datenfeld kDnnen Sie auch ,ber das Kontextmen, starten. Gehen Sie wie folgt vor: Tipp
64
Mit dem Datenblatt der Adressentabelle arbeiten
1
Klicken Sie mit der rechten Maustaste auf die Spalten,berschrift des Feldes, in dem Sie suchen wollen.
2
W!hlen Sie den Befehl Suchen aus dem Kontextmen,.
Access Dffnet den Suchen-Dialog und zeigt in der Titelzeile den Namen des Datenfeldes an, auf das Sie geklickt haben. Die Suche erfolgt am schnellsten, wenn Sie wissen, wie der Suchwert beginnt, oder sogar den vollst!ndigen Suchwert kennen. In diesem Fall w!hlen Sie aus dem Kombinationsfeld Vergleichen den Eintrag Anfang des Feldinhaltes oder Ganzes Feld. Manchmal liegt die Suche nach bestimmten Feldwerten darin begr,ndet, dass an den gefundenen Datens!tzen bestimmte Ver!nderungen vorgenommen werden sollen. Wenn Sie die gefundenen Werte gegen neue Werte ersetzen wollen, sollten Sie im Suchen und Ersetzen-Dialog zum Registerblatt Ersetzen wechseln. Dieser Befehl gestattet es, den Prozeß des Ersetzens weitgehend zu automatisieren. In einigen F!llen ist auch eine Aktualisierungsabfrage geeigneter. Aktualisierungsabfragen werden in Kapitel 5 Abfragen dieses Buchs besprochen.
Indexsuche
Suchen und Ersetzen
Um eine Zeichenfolge oder einen ganzen Feldinhalt durch einen anderen zu ersetzen, tragen Sie zun!chst die neue Zeichenfolge in das Textfeld Ersetzen durch ein. Haben Sie die zu ersetzende Zeichenfolge gefunden, klicken Sie auf die Schaltfl!che Ersetzen. Manchmal soll eine Zeichenfolge im gesamten Datenblatt durch eine andere ersetzt werden. Dann bet!tigen Sie einfach die Schaltfl!che Alle ersetzen.
Abb. 2.27 Suchen und Ersetzen
H!ufig l!sst es sich jedoch nicht umgehen, die Bearbeitung der Daten manuell vorzunehmen. In diesem Fall ist es recht hilfreich, die Suche f,r die Dauer der Datenbearbeitung unterbrechen zu kDnnen. 0ltere Access-Versionen bis Access 97 sind hier nicht sehr kooperativ. Sie m,ssen den Suchen und Ersetzen-Dialog dazu schließen, die 0nderung von Hand vornehmen und anschließend den Dialog erneut aufrufen. Mit Access XP ist dies einfacher. Sie klicken einfach bei geDffnetem Suchen und Ersetzen-Dialog in die Tabelle und !ndern die Daten.
Suche unterbrechen
65
Daten verwalten
Weitersuchen
Anschließend aktivieren Sie den Dialog erneut per Mausklick und bet!tigen die Schaltfl!che Weitersuchen. Der Dialog beh!lt die aktuellen Einstellungen bei. Sie m,ssen lediglich beachten, dass Access genau an der Stelle weitersucht, an der sich die Einf,gemarke bei Wiederaufnahme der Suche befindet.
Datens%tze sortieren und filtern (bersicht
Access zeigt den Inhalt einer Tabelle in der Datenblattansicht standardm!ßig in der Reihenfolge des Prim!rschl,ssels an. Um die Sortierung zu !ndern, gibt es unter anderem folgende MDglichkeiten: Die Befehle Aufsteigend und Absteigend eignen sich f,r eine vor,bergehende Sortierung des Datenblatts. Diese Sortierung bleibt nur solange bestehen, wie das Datenblatt aktiv ist.
Befehle Aufsteigend und Absteigend
Mit einem Filter kDnnen Sie nach einem oder mehreren Datenfeldern sortieren und Datens!tze filtern. Da sich Filter in der Datenbank speichern lassen, kDnnen Sie sie sp!ter erneut abrufen. Im folgenden Abschnitt dieses Kapitels finden Sie weitere Hinweise zu Filtern.
Filter
Mit einer Abfrage kDnnen Sie ebenfalls eine neue Sortierung herstellen und diese speichern. Sie kDnnen die Abfrage dann in der Datenblattansicht Dffnen oder Formulare und Berichte entwerfen, die auf der Abfrage basieren. Hinweise zum Arbeiten mit Abfragen finden Sie in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs. Das Kapitel 5 Abfragen beschreibt den Entwurf von Abfragen.
Abfrage
Access bietet dar,ber hinaus die MDglichkeit, Sortierungen und Filter in den Eigenschaften von Tabellen, Abfragen, Formularen, Berichten und Datenzugriffsseiten zu hinterlegen. Weitere Hinweise hierzu finden Sie in den Kapitel 4 Tabellen, Kapitel 5 Abfragen, Kapitel 6 Formulare, Kapitel 7 Berichte und Kapitel 8 Datenzugriffsseiten. Wie Sie mit Makros Sortierreihenfolgen definieren, erfahren Sie im Kapitel Makroprogrammierung.
Nach Datenfeldern sortieren Aufsteigend sortieren
66
Mit dem Befehl Aufsteigend kDnnen Sie die Tabelle ad hoc nach einem Datenfeld sortieren lassen. Gehen Sie wie folgt vor: 1
Klicken Sie auf eine beliebige Stelle innerhalb der zu sortierenden Spalte des Datenblatts.
2
W!hlen Sie den Befehl Aufsteigend aus dem Kontextmen,, klicken Sie auf das gleichnamige Symbol oder w!hlen Sie den Befehl Datens7tze > Sortierung > Aufsteigend aus der Men,leiste.
Wenn Sie eine absteigende Sortierung w,nschen, w!hlen Sie den Befehl Absteigend aus dem Kontextmen,, klicken Sie auf das gleichnamige Symbol oder w!hlen Sie den Befehl Datens7tze > Sortierung > Absteigend aus der Men,leiste.
Mit dem Datenblatt der Adressentabelle arbeiten
Um eine mit den Befehlen Aufsteigend und Absteigend hergestellte Sortierung wieder aufzuheben, w!hlen Sie den Befehl Filter > Sortierung entfernen aus dem Men, Datens7tze oder dem Kontextmen,.
Sortierung aufheben
Abb. 2.28 Datenblatt aufsteigend nach Namen sortieren
Mit der Anwendung der auf- oder absteigenden Sortierung auf ein Datenblatt !ndern Sie die Eigenschaft Sortiert nach des Tabellenentwurfs. Access fragt deshalb beim Schließen des Datenblatts, ob Sie die 0nderungen am Entwurf der Tabelle speichern wollen. Wenn Access die Sortierung beim n!chsten Rffnen wieder herstellen soll, dann beantworten Sie die Frage mit einem Klick auf die Schaltfl!che Ja, andernfalls klicken Sie auf die Schaltfl!che Nein.
Hinweis
Mit auswahlbasierten Filtern arbeiten Access stellt im Datenblatt in der Regel alle Datens!tze der zugrunde liegenden Tabelle dar. Mithilfe eines so genannten Filters kDnnen Sie Kriterien definieren, die die anzuzeigenden Datens!tze erf,llen m,ssen. Der einfachste Weg, einen Filter zu definieren, ist ein auswahlbasierter Filter. Klicken Sie auf eine Zelle des Datenblatts und dann auf die Schaltfl!che Auswahlbasierter Filter in der Symbolleiste. Access zeigt im Datenblatt dann nur noch die Datens!tze an, die im entsprechenden Datenfeld denselben Wert wie die angeklickte Zelle haben. Alternativ kDnnen Sie auch den Befehl Auswahlbasierter Filter aus dem Men, Datens7tze > Filter oder dem Kontextmen, ausw!hlen.
Auswahlbasierten Filter definieren
Klicken Sie beispielsweise in der Spalte PLZ und Ort auf eine Zelle mit dem Wert “40444 D1sseldorf“. Access zeigt dann nach der Auswahl des Befehls Auswahlbasierter Filter aus dem Men, Datens7tze > Filter oder dem Kontextmen, nur noch die Datens!tze mit dem Wert “40444 D1sseldorf“ an. Datens!tze kDnnen sogar nach Teilinhalten von Datenfeldern gefiltert werden. Markieren Sie dazu nur einen Teil 67
Daten verwalten
eines Datenfeldes, zum Beispiel “D1sseldorf“ in einem beliebigen Feld der Spalte PLZ und Ort. Wenn Sie nun den Befehl Auswahlbasierter Filter ausf,hren, werden alle Datens!tze mit dem Ort “D1sseldorf“ angezeigt, unabh!ngig von der Postleitzahl.
Abb. 2.29 Auswahlbasierten Filter definieren
Auswahlausschließender Filter
Mit einem auswahlausschließenden Filter erreichen Sie genau das Gegenteil wie mit einem auswahlbasierten Filter. Hier zeigt Access nur die Datens!tze an, die im entsprechenden Datenfeld einen anderen Wert wie die angeklickte Zelle haben. Sie kDnnen den Befehl Auswahlausschließender Filter mehrfach wiederholen, um mehrere Werte aus dem Datenblatt auszublenden. Access schreibt dabei jedes weitere Kriterium im Filterentwurf fort. Weitere Hinweise hierzu finden Sie weiter unten im Abschnitt Gemeinsamkeiten von auswahlbasierten, formularbasierten und Spezialfiltern.
Filter entfernen
Sie erkennen einen aktiven Filter daran, dass die Schaltfl!che Filter entfernen in der Symbolleiste aktiviert ist. Wenn Sie auf das Symbol klicken, hebt Access den Filter auf und benennt das Symbol in Filter > Sortierung anwenden um. Da der Filter im Speicher erhalten bleibt, kDnnen Sie ihn durch erneutes Anklicken des Symbols Filter > Sortierung anwenden wieder aktivieren.
Mit formularbasierten Filtern arbeiten Formularbasierten Filter erstellen
68
Formularbasierte Filter bieten gegen,ber auswahlbasierten Filtern mehr Flexibilit!t, sind aber nicht ganz so einfach zu erzeugen. Um einen formularbasierten Filter zu erstellen, w!hlen Sie den Befehl Formularbasierter Filter aus dem Men, Datens7tze > Filter oder klicken Sie auf die gleichnamige Schaltfl!che der Symbolleiste.
Mit dem Datenblatt der Adressentabelle arbeiten
Access Dffnet dann die Entwurfsansicht f,r einen formularbasierten Filter. Die Spalten des Filterentwurfs entsprechen den Datenfeldern der Adressentabelle. Die Zeile des Filterentwurfs dient der Definition von Kriterien, die auf die Datens!tze der Adressentabelle angewendet werden. Abbildung 2.30 enth!lt beispielsweise das Kriterium “Firma“ f,r die Spalte Anrede und das Kriterium “40554 D1sseldorf“ f,r die Spalte PLZ und Ort.
Entwurfsansicht eines formularbasierten Filters
Abb. 2.30 Einen formularbasierten Filter definieren
Access f,hrt eine Und-Verkn,pfung der Kriterien einer Filterzeile durch. Durch einen Mausklick auf das Register Oder kDnnen Sie weitere Filterzeilen hinzuf,gen. Die verschiedenen Zeilen des Filterentwurfs werden dann Oder-verkn,pft. Wenn Sie den Filter aus Abbildung 2.30 durch einen Klick auf das gleichnamige Symbol anwenden, zeigt Access im Datenblatt nur noch die Adressen aus 40554 D,sseldorf an, bei denen das Feld Anrede den Eintrag Firma enth!lt. Das Entfernen und erneute Aktivieren von formularbasierten Filtern erfolgt genauso wie bei auswahlbasierten Filtern. Die Regeln zur Bildung von Kriterien werden im Zusammenhang mit Abfragen in Kapitel 3 Daten auswerten und pr7sentieren und Kapitel 5: Abfragen dieses Buchs beschrieben. Die noch nicht erw!hnten Schaltfl!chen der Symbolleiste des Filterentwurfs werden weiter unten im Zusammenhang mit Spezialfiltern besprochen.
Mit Spezialfiltern und -sortierungen arbeiten Ein Spezialfilter bietet von allen Filtertypen die grDßte Flexibilit!t, ist aber auch am aufwendigsten zu erstellen. Sie kDnnen mit einem Spezialfilter nicht nur die Datens!tze eines Datenblatts filtern, sondern auch nach einem oder mehreren Feldern sortieren. Zum Erstellen eines Spezialfilters w!hlen Sie den Befehl Spezialfilter/-sortierung aus dem Men, Datens7tze > Filter. Access Dffnet die Entwurfsansicht f,r Spezialfilter und -sortierungen, die im oberen Bereich eine Auswahlliste der Felder der Adressentabelle enth!lt. Im unteren Teil der Entwurfsansicht finden Sie den so genannten Entwurfsbereich f,r Filter- und Sortierkriterien. Dieser Entwurfsbereich wird im Zusammenhang mit Abfragen ausf,hrlich in Kapitel 5 Abfragen dieses Buchs besprochen.
Einen Spezialfilter erstellen
Entwurfsansicht eines Spezialfilters
69
Daten verwalten
Abb. 2.31 Spezialfilter/-sortierung definieren
Gemeinsamkeiten von auswahlbasierten, formularbasierten und Spezialfiltern Die Befehle zum Anwenden und Aufheben eines Spezialfilters sind dieselben wie bei formularbasierten Filtern. Die Ursache hierf,r besteht darin, dass Access auswahlbasierte, formularbasierte und Spezialfilter intern auf die gleiche Art und Weise verwaltet.
Abb. 2.32 Dieser Spezialfilter ist aus mehreren auswahlausschließenden Filtern entstanden
Vererbung von Filterkriterien
70
Eine Auswirkung dieser 0hnlichkeit besteht darin, dass Access die Kriterien aus dem zuletzt aktiv gewesenen Filter in einen neuen Filter ,bernimmt. Wenn Sie beispielsweise zuerst einen auswahlausschließenden und dann einen Spezialfilter definieren, finden Sie die Kriterien des auswahlausschließenden Filters im Spezialfilter wieder. Man kDnnte sagen, dass die Filterkriterien automatisch an neue Filter vererbt werden. Die vorherige Abbildung zeigt einen Spezialfilter, der aus Wiederholungen des Befehls Auswahlausschließender Filter entstanden ist. Dabei wurden zun!chst alle Eintr!ge, die “Firma“ als Anrede haben, und anschließend alle Eintr!ge, in deren Adresse die Zeichenfolge “D1sseldorf“ vorkommt, entfernt.
Mit dem Datenblatt der Adressentabelle arbeiten
Wenn Sie die automatisch vererbten Kriterien nicht benDtigen oder aus einem anderen Grund alle bereits bestehenden Kriterien lDschen wollen, dann klicken Sie im Filterentwurf auf das Symbol Alles l4schen.
Alles lschen
Ein Filter ist nur so lange verf,gbar, wie das Datenblatt geDffnet bleibt. Wenn Sie annehmen, dass Sie einen Filter sp!ter erneut benDtigen, sollten Sie ihn speichern. Access ermDglicht dies nur auf dem Wege, dass es den Filter als Abfrage speichert. Sie erreichen dies, indem Sie auf das Speichern-Symbol klicken.
Abb. 2.33 Filter als Abfrage speichern
Bei einem Klick auf das Symbol Von Abfrage laden Dffnet Access eine Auswahlliste der Abfragen der aktuellen Datenbank, die sich f,r die Verwendung als Filter eignen. Dabei erscheinen nur Auswahlabfragen, die auf der Adressentabelle basieren und keine Gruppierungsfunktionen haben. W!hlen Sie eine der Abfragen via Doppelklick aus, um sie als Filter zu laden. Anschließend kDnnen Sie den Filter wie gewohnt anwenden.
Filter aus Abfrage laden
Da Filter nur als Abfragen gespeichert werden kDnnen, ist eine Unterscheidung zwischen Filtern und anderen Abfragen im Datenbankfenster nicht mDglich. Wenn Sie eine solche Unterscheidung w,nschen, dann sollten Sie Filternamen wie in der vorherigen Abbildung mit der Zeichenkette Filter: beginnen lassen. Kapitel 3 Daten auswerten und pr7sentieren erl!utert die Vorgehensweise zur Definition von Kriterien im Zusammenhang mit Abfragen. In diesem Kapitel finden Sie auch weitergehende Hinweise zur Definition von Filtern, und zwar im Zusammenhang mit Formularen.
Hinweis
Das Datenblatt-Layout anpassen Access zeigt das Datenblatt einer Tabelle beim ersten Rffnen in einem standardisierten Layout an. Pber die Befehle des Format-Men,s kDnnen Sie das DatenblattLayout individuell anpassen. Viele Befehle des Format-Men,s sind außerdem ,ber Kontextmen,s und die Symbolleiste Format (Datenblatt) abrufbar.
71
Daten verwalten
Um diese Symbolleiste einzublenden, klicken Sie mit der rechten Maustaste auf eine Men,- oder Symbolleiste und w!hlen Sie die Option Format (Datenblatt) aus dem Kontextmen,. Tabelle 2.7 enth!lt eine Pbersicht ,ber die Schaltfl!chen der Symbolleiste Format (Datenblatt).
Die Symbolleiste Format (Datenblatt)
Symbol
Bedeutung Aktiviert ein Datenfeld bzw. eine Spalte des Datenblatts 0ndert die Schriftart 0ndert die SchriftgrDße 0ndert in Fettschrift 0ndert in Kursivschrift Unterstreicht Text 0ndert die Hintergrundfarbe f,r das Datenblatt 0ndert die Textfarbe f,r das Datenblatt 0ndert die Rahmen- und Linienfarben des Datenblatts 0ndert die Anzeige von Rasterlinien im Datenblatt 0ndert den Spezialeffekt f,r die Rasterlinien des Datenblatts Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 2.7
Paletten aus der Symbolleiste lsen
72
Die Symbole zum 0ndern von Hintergrundfarben, Textfarben, Rahmen- und Linienfarben, Rasterlinien und Spezialeffekte, Dffnen jeweils eine Palette, mit der Sie die entsprechenden Einstellungen vornehmen kDnnen. Damit Sie nicht jedesmal in die Symbolleiste klicken m,ssen, kDnnen Sie die Paletten aus der Symbolleiste lDsen. Klicken Sie dazu auf den grauen Balken im oberen Bereich der Palette und ziehen Sie sie auf die Arbeitsfl!che.
Mit dem Datenblatt der Adressentabelle arbeiten
Abb. 2.34 Palette aus der Symbolleiste lsen
Schriftarten und -attribute anwenden Mit der Wahl der richtigen Schrift kDnnen Sie das Datenblatt mitunter erheblich ,bersichtlicher gestalten, als dies mit den Standardeinstellungen von Access geschieht. So f,hrt beispielsweise eine kleinere Schriftart dazu, dass mehr Information auf eine Bildschirmseite passt. Eine grDßere Schriftart bewirkt hingegen, dass Text auch aus der Entfernung noch gut lesbar ist. Das kann beispielsweise bei Pr!sentationen hilfreich sein. Access erlaubt die Einstellung der Schrift nur f,r das gesamte Datenblatt. Das Markieren bestimmter Bereiche ist daher nicht notwendig. Die Variation der Schrift f,r einzelne Felder und andere Bereiche ist nur in Formularen und Berichten mDglich (siehe Kapitel 3 Daten auswerten und pr7sentieren, Kapitel 6: Formulare und Kapitel 7: Berichte). Das 0ndern von Schriften erfolgt ,ber den Men,befehl Format > Zeichen oder die Symbolleiste.
Mehr (bersichtlichkeit
Schrift ausw!hlen
Abb. 2.35 Einstellen von Schriftarten
Access zeigt im linken Teil des Dialogs alle unter Windows verf,gbaren Schriften an. Bei Windows sind die installierten TrueType-Schriften durch die Abk,rzung TT gekennzeichnet. Der Vorteil dieser Schriften besteht darin, dass sie auf dem Drucker garantiert in der gleichen Weise ausgegeben werden, wie sie auf dem Bildschirm zu sehen sind. Bei allen anderen Schriften ist dies nicht unbedingt gew!hrleistet.
TrueType-Schriften
73
Daten verwalten
Druckertreiber
Reihenfolge der Auswahl
Vorschau
Die Anzahl und Zusammenstellung der Schriften h!ngt außerdem von dem installierten Druckertreiber ab. Außerdem sind zahlreiche Schriften im Handel erh!ltlich. Diese lassen sich dann zus!tzlich unter Windows installieren. W!hlen Sie zun!chst stets die Schriftart und dann den Schriftschnitt und den Schriftgrad aus. Diese Reihenfolge ist ratsam, weil sich die AuswahlmDglichkeiten f,r Schriftschnitt und -grad mit der Schriftart !ndern. So ist beispielsweise nicht jede Schriftart in allen GrDßen verf,gbar. Bei Bedarf kDnnen Sie zus!tzlich das Kontrollk!stchen Unterstrichen ankreuzen und eine Farbe ausw!hlen. Beachten Sie die Vorschau im rechten unteren Teil des Dialogs. Hier zeigt Access einen Beispieltext mit den jeweils aktuellen Einstellungen an. Das Vorschaufeld ist besonders hilfreich, wenn Sie aus den verf,gbaren Schriften die f,r Sie geeignete ausw!hlen wollen. Wenn Sie alle Einstellungen vorgenommen haben, klicken Sie auf OK. Access zeigt das Datenblatt dann im neuen Gewand. Nur wenn Sie auf Abbrechen klicken, beh!lt Access die urspr,nglichen Einstellungen bei.
Tipp
Sie kDnnen die Standards f,r die Anzeige von Datenbl!ttern dauerhaft ver!ndern, indem Sie den Befehl Extras > Optionen aus dem Men,leiste w!hlen und das Register Datenblatt markieren. Hier kDnnen Sie beispielsweise Schriften und Farben einstellen. Weitere Hinweise zum Ver!ndern der Optionen von Access finden Sie in Kapitel 9: Eine Datenbank verwalten dieses Buchs.
Zeilenh&he und Spaltenbreite %ndern Die ZeilenhDhe l!sst sich nur gleichzeitig f,r alle Zeilen des Datenblatts ver!ndern. Eine VergrDßerung der ZeilenhDhe ist besonders bei langen Textfeldern und kleinen Spaltenbreiten interessant. Access f,hrt bei zwei- und mehrzeiligen ZeilenhDhen n!mlich einen automatischen Zeilenumbruch durch, so dass Textfelder mehrzeilig dargestellt werden.
Zeilenhhe mit der Maus einstellen
Der Dialog Zeilenh-he
74
Die Einstellung l!sst sich mit der Maus oder ,ber einen Dialog vornehmen. Positionieren Sie den Mauszeiger innerhalb des Datensatzmarkierers des Datenblatts zwischen zwei Zeilen, so dass sich der Mauszeiger in einen senkrechten Pfeil mit zwei Spitzen !ndert. Ziehen Sie die untere Begrenzung der Zeile dann an die neue Position. Alternativ kDnnen Sie auch den Befehl Zeilenh4he ausw!hlen, so dass Access den gleichnamigen Dialog anzeigt. Access zeigt den Befehl Zeilenh4he auch im Kontextmen, an, wenn Sie mit der rechten Maustaste auf die Indikatorspalte des Datenblatts klicken.
Mit dem Datenblatt der Adressentabelle arbeiten
Abb. 2.36 Datenblatt mit mehrzeiligen Texten
Access zeigt innerhalb des Dialogs die aktuelle ZeilenhDhe in der Einheit Punkt an. Ein Punkt entspricht etwa 0,376 Millimeter. Geben Sie den neuen Wert f,r die ZeilenhDhe in Punkt an, und klicken Sie auf OK. Wenn Sie das Kontrollk!stchen Standardh4he ankreuzen, passt Access die ZeilenhDhe automatisch an die aktuelle Schriftart an. Die Spaltenbreite kann im Unterschied zur ZeilenhDhe f,r jede Spalte einzeln eingestellt werden. Wenn Sie die Maus innerhalb der Pberschriftenzeile zwischen zwei Spalten positionieren, !ndert sich der Mauszeiger in einen waagerechten Pfeil mit zwei Spitzen. Sie kDnnen die rechte Begrenzung der Spalte dann an die neue Position ziehen. Access kann die Spaltenbreite automatisch optimieren. F,hren Sie dazu in der Pberschriftenzeile einen Doppelklick auf die rechte Spaltenbegrenzung durch. Access w!hlt die optimale Spaltenbreite so, dass das breiteste Datenfeld gerade noch dargestellt werden kann. Wenn Sie vorher mehrere oder alle Spalten des Datenblatts markieren und auf eine rechte Spaltenbegrenzung doppelklicken, stellt Access die entsprechenden Spaltenbreiten optimal ein. Alternativ kDnnen Sie auch den Befehl Format > Spaltenbreite ausw!hlen, so dass Access den gleichnamigen Dialog anzeigt. Sie finden den Befehl Spaltenbreite auch im Kontextmen,, wenn Sie mit der rechten Maustaste auf eine Spalten,berschrift klicken.
Spaltenbreite mit der Maus einstellen
Tipps & Tricks
Der Dialog Spaltenbreite
Geben Sie die neue Breite f,r die aktuelle oder alle markierten Spalten in Punkt ein oder kreuzen Sie das Kontrollk!stchen Standardbreite an. Die Schaltfl!che Anpassen entspricht dem Doppelklick auf die rechte Spaltenbegrenzung und bewirkt, dass Access die Spaltenbreite automatisch optimiert. 75
Daten verwalten
Abb. 2.37 Spaltenbreiten anpassen
Spalten verschieben Ziehen mit der Maus
Hinweis
Das Verschieben von Spalten ist recht einfach mit der Maus zu realisieren. Markieren Sie zun!chst eine oder mehrere Spalten, indem Sie mit dem Mauszeiger auf eine oder mehrere Spalten,berschriften klicken. Danach ziehen Sie sie an ihre neue Position. W!hrend des Ziehens zeigt Access mit einer verst!rkten senkrechten Linie die neue Position an. Beachten Sie, dass sich das Verschieben der Spalten in der Datenblattansicht nicht auf die Reihenfolge der Datenfelder in der Tabellendefinition auswirkt. Das Datenblatt ist lediglich ein Mittel zur Anzeige der Daten.
Spalten ausblenden Spalten ausblenden
Achtung
Spalten einblenden
Das Ausblenden ist recht hilfreich, wenn nur ein Teil der Tabellenspalten dargestellt werden soll. Markieren Sie zun!chst eine oder mehrere Spalten, und w!hlen Sie dann den Befehl Format > Spalten ausblenden aus der Men,leiste. Sie finden den Befehl Spalten ausblenden auch im Kontextmen,, wenn Sie mit der rechten Maustaste auf eine Spalten,berschrift klicken. Beachten Sie, dass die entsprechenden Spalten auch bei der Dateneingabe ausgeblendet bleiben. Sofern Sie neue Datens!tze anlegen, m,ssen Sie die Eingaben in die ausgeblendeten Spalten sp!ter nachholen. Sollen die ausgeblendeten Spalten wieder angezeigt werden, dann w!hlen Sie den Befehl Format > Spalten einblenden. Dieser Befehl Dffnet den gleichnamigen Dialog mit einer Auswahlliste aller Felder des Datenblatts. Die eingeblendeten Spalten sind durch ein H!kchen gekennzeichnet. Mithilfe der Kontrollk!stchen lassen sich Spalten ein- oder ausblenden. Da der Dialog recht ,bersichtlich gestaltet ist, eignet er sich zum Ausblenden von Spalten manchmal besser als der Befehl Format > Spalten ausblenden.
76
Mit dem Datenblatt der Adressentabelle arbeiten
Abb. 2.38 Spalten ein- und ausblenden
Spalten fixieren Der Befehl Format > Spalten fixieren fixiert die markierten Spalten, so dass sie st!ndig am linken Rand der Tabelle sichtbar sind. Auch dieser Befehl ist ,ber das Kontextmen, erreichbar.
Spalten fixieren
Abb. 2.39 Datenblatt mit fixierten Spalten
77
Daten verwalten
Spaltenfixierung aufheben
Access kennzeichnet die fixierten Spalten, indem es eine verst!rkte senkrechte Linie als Trennung zu den nicht-fixierten Spalten anzeigt. Der Befehl Format > Spaltenfixierung aufheben hebt die Fixierung wieder auf. Er stellt die urspr,ngliche Anordnung der Spalten jedoch nicht wieder her. Wenn dies erforderlich sein sollte, m,ssen Sie die ehemals fixierten Spalten manuell an ihre alte Position verschieben.
Das Raster des Datenblatts ver%ndern Access zeigt im Datenblatt ein Raster zur Unterteilung von Zeilen und Spalten an. Mithilfe des Befehls Format > Datenblatt und einigen Schaltfl!chen der Symbolleiste kDnnen Sie die Anzeige des Rasters beeinflussen.
Abb. 2.40 Rastereinstellungen
Mit dem Dialog kDnnen Sie die Rasterlinien und Spezialeffekte f,r die Zellen bzw. Felder des Datenblatts beeinflussen. Die Vorschau zeigt die Auswirkung Ihrer Einstellungen an, bevor Sie sie mit einem Klick auf die Schaltfl!che OK auf das Datenblatt ,bertragen.
Datenblatt-Layout speichern Datei > Speichern
78
Sie kDnnen das Datenblatt-Layout f,r eine Tabelle speichern, indem Sie den Befehl Datei > Speichern aus der Men,leiste ausw!hlen oder auf das Speichern-Symbol klicken. Access speichert mit dem Layout alle Einstellungen, die Sie ,ber die Befehle des Format-Men,s vorgenommen haben.
Mit dem Datenblatt der Adressentabelle arbeiten
Abb. 2.41 Datenblatt-Layout speichern
Access zeigt das Datenblatt beim n!chsten Rffnen dann in dem Layout an, das Sie zuletzt gespeichert haben. Access speichert das Datenblatt-Layout jeweils pro Tabelle. Sie kDnnen daher genauso viele verschiedene Datenblatt-Layouts speichern, wie Ihre Datenbank Tabellen enth!lt. Wenn Sie eine Tabelle kopieren, kopiert Access automatisch auch das Datenblatt-Layout. Wenn Sie das Datenblatt schließen, ohne das Layout vorher gespeichert zu haben, dann macht ein Dialog darauf aufmerksam. Sie kDnnen das Speichern dann nachholen oder die 0nderungen am Datenblatt-Layout verwerfen.
Hinweis
Datenblatt drucken Sie kDnnen eine Tabelle direkt aus der Datenblattansicht drucken, indem Sie auf das Drucken-Symbol klicken.
Drucken
Der Ausdruck erfolgt mit denselben Einstellungen, wie sie im Datenblatt aktiv sind. Access ber,cksichtigt die aktuelle Sortierreihenfolge und einen eventuell aktiven Filter. Der Ausdruck erfolgt auf dem Standarddrucker von Windows. Wenn das Datenblatt breiter als der bedruckbare Bereich des aktuellen Papierformats ist, dann druckt Access eine oder mehrere Folgeseiten, die nebeneinandergelegt das Datenblatt abbilden. Access verwendet zum Ausdruck das aktuelle Datenblatt-Layout. Es ist daher oft empfehlenswert, das Datenblatt vor dem Ausdruck ,ber die Befehle des FormatMen,s f,r den Ausdruck zu optimieren. In der Seitenansicht kDnnen Sie sich den Ausdruck vorab am Bildschirm ansehen. Klicken Sie statt auf das Drucker- auf das Seitenansichts-Symbol.
Folgeseiten
Tipp
Seitenansicht
Access zeigt im linken unteren Teil der Seitenansicht Navigationsschaltfl!chen an, mit denen Sie in den Druckseiten bl!ttern kDnnen. Mit dem Befehl Datei > Drucken kDnnen Sie den Ausdruck auf Papier starten. Mit einem Klick auf das Symbol Schließen beenden Sie die Seitenansicht, und Access zeigt wieder das Datenblatt an.
79
Daten verwalten
Abb. 2.42 Seitenansicht eines Datenblatts
Querformat
Tipp
W!hlen Sie in der Seitenansicht des Datenblatts den Befehl Datei > Seite einrichten aus der Men,leiste, um den gleichnamigen Dialog zu Dffnen. Klicken Sie auf das Register Seite und w!hlen Sie die Option Querformat als Ausrichtung, damit Access mehr Spalten nebeneinander drucken kann. MDglicherweise steigern Sie damit die Qualit!t des Ausdrucks. Die Anwendung dieser Funktion setzt nat,rlich voraus, dass sie von Ihrem Drucker unterst,tzt wird. Mit Berichten erzielen Sie bessere Ergebnisse beim Ausdruck von Daten. In Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs finden Sie eine Einf,hrung in Berichte und weitere Erl!uterungen zur Seitenansicht. Kapitel 7 Berichte besch!ftigt sich ausf,hrlich mit diesem Thema.
AutoBericht Eine gute Alternative zum Ausdruck des Datenblatts besteht in der Verwendung eines Standardberichts, der sich mit einem einzigen Mausklick entwerfen l!sst. Das AutoBericht-Symbol steht Ihnen unter anderem dann zur Verf,gung, wenn im Datenbankfenster eine Tabelle markiert oder ein Datenblatt geDffnet ist. Mit der Auswahl des Eintrags AutoBericht aus der Liste des Symbols Neues Objekt erstellt Access automatisch einen Bericht und Dffnet ihn in der Seitenansicht. Mit den Navigationsschaltfl!chen kDnnen Sie dann in der Seitenansicht bl!ttern und ihn – wenn Sie mit dem Ergebnis zufrieden sind – ausdrucken.
80
In der Datenblattansicht den Tabellenentwurf %ndern
Abb. 2.43 AutoBericht
In der Datenblattansicht den Tabellenentwurf ndern Mit dem Befehl Einf1gen > Spalte kDnnen Sie dem Datenblatt einer Tabelle eine neue leere Spalte hinzuf,gen. Da die Aktion dem Hinzuf,gen eines neuen Datenfeldes im Tabellenentwurf entspricht, setzt Access automatisch den Wert Feld1 als Spalten,berschrift ein. Sie haben anschließend mit dem Kontextmen,befehl Spalte umbenennen die MDglichkeit, der Spalte einen neuen Feldnamen hinzuzuf,gen. Wenn Sie mit der Eingabe von Daten in das neue Datenfeld beginnen, analysiert Access Ihre Eingabe und weist automatisch den Felddatentyp zu. Wenn Sie beispielsweise einen Datumswert eingeben, erh!lt das neue Datenfeld den Felddatentyp Datum/Uhrzeit.
Felddatentyp
Um eine Spalte aus dem Datenblatt zu lDschen gehen Sie wie folgt vor: Spalte lschen
1
Klicken Sie im Datenblatt mit der rechten Maustaste auf eine Spalten,berschrift.
2
W!hlen Sie den Befehl Spalten l4schen aus dem Kontextmen,.
Beachten Sie, dass Access mit dem LDschen einer Spalte das gleichnamige Datenfeld aus der Tabellenstruktur entfernt. Dabei gehen alle im Datenfeld gespeicherten Daten unwiderruflich verloren. Access fordert Sie vorsichtshalber in einem Dialog auf, das LDschen zu best!tigen. 81
Daten verwalten
Abb. 2.44 Neue Spalte in ein Datenblatt einf gen
Abb. 2.45 Spalte lschen
Nachschlagespalte einf gen
Die Auswahl des Befehls Einf1gen > Nachschlagespalte f,hrt zum Start des Nachschlage-Assistenten von Access. Dieser Befehl hat damit dieselbe Wirkung wie die Auswahl des Felddatentyps Nachschlage-Assistent im Tabellenentwurf. Mit dem Nachschlage-Assistenten definieren Sie ein Datenfeld, dessen Werte in einer Werteliste oder einer anderen Tabelle nachgeschlagen werden. Der Nachschlage-Assistent eignet sich vor allem f,r relational verkn,pfte Tabellen und wird daher erst in Kapitel 4 Tabellen dieses Buchs besprochen.
Projektetabelle anlegen Zu Beginn dieses Kapitels haben Sie eine Adressentabelle erstellt. Sie haben das Datenblatt zur Eingabe und Bearbeitung von Daten kennen gelernt und das Layout des Datenblatts ver!ndert. In diesem Abschnitt erg!nzen Sie das Beispiel um eine Projektetabelle. Sie schaffen damit die Voraussetzung f,r die relationale Verkn,pfung der Adressen- und der Projektetabelle.
82
In der Datenblattansicht den Tabellenentwurf %ndern
Datenfelder der Projektetabelle Zur Anlage der Projektetabelle gehen Sie wie folgt vor: 1
Wechseln Sie – falls notwendig – in das Datenbankfenster.
2
W!hlen Sie den Befehl Einf1gen > Tabelle aus der Men,leiste.
3
F,hren Sie im Dialog Neue Tabelle einen Doppelklick auf den Eintrag Entwurfsansicht durch.
4
Geben Sie die Tabellendefinition aus Tabelle 2.8 ein.
Felder der Projekttabelle
Feldname
Felddatentyp
FeldgrDße
Projekt-Nr.
AutoWert
Titel
Text
100
Adress-Nr.
Zahl
Long Integer
Plan Abgabe
Datum/Uhrzeit
Plan Abgabe
Datum/Uhrzeit
Plan Rechnung
Datum/Uhrzeit
Plan Zahlung
Datum/Uhrzeit
Ist Abgabe
Datum/Uhrzeit
Ist EVT
Datum/Uhrzeit
Ist Rechnung
Datum/Uhrzeit
Ist Zahlung
Datum/Uhrzeit
Plan Faktor 1
Zahl
Double
Plan Faktor 2
Zahl
Double
Plan Faktor 3
Zahl
Double
Plan Faktor 4
Zahl
Double
Plan Faktor 1 Bezeichnung
Text
50
Plan Faktor 2 Bezeichnung
Text
50
Plan Faktor 3 Bezeichnung
Text
50
Plan Faktor 4 Bezeichnung
Text
50 83
Daten verwalten
Felder der Projekttabelle (Forts.)
Feldname
Felddatentyp
Ist Nettobetrag
W!hrung
MwSt
Zahl
Bemerkung
Memo
Anlagedatum
Datum/Uhrzeit
0nderungsdatum
Datum/Uhrzeit
FeldgrDße
Double
Tabelle 2.8
Prim!rschl ssel
Die eindeutige Identifikation jedes Projekts erfolgt ,ber das AutoWert-Feld ProjektNr. Markieren Sie dieses Feld, und w!hlen Sie den Befehl Bearbeiten > Prim7rschl1ssel aus der Men,leiste.
Abb. 2.46 Entwurfsansicht der Projektetabelle
Der Titel des Projekts wird in dem gleichnamigen Textfeld gespeichert. Dieses Feld kann eine Bezeichnung von bis zu 100 Zeichen L!nge aufnehmen.
Titel
Adresse-Nr
84
Das Feld Adresse-Nr dient der Zuordnung von Projekten zu Adressen. Es speichert die Adressennummer des Kunden oder Auftraggebers, mit dem ein Projekt abgewickelt wird. Im folgenden Abschnitt dieses Kapitels definieren Sie dieses Feld als Nachschlagefeld.
In der Datenblattansicht den Tabellenentwurf %ndern
Ein sehr wichtiges Merkmal jedes Projekts ist die Terminierung. Da Projekte sowohl plan- als auch kontrollierbar sein sollen, erscheint eine Aufteilung in Plan- und IstDaten als sinnvoll. Die n!chsten acht Felder der Projektetabelle speichern daher die Plan- und Ist-Werte f,r die Abgabe des Projekts an den Auftraggeber, den Termin der ersten VerDffentlichung (ErstverDffentlichungstermin bei Zeitschriftenartikeln, B,chern usw.), das Rechnungsdatum und das Zahlungsdatum. Da es sich bei allen acht Werten um Termine handelt, erscheint die Definition der Felder als Datumsfelder sinnvoll.
Termine
Abb. 2.47 Beispiel f r die Daten eines Projekts
Neben den Terminen spielt nat,rlich auch der Wert eines Projekts eine Rolle. F,r die Erfassung des geplanten Projektwertes sind vier Zahlenfelder vorgesehen. Bei der Definition dieser vier Felder m,ssen Sie ebenfalls einige zus!tzliche Feldeigenschaften festlegen.
Geplanter Projektentwurf
Wechseln Sie mit & in den Eingabebereich f,r die zus!tzlichen Eigenschaften, und w!hlen Sie aus dem Kontrollk!stchen Feldgr4ße den Eintrag Double. Diese Einstellung bestimmt, dass in den Feldern Dezimalzahlen mit doppelter Genauigkeit gespeichert werden. Ein Eintrag in das entsprechende Eingabefeld legt zus!tzlich fest, dass maximal zwei Dezimalstellen angezeigt werden. Die Namensgebung der vier Felder entspricht ihrer Verwendung als Faktoren. Jede Kalkulation setzt sich n!mlich aus mehr oder weniger vielen Faktoren zusammen. Da die Projektetabelle mDglichst flexibel eingesetzt werden soll, werden die Faktoren in der Tabellendefinition nicht n!her spezifiziert. Dieser zun!chst etwas abstrakt anmutende Zusammenhang wird in Tabelle 2.9 durch einige Beispiele verdeutlicht.
85
Daten verwalten
Beispiel fr die Kalkulation von Projekten
Feld
Beispiel Zeitschriftenartikel
Beispiel EDV-Beratung
Plan Faktor 1
Anzahl Seiten
Anzahl Tage
Plan Faktor 2
Seitenpreis
Tagessatz
Plan Faktor 3
Beteiligung
Rabatt
Plan Faktor 4
1
Risikoaufschlag Tabelle 2.9
Zur weiteren Erl!uterung soll das Beispiel EDV-Beratung einmal durchgerechnet werden. Angenommen, Sie benDtigen f,r ein Projekt zehn Tage und berechnen einen Tagessatz von DM 1.400,00. Wegen der bisher reibungslosen Abwicklung geben Sie dem Kunden 10% Rabatt. Dennoch berechnen Sie – wie bei allen anderen Kunden auch – einen pauschalen Risikoaufschlag von 30%. Sie w,rden in diesem Fall die in Tabelle 2.10 aufgef,hrten Werte eingeben. Das Projekt h!tte damit einen Plan-Wert von DM 16.380,00 (10*1400*0,9*1,3).
Wertebeispiel fr einen EDV-Berater
Feld
Bedeutung
Wert
Plan Faktor 1
Anzahl Tage
10
Plan Faktor 2
Tagessatz
1400
Plan Faktor 3
Rabatt
0,9
Plan Faktor 4
Risikoaufschlag
1,3 Tabelle 2.10
Sofern Sie einen der Faktoren einmal nicht benDtigen, geben Sie einfach den Wert “1“ ein. Da sich der Wert des Projekts aus dem Produkt der einzelnen Faktoren berechnet, ist der Wert 1 neutral (X * 1 = X).
Tats!chlicher Wert
86
Das W!hrungsfeld Ist Nettobetrag speichert den tats!chlich abgerechneten Wert des Projekts. Da dieser Wert mDglichst auch unvorhergesehene Minderungen oder Mehrungen ber,cksichtigen soll, wird das Feld erst nach dem Abschluss des Projekts ausgef,llt. Zusammen mit den gespeicherten Terminen enth!lt die Projektetabelle damit gen,gend Informationen, um etwa ein automatisches Mahnwesen zu steuern.
In der Datenblattansicht den Tabellenentwurf %ndern
Das Feld MwSt ist f,r die Mehrwertsteuer (z.B. 7 oder 16%) des Projekts vorgesehen. Sie sollten das Feld als Zahlenfeld mit der zus!tzlichen Eigenschaft Double definieren. Außerdem kDnnen Sie die Anzahl der Dezimalstellen auf zwei begrenzen. Alle weiteren Felder der Projektetabelle sind selbsterkl!rend. Sie brauchen keine zus!tzlichen Feldeigenschaften festzulegen.
Mehrwertsteuer
Weitere Felder
Indizes fr die Projektetabelle anlegen Das Feld Projekt-Nr ist der Prim!rindex der Projektetabelle und ermDglicht damit die eindeutige Identifikation jedes Datensatzes. Als Sekund!rindex sollten Sie die Felder Titel, Adresse-Nr, Ist Rechnung und Ist Zahlung definieren. Per Mausklick auf die Schaltfl!che Indizes der Symbolleiste Dffnen Sie den gleichnamigen Dialog. Hier kDnnen Sie neben dem Prim!rindex weitere Indizes angeben. Tragen Sie zun!chst einen Namen f,r den Index in die entsprechende Zeile in der Spalte Indexname ein. In der Spalte Feldname kDnnen Sie ,ber ein Kombinationsfeld das zu indizierende Feld ausw!hlen. In der letzten Spalte geben Sie schließlich die Sortierreihenfolge f,r dieses Feld an.
Indizes
Abb. 2.48 Indizes der Projektetabelle
Die Indizes sollen vorwiegend die Auswertung des Datenbestands in Abfragen beschleunigen. So sind beispielsweise Fragen nach dem Umsatz in einem bestimmten Gesch!ftsjahr sehr schnell zu beantworten. Lediglich die Anlage eines Sekund!rindizes f,r das Feld Adresse-Nr ist dringend angeraten, da dieses Feld f,r die relationale Beziehung mit der Adressentabelle verwendet wird. Bei allen Indizes sind Duplikate mDglich.
87
Daten verwalten
Nachschlagefeld definieren Adresse-Nr
F,r jedes Projekt gibt es einen Auftraggeber bzw. Kunden. Da Sie die Adressentabelle bereits angelegt haben, ist die erneute Aufnahme der entsprechenden Felder in die Projektetabelle ,berfl,ssig. Das Feld Adresse-Nr braucht lediglich die Adressennummer des Kunden zu speichern, mit dem das Projekt abgewickelt wird. Die Zuordnung von Projekt und Kunde erfolgt dann ,ber eine relationale Beziehung. Das Feld Adresse-Nr wurde in der Adressentabelle als Z!hlerfeld definiert, das von Access automatisch gepflegt wird. Bei der Eingabe von Projekten muss die Adressennummer vom Anwender vergeben werden. In diesem Fall ist ein Z!hlerfeld daher ungeeignet. Da beide Tabellen relational verkn,pft werden sollen, m,ssen beide Felder den gleichen Datentyp und die gleiche L!nge haben.
Hinweis
Nachschlagefeld definieren
Sie m,ssen dazu wissen, dass Access Z!hlerfelder intern wie Zahlenfelder der FeldgrDße Long Integer speichert. Es ist daher notwendig, das Feld Adresse-Nr in der Projektetabelle als Zahlenfeld zu definieren. Außerdem m,ssen Sie mit & in den Bereich f,r die zus!tzlichen Feldeigenschaften wechseln und aus dem Kontrollk!stchen Feldgr4ße den Eintrag Long Integer w!hlen. Da Sie das Feld Adresse-Nr bereits als Index mit Duplikaten definiert haben, sind die Voraussetzungen f,r das Herstellen einer relationalen Beziehung geschaffen. Dem Anwender wird es jedoch schwerfallen, bei der Eingabe eines Projekts in das Datenblatt immer die richtige Adressennummer einzugeben. Es ist daher empfehlenswert, das Nachschlagen in der Adressentabelle ,ber ein Kombinationsfeld zu vereinfachen. Sie erreichen dies, indem Sie das Feld Adressennummer der Projektetabelle als Nachschlagefeld definieren. Dies erfolgt am einfachsten ,ber den Nachschlage-Assistenten von Access. Um ihn zu starten, w!hlen Sie im Tabellenentwurf den Felddatentyp Nachschlage-Assistent f,r das Feld Adresse-Nr aus.
Abb. 2.49 Der NachschlageAssistent von Access
88
In der Datenblattansicht den Tabellenentwurf %ndern
Die Auswahl des Felddatentyps Nachschlage-Assistent f,hrt zum Start des Assistenten. Es handelt sich hierbei um eine kleine Inkonsistenz in der Benutzerf,hrung von Access. Der Nachschlage-Assistent ist n!mlich kein Felddatentyp, sondern ver!ndert einige Eigenschaften des aktuellen Datenfeldes und stellt ggf. eine Beziehung zu einer anderen Tabelle oder Abfrage her. Mit den Optionsfeldern der ersten Dialogseite des Nachschlage-Assistenten bestimmen Sie, ob Access die Werte f,r die Adressennummer in einer Werteliste oder in einer anderen Tabelle oder Abfrage nachschlagen soll. Da Sie das Nachschlagen in der Adressentabelle w,nschen, markieren Sie die obere der beiden Optionen, und klicken Sie auf die Schaltfl!che Weiter.
Werteliste, Tabelle oder Abfrage
Abb. 2.50 Nachschlagetabelle oder -abfrage ausw!hlen
Auf der zweiten Dialogseite des Nachschlage-Assistenten w!hlen Sie die Tabelle oder Abfrage aus, in der Access die Daten f,r die Adressennummer nachschlagen soll. Markieren Sie hier den Eintrag Adressen und klicken Sie auf die Schaltfl!che Weiter.
Tabelle oder Abfrage ausw!hlen
Access zeigt das Nachschlagefeld sp!ter als Kombinationsfeld an. Mit der dritten Dialogseite des Nachschlage-Assistenten w!hlen Sie die Felder der Adressentabelle aus, die in der Liste des Kombinationsfeldes erscheinen soll. Da sp!ter nur der Name angezeigt werden soll, ,bernehmen Sie dieses Feld in die Liste Ausgew7hlte Felder.
Felder f r die Liste des Kombinationsfeldes ausw!hlen
Außerdem m,ssen Sie das Feld ausw!hlen, dessen Wert im Feld Adresse-Nr der Projektetabelle gespeichert werden soll. Da das Feld Adresse-Nr der Adressentabelle den richtigen Wert enth!lt, ,bernehmen Sie auch dieses Feld in die Liste.
89
Daten verwalten
Abb. 2.51 Felder der Adressentabelle ausw!hlen
Abb. 2.52 Spaltenbreiten einstellen
Spaltenbreiten einstellen
90
Auch auf der vierten Dialogseite des Nachschlage-Assistenten nehmen Sie Einstellungen f,r die Liste des Kombinationsfeldes vor. Sie bestimmen hier die Spaltenbreite, mit der die Felder sp!ter in der Liste angezeigt werden. Ziehen Sie die rechte Spaltenbegrenzung auf die gew,nschte Breite, oder f,hren Sie einen Doppelklick durch, damit Access die Spaltenbreite optimal einstellt.
In der Datenblattansicht den Tabellenentwurf %ndern
Da Access empfiehlt, die Schl,sselspalte auszublenden, ist das gleichnamige Kontrollk!stchen angekreuzt. Das f,hrt dazu, dass das Feld Adresse-Nr sp!ter nicht in der Liste angezeigt wird. Sie kDnnen diese Einstellung beibehalten, oder das Kontrollk!stchen leeren. Dann zeigt Access wie in der vorherigen Abbildung auch die Adressennummer in der Liste des Kombinationsfeldes an. Klicken Sie auf die Schaltfl!che Weiter, um Ihre Einstellung zu best!tigen.
Schl sselspalte ausblenden
Abb. 2.53 Datenfeld ausw!hlen
Mit der folgenden Dialogseite des Nachschlage-Assistenten w!hlen Sie das Datenfeld aus der Adressentabelle aus, dessen Wert in der Adressennummer der Projektetabelle gespeichert werden soll. Markieren Sie das Feld Adresse-Nr und klicken Sie auf die Schaltfl!che Weiter.
Abb. 2.54 Beschriftung eingeben
91
Daten verwalten
Beschriftung eingeben
Auf der letzten Dialogseite des Nachschlage-Assistenten kDnnen Sie eine Beschriftung f,r das Nachschlagefeld eingeben. Pbernehmen Sie die Vorgabe Adresse-Nr und klicken Sie auf die Schaltfl!che Fertigstellen, damit der Nachschlage-Assistent seine Arbeit verrichtet. Der Nachschlage-Assistent !ndert die Eigenschaften des Feldes Adresse-Nr und erstellt eine Beziehung zwischen der Adressen- und der Projektetabelle. Ein Dialog weist darauf hin, dass Sie, bevor der Assistent die Beziehung erstellen kann, den ge!nderten Tabellenentwurf speichern m,ssen. Best!tigen Sie den Vorgang mit einem Klick auf die Schaltfl!che Ja.
Abb. 2.55 Tabellenentwurf speichern
Das Register Nachschlagen
Das Ergebnis Ihrer Bem,hungen ist zun!chst ern,chternd. Die Entwurfsansicht der Projektetabelle sieht genauso aus wie vorher. Es stellt sich also die Frage, was der Assistent gemacht hat. Um das Geheimnis zu l,ften, m,ssen Sie in den Feldeigenschaften auf das Register Nachschlagen klicken.
Abb. 2.56 Das Register Nachschlagen des Feldes Adresse-Nr
Steuerelement anzeigenEigenschaft
92
Im Register Nachschlagen hat der Assistent erhebliche Ver!nderungen vorgenommen. So legt beispielsweise die Eigenschaft Steuerelement anzeigen fest, dass Access die Adressennummer als Kombinationsfeld anzeigen soll. Weitere Eigenschaften betreffen die Datenherkunft f,r das Kombinationsfeld und wie die Liste angezeigt werden soll.
In der Datenblattansicht den Tabellenentwurf %ndern
Die Feldeigenschaften des Registers Nachschlagen entsprechen den Einstellungen, die Sie in den Dialogen des Nachschlage-Assistenten vorgenommen haben. Weitere Hinweise zu diesen Eigenschaften finden Sie in Kapitel 4 Tabellen dieses Buchs. Um die Auswirkungen der 0nderungen zu begutachten, wechseln Sie einmal in die Datenblattansicht der Projektetabelle und geben Sie einige Datens!tze ein.
Datenblatt
Abb. 2.57 Datenblatt mit Nachschlagefeld
Access zeigt im Datenblatt ein Kombinationsfeld zur Eingabe von Adressennummern. Wenn Sie auf den nach unten zeigenden Pfeil des Kombinationsfeldes klicken, Dffnet sich eine Liste der Datens!tze aus der Adressentabelle. Die Liste enth!lt die Felder Adresse-Nr und Name. Wenn Sie einen Wert in der Liste anklicken, speichert Access die entsprechende Adressennummer in der Projektetabelle.
Das Nachschlagefeld in der Datenblattansicht verwenden
Die Darstellung in der vorherigen Abbildung erhalten Sie nur, wenn Sie auf der vierten Dialogseite des Nachschlage-Assistenten das Kontrollk!stchen Schl1sselspalte ausblenden leeren. Wenn Sie das Kontrollk!stchen ankreuzen, zeigt Access das Feld Adresse-Nr nicht in der Liste des Kombinationsfeldes an. Dies entspricht der Anzeige in der n!chsten Abbildung. Obwohl die Adressennummer in diesem Fall nicht sichtbar ist, wird sie doch in der Datenbank gespeichert. Sie erreichen diesen Zustand auch ohne einen erneuten Aufruf des NachschlageAssistenten. Wechseln Sie dazu in die Entwurfsansicht der Projektetabelle und markieren Sie das Feld Adresse-Nr. Klicken Sie dann auf das Register Nachschlagen und !ndern Sie die Eigenschaft Spaltenbreiten in folgenden Ausdruck:
Spalten ausblenden
"0cm;2,932cm" Sie setzen damit die Spaltenbreite f,r das Feld Adresse-Nr auf Null und blenden die Spalte damit aus. An der Funktionalit!t des Nachschlagefeldes !ndert sich dadurch aber nichts. Wie bereits erw!hnt, finden Sie die Beschreibung weiterer Feldeigenschaften des Registers Nachschlagen in Kapitel Tabellen dieses Buchs.
93
Daten verwalten
Abb. 2.58 Nachschlagefeld ohne Adressennummer
Adressen und Projekte verknpfen Sie verf,gen jetzt ,ber zwei Tabellen, f,r die der Nachschlage-Assistent eine relationale Beziehung in der Datenbank gespeichert hat. In diesem Abschnitt erfahren Sie, wie Sie die Beziehung einsehen und referenzielle Integrit!t zwischen der Adressenund der Projektetabelle definieren.
Beziehungen einsehen Access speichert die Beziehungen zwischen Tabellen in der Datenbank. Um die Beziehungen einzusehen, gibt es unter anderem folgende MDglichkeiten: W!hlen Sie den Men,befehl Extras > Beziehungen. Aktivieren Sie das Fenster und klicken Sie auf das Symbol Beziehungen
Layout speichern
Beziehung lschen
94
Das Beziehungsfenster enth!lt je eine Feldauswahlliste f,r die Adressen- und die Projektetabelle. Eine Linie markiert die Beziehung zwischen den Adressennummern der beiden Tabellen. Sie kDnnen das Beziehungsfenster und die Feldauswahllisten durch Ziehen mit der Maus auf der Arbeitsfl!che verschieben und sie vergrDßern. Das so ver!nderte Layout des Beziehungsfensters l!sst sich mit einem Klick auf das gleichnamige Symbol in der Datenbank speichern. Wenn Sie die Beziehung zwischen der Adressen- und der Projektetabelle lDschen wollen, dann klicken Sie mit der rechten Maustaste auf die Verbindungslinie. W!hlen Sie anschließend den Befehl Beziehung l4schen aus dem Kontextmen,.
In der Datenblattansicht den Tabellenentwurf %ndern
Abb. 2.59 Das Beziehungsfenster
Wenn Sie den Nachschlage-Assistenten bisher nicht benutzt haben, dann wollen Sie die Beziehung zwischen der Adressen- und der Projektetabelle eventuell selbst herstellen. Rffnen Sie dazu das Beziehungsfenster der Datenbank und gehen Sie wie folgt vor: 1
Falls Access den Dialog Tabelle anzeigen Dffnet, klicken Sie direkt auf die Schaltfl!che Schließen.
2
Falls das Beziehungsfenster leer ist, ziehen Sie nacheinander die Tabellen Adressen und Projekte aus dem Datenbank- in das Beziehungsfenster.
3
Ziehen Sie bei festgehaltener linker Maustaste eine Linie von dem Feld Adresse-Nr der Adressentabelle auf das Feld Adresse-Nr der Projektetabelle.
4
Klicken Sie in dem sich Dffnenden Dialog Beziehungen auf die Schaltfl!che Erstellen.
Eine Beziehung herstellen
Access schließt den Dialog Beziehungen und zeigt die Beziehung zwischen den beiden Tabellen durch eine Linie an.
95
Daten verwalten
Beziehungen drucken Seit der Version Access 2000 besteht die MDglichkeit, das Layout der Beziehungen einer Datenbank zu drucken. Gehen Sie dazu folgendermaßen vor: 1
Rffnen Sie das Beziehungen-Fenster der Datenbank.
2
Legen Sie das Layout des Beziehungsfensters fest.
3
W!hlen Sie den Men,befehl Datei > Beziehungen drucken.
Abb. 2.60 Beziehungen als Bericht
Access erstellt daraufhin einen Bericht, der eine Abbildung der Beziehungen im Detailbereich enth!lt. Diese Abbildung ist komplett aus einzelnen Elementen zusammengesetzt. Dazu gehDren Listenfelder, Bezeichnungsfelder sowie Bitmaps und Linien zur Darstellung der Verkn,pfungslinien. Die Objekte in der Abbildung sind nicht miteinander verbunden, deshalb sind 0nderungen im nachhinein sehr umst!ndlich. Sie sollten die Beziehungen deshalb vor der Erstellung des Berichtes auf ein ansprechendes Layout bringen. Wie jeden anderen Bericht kDnnen Sie auch die Darstellung der Beziehungen speichern. Bet!tigen Sie dazu die gleichnamige Befehlsschaltfl!che, und geben Sie dem Bericht einen Namen wie z.B. “Beziehungen020301“. Dabei steht die Zahlenkombination stellvertretend f,r das Datum, an dem der Bericht erzeugt wurde. Der Bericht h!lt n!mlich das Aussehen der Beziehungen zum Zeitpunkt der Erstellung des Berichts fest. Wenn sich die Beziehungen !ndern und Sie den neuen Stand ausdrucken mDchten, m,ssen Sie daher einen neuen Bericht mit den aktuellen Bezie96
In der Datenblattansicht den Tabellenentwurf %ndern
hungen erstellen. Mithilfe dieser Vorgehensweise kDnnen Sie sp!ter gut nachvollziehen, welche 0nderungen sich im Laufe der Zeit an Ihrer Datenbank ergeben haben. Der Bericht wird immer so ausgedruckt, wie er in der Seitenansicht dargestellt wird. Eine ausf,hrlichere Beschreibung und deren Einstellungen finden Sie im Abschnitt Datenzugriffsseiten in Kapitel 8 Datenzugriffsseiten.
Abb. 2.61 Beziehungen in der Entwurfsansicht
W!hlen Sie vor dem Drucken Querformat als Orientierung der Seite. Die Option Orientierung finden Sie im Register Seite des Dialogs Seite einrichten. Tipp
Referenzielle Integrit%t Sie haben die Adressen- und die Projektetabelle so angelegt, dass der NachschlageAssistent problemlos eine relationale Beziehung zwischen ihnen herstellen konnte. Sie haben darauf geachtet, dass das Verkn,pfungsfeld in beiden Tabellen den gleichen Datentyp und die gleiche L!nge hat. Außerdem speichert es in beiden F!llen inhaltlich den gleichen Wert, die Adressennummer. Damit sind alle Bedingungen f,r die relationale Beziehung erf,llt. Es gibt lediglich ein – gravierendes – Problem. Sie kDnnen sowohl die Adressen- als auch die Projektetabelle einzeln Dffnen und die Daten bearbeiten.
Relationale Beziehung
97
Daten verwalten
Verlust der referenziellen Integrit!t
Sie kDnnen daher Adressen lDschen, zu denen noch Projekte gespeichert sind. Wenn Sie kein Nachschlagefeld erstellt haben, kDnnen Sie außerdem Projekte mit einer Adressennummer eingeben, die gar nicht existiert. So sind zahlreiche Konstellationen denkbar, die die Integrit!t Ihrer Datenbank durcheinanderbringen w,rden. In der Fachsprache sagt man, dass die referenzielle Integrit!t verloren ginge. Dieses Problem ist nicht erst seit der Erfindung von Access bekannt. Auch vorher hat es den Anwendern der meisten Datenbanksysteme bereits Kopfzerbrechen bereitet. Eine LDsung des Problems ist noch heute oft nur durch umst!ndliche Programmierung mDglich.
Problemlsung
Voraussetzungen f r referenzielle Integrit!t
Referenzielle Integrit!t definieren
Mit Access kDnnen Sie das Problem ganz einfach lDsen, indem Sie Access mitteilen, dass es die referenzielle Integrit!t zwischen der Adressen- und der Projektetabelle automatisch gew!hrleisten soll. Auch die Voraussetzungen f,r diesen Schritt sind bereits erf,llt. Sie haben das Verkn,pfungsfeld der so genannten Master-Tabelle bereits als Prim!rindex definiert. Es handelt sich hierbei um die Adressennummer der Adressentabelle. Außerdem haben Sie das Verkn,pfungsfeld der Detailtabelle als Sekund!rindex definiert. Das war die oben beschriebene Einstellung der Eigenschaft Indiziert auf den Wert Ja (Duplikate m4glich) f,r das Feld Adresse-Nr in der Projektetabelle. Zur referenziellen Integrit!t definieren Sie wie oben beschrieben eine Beziehung zwischen den beiden Tabellen und lassen Sie den Dialog Beziehungen geDffnet. Falls die Beziehung bereits existiert, f,hren Sie einen Doppelklick auf die Verbindungslinie durch, damit Access den Dialog Beziehungen Dffnet.
Abb. 2.62 Der Dialog Beziehungen bearbeiten
Beziehung berpr fen
98
Access Dffnet den Dialog Beziehungen und zeigt die Projektetabelle in der Spalte Detailtabelle an. Wie Sie der Anzeige im unteren Teil des Dialogs entnehmen kDnnen, handelt es sich um eine 1:n-Beziehung. Die Ursache hierf,r besteht darin, dass Sie eine Beziehung zwischen einem Referenzfeld, das ein Prim!rschl,ssel ist, und einem anderen Feld hergestellt haben.
In der Datenblattansicht den Tabellenentwurf %ndern
Die Tabelle mit dem Referenzfeld, das ein Prim!rschl,ssel ist (in diesem Fall die Tabelle Adressen), ist stets die so genannte Master-Tabelle einer Beziehung. Die Tabelle, deren Referenzfeld kein Prim!rschl,ssel ist (in diesem Feld die Tabelle Projekte), ist stets die Detailtabelle einer Beziehung. Solche Beziehungen haben immer den Beziehungstyp 1:n. Das bedeutet, dass Sie einerseits jeder Adresse mehrere Projekte zuordnen kDnnen. Auf der anderen Seite l!sst sich jedes Projekt nur einer Adresse zuordnen. Mit den bisherigen Einstellungen haben Sie lediglich eine relationale Beziehung zwischen der Adressen- und der Projektetabelle definiert. Um zus!tzlich referenzielle Integrit!t zu gew!hrleisten, kreuzen Sie das Kontrollk!stchen Mit referenzieller Integrit7t an.
Master- und Detailtabelle
Referenzielle Integrit!t definieren
Abb. 2.63 Der Dialog zum Erstellen neuer Beziehungen
Mit einem Klick auf die Schaltfl!che OK speichern Sie die Definition der referenziellen Integrit!t. Access schließt dabei automatisch den Dialog Beziehungen. Das Beziehungsfenster enth!lt jetzt eine Verbindungslinie zwischen den beiden Tabellen. Auf der Seite der Adressentabelle erg!nzt Access eine 1 und auf der Seite der Projektetabelle ein Unendlichzeichen (¥). Es symbolisiert damit, dass die Adressentabelle innerhalb der Beziehung die Master-Tabelle ist.
Beziehungen speichern
Mit der Schaltfl!che Neue erstellen... kDnnen Sie von Hand neue Beziehungen erstellen. Sie kDnnen dabei die gew,nschten Tabellen- und Spaltennamen mithilfe von Kombinationsfeldern ausw!hlen. Die Eintr!ge auf der linken Seite repr!sentieren dabei die Master-Tabelle und die Eintr!ge auf der rechten Seite die Detailtabelle.
Besonderheiten bei der Datenbearbeitung Im vorigen Abschnitt haben Sie f,r die Adressen- und die Projektetabelle eine Beziehung mit referenzieller Integrit!t definiert. Dieser Abschnitt erl!utert die Besonderheiten, die aufgrund der referenziellen Integrit!t bei der Bearbeitung der Adressenund der Projektetabelle zu beachten sind.
99
Daten verwalten
Eingabepr fung
Auch wenn Sie in der Datenblattansicht jeweils nur eine der beiden Tabellen betrachten kDnnen, so m,ssen Sie dennoch einige Besonderheiten bei der Datenbearbeitung beachten. Access ber,cksichtigt jetzt n!mlich aufgrund der Verkn,pfung stets beide Tabellen und f,hrt eine Eingabepr,fung durch, die die referenzielle Integrit!t sicherstellt.
Adressen einf gen
Beim Einf,gen neuer Adressen brauchen Sie keine Besonderheiten zu ber,cksichtigen, da f,r die neu vergebene Adressennummer noch keine Projekte angelegt wurden.
Adressen !ndern
Da das Feld f,r die Adressennummer als AutoWert-Feld definiert wurde, unterbindet Access jede 0nderung an diesem Feld. Alle anderen Felder der Adressentabelle lassen sich wie gewohnt bearbeiten.
Adressen lschen
Projekte einf gen
Projekte !ndern
Projekte lschen
Hinweis
Hinweis
100
Beim LDschen einer Adresse pr,ft Access zun!chst, ob Projekte mit der Adressennummer verkn,pft sind. Wenn das der Fall ist, unterbindet es das LDschen der Adresse und weist in einer Dialogbox auf das Problem hin. Sie m,ssen dann zun!chst alle Projekte lDschen, die mit der Adresse verkn,pft sind. Das Einf,gen neuer Projekte gestaltet sich weitgehend problemlos. Access pr,ft unabh!ngig vom Vorhandensein eines Nachschlagefeldes, ob die eingegebene Adressennummer in der Adressentabelle bereits angelegt ist. Wenn die Adressennummer nicht gefunden werden kann, ist das Speichern des Projekts nicht mDglich. Nur so ist sichergestellt, dass alle Projekte mit g,ltigen Adressen verkn,pft werden. F,r das 0ndern der Adressennummer in der Projektetabelle gelten die gleichen Regeln wie f,r deren Neueingabe. Die eingegebene Adressennummer muss bereits angelegt sein. Sie sollten jedoch beachten, dass Sie das Projekt mit einer 0nderung der Adressennummer einem neuen Auftraggeber oder Kunden zuweisen. Das LDschen von Projekten ist problemlos. Sie kDnnen nat,rlich auch alle Projekte eines Auftraggebers oder Kunden lDschen. Das Datenmodell erlaubt auch Adressen, denen keine Projekte zugeordnet werden. Das entspricht schließlich der urspr,nglichen Anforderung, dass die Adressentabelle nicht nur Firmen-, sondern auch Privatadressen speichern soll. Mit Privatleuten werden in aller Regel keine Projekte abgewickelt. Sie haben in diesem Kapitel lediglich die Datenblattansicht angewendet. Diese Ansicht erlaubt die Darstellung jeweils nur einer Tabelle. Sie kDnnen nat,rlich auch jeweils ein Datenblatt f,r die Adressen- und die Projektetabelle gleichzeitig Dffnen. W!hlen Sie dann den Befehl Fenster > Nebeneinander, um den gleichzeitigen Pberblick ,ber beide Tabellen zu erhalten. Im n!chsten Kapitel dieses Buchs entwerfen Sie Abfragen, Formulare und Berichte, mit denen Sie einen wesentlich besseren Pberblick ,ber die Daten erhalten. So entwickeln Sie beispielsweise ein Formular, das eine Adresse gleichzeitig mit den zugeordneten Projekten abbildet.
In der Datenblattansicht den Tabellenentwurf %ndern
Unterdatenbl%tter Seit der Version Access 2000 besteht die MDglichkeit, in der Master-Tabelle die zugehDrigen Datens!tze der Detailtabelle darzustellen. Das bedeutet, dass z.B. alle Projekte, die zu einer bestimmten Adresse gehDren, in der Adressentabelle aufgef,hrt werden. Zur Kenntlichmachung dieser Verkn,pfungen werden Unterdatenbl!tter verwendet. Im Unterdatenblatt eines Datensatzes werden alle Datens!tze der verkn,pften Tabelle aufgelistet. Gehen Sie folgendermaßen vor, um ein Unterdatenblatt in eine Tabelle einzuf,gen: 1
Rffnen Sie die Tabelle, deren Unterdatens!tze angezeigt werden sollen, z.B. die Tabelle Adressen.
2
W!hlen Sie den Befehl Einf1gen > Unterdatenblatt aus der Men,leiste. Alternativ kDnnen Sie auch die Schaltfl!che Unterdatenblatt bet!tigen.
3
Im sich Dffnenden Dialog Unterdatenblatt einf1gen markieren Sie die Tabelle oder Abfrage, die als Unterdatenblatt eingef,gt werden soll, also die Tabelle Projekte.
4
Geben Sie die Felder an, die die Beziehung zwischen den Tabellen herstellen. Diese heißen in beiden Tabellen Adresse-Nr.
5
Klicken Sie auf OK.
Unterdatenblatt einf gen
Abb. 2.64 Der Dialog Unterdatenblatt einf3gen
Sofern Sie keine Fehler bei der Verkn,pfung der Tabellen Adressen und Projekte gemacht haben, haben Sie mit Bet!tigen der OK-Schaltfl!che ein Unterdatenblatt angelegt. Das neue Unterdatenblatt gibt sich zun!chst kaum zu erkennen. Der Adressen-Tabelle ist lediglich eine neue Spalte hinzugef,gt worden. Jedes Feld die-
Einblenden eines Unterdatenblattes
101
Daten verwalten
ser Spalte enth!lt ein Plus-Zeichen, !hnlich dem, welches im Explorer zum Rffnen von Unterverzeichnissen dient. Durch Anklicken des Plus-Zeichens eines Datensatzes blenden Sie das Unterdatenblatt dieses Datensatzes ein. Das Unterdatenblatt stellt die Projekttabelle dar. Diese Tabelle enth!lt aber nicht alle Datens!tze der Projekttabelle, sondern nur die Datens!tze der Projekttabelle, die mit dem Datensatz der Adressentabelle verkn,pft sind, dessen Unterdatenblatt Sie eingeblendet haben.
Abb. 2.65 Tabelle mit eingeblendeten Unterdatenbl!ttern
Im Men, Format finden Sie einige Befehle zum Einsatz mit Unterdatenbl!ttern. Mit dem Befehl Format > Unterdatenblatt > Alles einblenden Dffnen Sie die Unterdatenbl!tter aller Datens!tze der Tabelle. Der Befehl Format > Unterdatenblatt > Alles Ausblenden blendet alle aktuell eingeblendeten Unterdatenbl!tter wieder aus. Mit dem Befehl Format > Unterdatenblatt > Entfernen schließlich entfernen Sie die Unterdatenbl!tter aus der Tabelle.
Eigenschaften des Unterdatenblattes
102
Weitere Einstellungen kDnnen Sie im Eigenschaftenfenster der Tabelle vornehmen. Mehr Informationen zu diesem Thema finden Sie in Kapitel 4 Tabellen, Abschnitt Unterdatenbl7tter.
In der Datenblattansicht den Tabellenentwurf %ndern
Abb. 2.66 Eigenschaften des Unterdatenblattes
103
Daten auswerten und prsentieren Abfragen Formulare erstellen und anwenden Formulare fr Daten aus mehreren Tabellen erstellen Datenausgabe mit Berichten
106 129 142 150
3
Daten auswerten und pr%sentieren
Die Aufgabe eines relationalen Datenbankmanagement-Systems (kurz: RDBMS) wie Access besteht nat,rlich nicht nur im Speichern von Daten. Die Vorz,ge der elektronischen Datenverwaltung sind vielmehr in den ausgepr!gten F!higkeiten zur Auswertung und Pr!sentation von Daten zu sehen. In diesem Kapitel vervollst!ndigen Sie den Rundgang durch Access und setzen sich mit Abfragen, Formularen und Berichten auseinander. Sie entwerfen Abfragen zur Sortierung und zur Selektion von Daten aus einer oder mehreren Tabellen. Weitere Abfragen kombinieren mehrere Kriterien und ermitteln die Forderungen und die geplanten Zahlungseing!nge aus der Projektetabelle. Schließlich lernen Sie Abfragen kennen, die Daten aus mehreren Tabellen zusammenf,hren. Formulare eignen sich zur Erleichterung der Dateneingabe und zur ansprechenden Pr!sentation von Daten. Sie entwerfen im Verlauf dieses Kapitels einige Formulare, die Adressen und Projekte gleichzeitig darstellen. Die Ausgabe der Daten auf Papier erfolgt schließlich durch Druckberichte, die Sie mit den Berichts-Assistenten von Access entwerfen.
Abfragen Dieser Abschnitt beschreibt die grunds!tzliche Verfahrensweise beim Erstellen von Abfragen. Außerdem finden Sie einen kurzen Einstieg in die Abfragesprache SQL.
Was ist eine Abfrage? Die Bezeichnung verr!t es bereits: Mit Abfragen stellen Sie Fragen ,ber die Daten, die Access f,r Sie speichert. Wenn Sie aber aussagekr!ftige Antworten erhalten wollen, m,ssen Sie Ihre Fragen richtig formulieren. Auch in diesem Fall f,hren wieder mehrere Wege zum gleichen Ziel.
Abfrage durch Beispiel
Die Gestaltung einer Abfrage erfolgt in der Entwurfsansicht. Der Abfrageentwurf ist nach dem Prinzip Abfrage durch Beispiel (englisch: Query By Example; kurz: QBE) aufgebaut. Hier entwerfen Sie die Abfrage mit den MDglichkeiten der grafischen Benutzeroberfl!che.
SQL
Als Alternative zur Abfrage durch Beispiel kDnnen Sie Abfragen auch direkt in der weltweit standardisierten Abfragesprache SQL (englisch: Structured Query Language; deutsch: strukturierte Abfragesprache) eingeben. Es bleibt Ihnen ,berlassen, f,r welche Alternative Sie sich entscheiden. Sie kDnnen beide Verfahren sogar gemischt einsetzen. Access setzt Einstellungen, die im Abfragefenster vorgenommen werden, n!mlich automatisch in die entsprechenden SQLBefehle um. Umgekehrt werden syntaktisch korrekt eingegebene SQL-Befehle auch im grafischen Abfragefenster visualisiert.
106
Abfragen
Abb. 3.1 Entwurf einer Abfrage mit QBE und mit SQL
Wenn Sie die Abfragesprache SQL noch nicht kennen, sollten Sie sich zun!chst auf die Definition von Abfragen mittels QBE beschr!nken. Bei Bedarf kDnnen Sie sich dann sp!ter mit SQL auseinandersetzen.
Hinweis
Der Aufbau des Abfrageentwurfsfensters Die Definition einer Abfrage erfolgt im Abfrageentwurfsfenster. Um ein leeres Abfragefenster zu Dffnen, gehen Sie wie folgt vor: 1
Aktivieren Sie das Datenbankfenster durch einen Klick auf das gleichnamige Symbol.
2
Markieren Sie das Register Abfragen.
3
Klicken Sie auf die Schaltfl!che Neu.
4
F,hren Sie im Dialog Neue Abfrage einen Doppelklick auf den Eintrag Entwurfsansicht durch.
Wenn Sie auf einen anderen Eintrag als auf Entwurfsansicht klicken, kDnnen Sie einen der Abfrage-Assistenten von Access starten. Sie finden die Beschreibung des Kreuztabellenabfrage-Assistenten, des Assistenten zur Duplikatsuche und des Assistenten zur Inkonsistenzsuche in Kapitel 5 Abfragen dieses Buchs. Die folgenden Abschnitte gehen nur auf den Auswahlabfrage-Assistenten ein.
107
Daten auswerten und pr%sentieren
Abb. 3.2 Der Dialog Neue Abfrage
Abb. 3.3 Der Dialog Tabelle anzeigen
Tabelle anzeigen
Mit einer Abfrage werten Sie die Daten aus einer oder mehreren Tabellen aus. Sie kDnnen sogar Abfragen entwerfen, die auf Ergebnissen anderer Abfragen aufbauen. Das ist der Grund daf,r, dass Access zun!chst den Dialog Tabelle anzeigen einblendet. Der Dialog zeigt eine Auswahlliste aller Tabellen und Abfragen der aktuellen Datenbank. Klicken Sie auf den Eintrag Adressen und anschließend auf die Schaltfl!che Hinzuf1gen. Beenden Sie den Dialog dann mit einem Klick auf die Schaltfl!che Schließen. Im oberen Teil des Abfragefensters zeigt Access eine Auswahlliste der Datenfelder der Adressentabelle an. Die Auswahlliste befindet sich in einem eigenen Fenster, das Sie bei Bedarf auch auf der Arbeitsfl!che verschieben, verkleinern und vergrDßern kDnnen.
Feldliste
108
Abfragen
Abb. 3.4 Abfrage f r die Adressentabelle entwerfen
Das VergrDßern der Feldliste ist manchmal bei Tabellen mit vielen Feldern praktisch. Dann kann es hilfreich sein, den oberen Teil des Abfragefensters zu vergrDßern. Positionieren Sie dazu die Maus auf den grauen Balken, der den oberen und den unteren Teil des Abfragefensters trennt, und ziehen Sie ihn nach unten. Die untere H!lfte des Abfragefensters enth!lt das so genannte Entwurfsraster. In diesem Bereich befindet sich eine noch leere Tabelle, mit deren Hilfe Sie die Einzelheiten der Abfragedefinition festlegen.
Entwurfsraster
Das Prinzip der Abfrage Abfragen speichern niemals Daten! Wenn Sie sich diesen Satz einpr!gen, werden Sie die Funktionsweise von Abfragen schnell verstehen.
Abfragen speichern keine Daten!
Eine Abfrage greift immer auf die Daten zu, die in einer oder mehreren Tabellen gespeichert sind. Selbst wenn Sie eine Abfrage entwerfen, die auf die Ergebnisse einer anderen Abfrage zugreift, so sind die Herkunftsdaten dieser Abfrage wiederum in Tabellen gespeichert. Diese Daten werden ausgewertet. Dabei kDnnen Datens!tze und Datenfelder selektiert, Daten gruppiert und Berechnungen durchgef,hrt werden. Auch wenn Sie das Ergebnis einer Abfrage in fast der gleichen Weise wie eine Tabelle handhaben kDnnen, so gibt es doch einige Unterschiede. Der wichtigste Unterschied besteht eben darin, dass eine Abfrage keine Daten speichert.
109
Daten auswerten und pr%sentieren
Dynaset einer Abfrage
Tabellen speichern Daten
Abfrage speichern
Das Ergebnis einer Abfrage wird als Abfrageergebnis, Abfragedatenblatt oder Dynaset bezeichnet. Ein Dynaset hat den Charakter einer Tabelle. Es besteht aus Datenfeldern (Spalten) und Datens!tzen (Zeilen). Wenn Sie eine Abfrage ausf,hren, dann wertet Access die Daten der zugrunde liegenden Tabelle aus und zeigt das Ergebnis in einem Datenblatt an. In vielen F!llen kDnnen Sie das Datenblatt einer Abfrage bearbeiten. Sie kDnnen neue Datens!tze eingeben oder bestehende lDschen. Tats!chlich f,hrt Access diese Operationen aber in den der Abfrage zugrunde liegenden Tabellen durch. Mit dem Speichern einer Abfrage speichert Access lediglich den Entwurf der Abfrage. Die Daten selbst werden nicht gespeichert. Sie haben jedoch die MDglichkeit, das Abfrageergebnis in eine Tabelle umzuleiten, womit Sie gleichzeitig eine Kopie der Ursprungsdaten erstellen. Dies ist jedoch nur selten erforderlich. Mit dem Schließen des Abfragefensters geht auch das Abfrageergebnis verloren. Es l!sst sich jedoch jederzeit rekonstruieren, indem Sie die Abfrage erneut Dffnen.
Aktualit!t
Speicherplatz sparen
Tabellen verkn pfen
Der Vorteil von Abfragen liegt in ihrer Aktualit!t. Abfragen werten stets den aktuellen Datenbestand aus und werden laufend aktualisiert. Angenommen, Sie definieren eine Abfrage, die den Jahresumsatz Ihres Unternehmens berechnet. Das Abfrageergebnis w,rde, unabh!ngig davon, ob Sie die Abfrage im Januar oder Dezember starten, stets den aktuellen Jahresumsatz anzeigen. Außerdem helfen Abfragen, Speicherplatz zu sparen. Wenn Sie beispielsweise ein Feld f,r den Nettowert und eines f,r die Mehrwertsteuer eines Projekts definiert haben, dann benDtigen Sie kein weiteres f,r den Bruttowert, da dieser sich aus den beiden anderen Werten berechnet. Der einfachste Weg ist, den Bruttowert in einer Abfrage berechnen zu lassen. So brauchen Sie kein Datenfeld f,r den Bruttowert anzulegen und kDnnen die Information dennoch jederzeit abrufen. Der wahrscheinlich wichtigste Vorteil von Abfragen besteht darin, dass sie mehrere relational verkn,pfte Tabellen zusammenf,hren kDnnen. So ist es mDglich, die w!hrend der Aufsplittung des Datenbestandes entstandenen Tabellen wieder in einer gemeinsamen Sicht zusammenzuf,hren.
Datens%tze und -felder ausw%hlen Spalten selektieren
Das Ergebnis einer Abfrage soll nur die im konkreten Anwendungsfall relevanten Daten darstellen. Der erste Schritt in diese Richtung ist die Selektion von Datens!tzen und Datenfeldern bzw. Spalten und Zeilen. Zur Aufnahme einer Spalte in die Abfrage markieren Sie zun!chst den entsprechenden Eintrag in der Feldliste. Anschließend ziehen Sie das Feld bei festgehaltener linker Maustaste in das Entwurfsraster. Alternativ kDnnen Sie auch einen Doppelklick auf den Feldnamen durchf,hren.
110
Abfragen
Abb. 3.5 Entwurfsansicht einer Abfrage mit Namen
Probieren Sie es aus. Klicken Sie auf das Feld Name und ziehen Sie es in das Entwurfsraster. Sie sehen, dass Access den Feldnamen in der Feld-Zeile anzeigt. Wenn Sie jetzt auf die Schaltfl!che zum Wechsel in die Datenansicht klicken, f,hrt Access die Abfrage aus und zeigt das Datenblatt der Abfrage an. Das Datenblatt besteht aus einer einzigen Spalte, die alle Namen der Adressentabelle anzeigt.
Abb. 3.6 Datenblatt einer Abfrage mit Namen
Mit einem Klick auf das Entwurfs-Symbol gelangen Sie zur,ck zur Entwurfsansicht der Abfrage und kDnnen weitere Felder selektieren, indem Sie diese in das Entwurfsraster ziehen. Alternativ kDnnen Sie auch zun!chst eine Gruppe von Feldern markieren und diese dann geschlossen in das Entwurfsraster ziehen. Wenn es sich um eine Gruppe von nebeneinanderliegenden Feldern handelt, dann markieren Sie zun!chst das erste und dann bei festgehaltener H-Taste das letzte Feld der Gruppe.
Eine Gruppe von Feldern markieren
111
Daten auswerten und pr%sentieren
Eine Gruppe von verstreut liegenden Feldern markieren Sie durch Anklicken bei gedr,ckter S-Taste. Wenn Sie alle Felder markieren wollen, dann f,hren Sie einen Doppelklick auf die Titelzeile der Feldauswahlliste durch. Ziehen Sie abschließend die Gruppe der markierten Felder in das Entwurfsraster.
Felder per Kombinationslistenfeld
Datens!tze selektieren
Die letzte MDglichkeit zur Bestimmung der benDtigten Felder kDnnen Sie direkt in der Zeile Feld einer jeden Spalte des Entwurfsrasters vornehmen. Positionieren Sie die Einf,gemarke in das gew,nschte Feld. Access zeigt dann ein Kombinationsfeld an. Klicken Sie auf den nach unten zeigenden Pfeil des Kombinationsfeldes, und w!hlen Sie den gew,nschten Feldnamen aus. Das Selektieren von Datens!tzen bzw. Zeilen aus der Herkunftstabelle geschieht durch die Definition eines Abfragekriteriums. Access ,bernimmt nur diejenigen Datens!tze in das Datenblatt, die dem Kriterium entsprechen. Die Definition von Kriterien erfolgt in der gleichnamigen Zeile des Entwurfsrasters. Sie ziehen zun!chst ein Datenfeld in das Entwurfsraster und geben das Kriterium in die daf,r vorgesehene Zeile ein. Access ,bernimmt dann nur die Datens!tze in das Abfrageergebnis, f,r die das Kriterium f,r das entsprechende Datenfeld erf,llt ist.
Entwurfsraster lschen
F,r ein Beispiel w!hlen Sie den Befehl Bearbeiten > Alles l4schen aus, um das Entwurfsraster zu lDschen. F,hren Sie dann einen Doppelklick auf die Titelzeile der Feldauswahlliste durch, damit Access alle Feldeintr!ge markiert. Ziehen Sie die markierten Felder in das Entwurfsraster. Access zeigt jetzt alle Felder der Adressentabelle in der Feld-Zeile des Entwurfsrasters an. Klicken Sie auf die Zelle, die sich in der Spalte PLZ und Ort und der Zeile Kriterien befindet. Geben Sie dann den Text “40554 D1sseldorf“ ein. Die doppelten Anf,hrungszeichen brauchen Sie nicht einzugeben, da Access sie automatisch erg!nzt.
Abfrage ausf hren
Exakte (bereinstimmung
112
Klicken Sie auf das Ausf1hren-Symbol oder w!hlen Sie den Befehl Abfrage > Ausf1hren aus der Men,leiste. Access wechselt mit dem Ausf,hren der Abfrage in die Datenblattansicht. Im Datenblatt befinden sich ausschließlich solche Datens!tze, die in der Spalte PLZ und Ort den Wert “40554 D1sseldorf“ haben. Bei dieser Art Kriterium pr,ft Access auf exakte Pbereinstimmung. Nur die Unterscheidung zwischen Groß- und Kleinschreibung entf!llt. Damit besteht das Problem, dass Access Datens!tze aus den Orten “D-40211 D1sseldorf“ oder “40123 D1sseldorf-Stadtmitte“ nicht findet. Dieses Problem l!sst sich jedoch mit der Verwendung von Platzhaltern lDsen.
Abfragen
Abb. 3.7 Abfrage mit Adressen aus “40554 D3sseldorf“
Abb. 3.8 Datenblatt mit Adressen aus “40554 D3sseldorf“
Wenn Sie Abfragekriterien weniger konkret als bei der exakten Pbereinstimmung formulieren wollen, sollten Sie Platzhalter einsetzen. Das Sternchen steht f,r eine beliebige Anzahl beliebiger Zeichen. Das Fragezeichen bildet den Platzhalter f,r ein einzelnes, aber beliebiges Zeichen. Probieren Sie es aus. Klicken Sie auf das Entwurfs-Symbol, damit Access wieder die Entwurfsansicht der Abfrage anzeigt. Markieren Sie dann das alte Kriterium und lDschen Sie es mit der _-Taste. Geben Sie nun das neue Kriterium ein und best!tigen Sie Ihre Eingabe mit der -Taste.
Platzhalter verwenden
Entwurfsansicht
*D1sseldorf* In dem Augenblick, in dem Sie Ihre Eingabe best!tigen, wird sie automatisch auf syntaktische Fehler gepr,ft. Wenn Access keine Fehler feststellen kann, akzeptiert es die Eingabe. Andernfalls meldet es einen Fehler und Sie kDnnen Ihre Eingabe korrigieren.
Eingabepr fung
113
Daten auswerten und pr%sentieren
Abb. 3.9 Abfrage mit Adressen aus “D3sseldorf“
Eingabepr fung
Access ist mit einer Art intelligenter Eingabepr,fung ausgestattet. Es analysiert Ihre Eingabe und versucht, sie sozusagen zu verstehen. Sie haben daher in der Regel mehrere MDglichkeiten, ein und dasselbe Kriterium einzugeben. So sind beispielsweise die Eingaben Wie "*D1sseldorf*" *D1sseldorf* "*D1sseldorf*"
Standardformat
gleichbedeutend. Wenn Access Ihre Eingabe verstanden hat, setzt es sie in ein Standardformat um und zeigt das Kriterium in diesem Format an. Das Standardformat f,r die obigen Beispiele lautet: Wie "*D1sseldorf*" Wenn Sie diese Abfrage mit einem Klick auf das Ausf1hren-Symbol zur Ausf,hrung bringen, zeigt Access alle Datens!tze an, bei denen innerhalb des Feldes PLZ und Ort die Zeichenkette D1sseldorf vorkommt. Es spielt dabei keine Rolle, an welcher Position die Zeichenkette auftritt.
Abb. 3.10 Datenblatt mit Adressen aus D sseldorf
114
Abfragen
Sie kDnnen sich die Bildung komplexer Ausdr,cke erleichtern, indem Sie den Ausdrucks-Editor von Access einsetzen. Der Aufruf des Ausdrucks-Editors kann ,ber die Feld- und die Kriterienzeile des Entwurfsrasters erfolgen. Klicken Sie mit der rechten Maustaste, und w!hlen Sie den Befehl Aufbauen aus dem Kontextmen,. Alternativ kDnnen Sie auch auf das Aufbauen-Symbol klicken.
Ausdrucks-Editor
Weitere Hinweise zur Bildung von Ausdr,cken finden Sie in Kapitel 5 Abfragen und im Abschnitt Erstellen von Ausdr1cken mit dem Ausdrucks-Editor in Kapitel 13 Makroprogrammierung dieses Buchs.
Abfrage speichern und ausfhren Mit dem Erstellen einer neuen Abfrage gibt Access dieser automatisch einen Namen. Es handelt sich dabei um den Text Abfrage und eine fortlaufende Numerierung. Sobald Sie das Abfragefenster aus der Daten- oder Entwurfsansicht heraus schließen, fragt Access, ob Sie die Abfrage speichern wollen. Wenn Sie auf die Schaltfl!che Ja klicken, gibt Access einen Namen (z.B. Abfrage1) vor. Sie kDnnen diesen Namen ,bernehmen oder einen neuen Abfragenamen eingeben. Sie sollten sich f,r einen mDglichst aussagekr!ftigen Namen entscheiden, der Ihnen auch sp!ter die Identifikation der Abfrage ermDglicht. Die Regeln zur Bildung von Abfragenamen sind die gleichen wie bei Tabellennamen (vgl. Stichwort Namenskonventionen in Kapitel 4 Tabellen). Auch hier stehen Ihnen bis zu 64 Zeichen und die meisten Sonderzeichen zur Verf,gung. Alternativ kDnnen Sie Abfragen auch jederzeit durch die Auswahl des Befehls Datei > Speichern speichern. Der Befehl Datei > Speichern unter eignet sich sehr gut, wenn Sie ein Duplikat der Abfrage unter einem neuen Namen speichern wollen. Wenn Sie den Abfragenamen nachtr!glich !ndern wollen, dann markieren Sie den entsprechenden Eintrag im Datenbankfenster, und w!hlen Sie den Befehl Umbenennen aus dem Kontextmen, oder aus dem Men, Bearbeiten. Aus der Entwurfsansicht einer Auswahlabfrage wechseln Sie mit dem Datenblattoder dem Ausf1hren-Symbol in die Datenblattansicht der Abfrage. Bei Auswahlabfragen, wie Sie sie in diesem Kapitel erstellen, haben die beiden Symbole die gleiche Bedeutung. Unterschiede machen sich erst bei Aktionsabfragen bemerkbar.
Abfrage speichern
Abfragen umbenennen
Abfrage ausf hren
Weitere Hinweise zu Aktionsabfragen finden Sie in Kapitel 5 Abfragen dieses Buchs. Wenn Sie mit dem Ergebnis zufrieden sind, dann speichern Sie die Abfrage. Andernfalls kDnnen Sie durch einen Klick auf das Entwurfs-Symbol wieder in die Entwurfsansicht wechseln und die Abfrage weiter bearbeiten.
115
Daten auswerten und pr%sentieren
Daten im Datenblatt bearbeiten Access zeigt das Abfrageergebnis oder Dynaset in der Datenblattansicht an. Sie kDnnen die Daten wie in der Datenblattansicht einer Tabelle bearbeiten. Das heißt, dass Sie neue Datens!tze eingeben, bestehende Datens!tze !ndern oder lDschen kDnnen. Besonders interessant ist auch die MDglichkeit, ein Datenblatt auszudrucken.
Anzeige aktualisieren
Bei der Eingabe neuer Datens!tze in ein Abfragedatenblatt f!llt jedoch auf, dass diese auch dann angezeigt werden, wenn sie den Abfragekriterien nicht entsprechen. Daran !ndert sich auch bei der Auswahl des Befehls Datens7tze > Anzeige aktualisieren nichts. Sie erreichen das erneute Pberpr,fen der Abfragekriterien, indem Sie die Abfrage erneut ausf,hren lassen. Dies kann ,ber einen Wechsel in die Entwurfs- und zur,ck in die Datenblattansicht oder einen Klick auf das Symbol Ausf1hren erfolgen.
Abb. 3.11 Symbol Ausf3hren hinzuf gen
Sollte sich das Symbol Ausf1hren nicht in der Symbolleiste des Abfragedatenblatts befinden, m,ssen Sie es zun!chst hinzuf,gen. Gehen Sie bei geDffneter Abfrage wie folgt vor:
116
1
Klicken Sie mit der rechten Maustaste auf die Symbolleiste, um das Kontextmen, zu Dffnen.
2
W!hlen Sie den Befehl Anpassen aus dem Kontextmen,.
3
Im Dialog Anpassen klicken Sie auf die Registerkarte Befehle.
Abfragen
4
Markieren Sie die Kategorie Datens7tze.
5
Ziehen Sie den Befehl Ausf1hren aus dem Dialog auf die gew,nschte Stelle der Symbolleiste Abfragedatenblatt.
6
Beenden Sie das Anpassen der Symbolleiste durch einen Klick auf die Schaltfl!che Schließen.
Ein Klick auf das Ausf1hren-Symbol f,hrt die Abfrage erneut aus und zeigt nur diejenigen Datens!tze an, die den Abfragekriterien entsprechen.
Das Layout des Abfragedatenblatts %ndern In Kapitel 2 Daten verwalten dieses Buchs haben Sie einige Befehle und eine Symbolleiste kennen gelernt, mit denen Sie das Layout eines Datenblatts ver!ndern und speichern kDnnen. Wenn Sie eine Abfrage ausf,hren lassen, dann zeigt Access das Abfrageergebnis bzw. Dynaset im Datenblatt an. Auch hier stehen Ihnen die Befehle des FormatMen,s zur Verf,gung, um das Layout zu ver!ndern. Sie kDnnen Schriftarten, Spaltenbreiten und ZeilenhDhen einstellen. F,r das Datenblatt-Layout einer Abfrage gilt das Gleiche wie f,r das einer Tabelle. Mit dem Befehl Datei > Speichern speichern Sie nicht nur den Abfrageentwurf, sondern zus!tzlich auch das Datenblatt-Layout.
Datenblatt-Layout
Weitere Hinweise zur Bearbeitung eines Datenblatt-Layouts finden Sie in Kapitel 2 Daten verwalten dieses Buchs. Hinweis
Spalten hinzufgen Die Aufnahme einer Spalte bzw. eines Datenfelds in das Dynaset erfolgt durch Ziehen des entsprechenden Eintrags aus der Feldliste in das Entwurfsraster. Wenn das Entwurfsraster noch leer ist, bildet das neue Datenfeld automatisch die linke Spalte der Tabelle. In allen anderen F!llen f,gt Access die neue Spalte an der Position ein, an der Sie die linke Maustaste wieder loslassen. Falls Sie es eilig haben, f,hren Sie einen Doppelklick auf den Feldnamen durch. Das neue Datenfeld wird rechts neben dem letzten Datenfeld eingef,gt.
Spalten und Zeilen l&schen Das LDschen von Spalten aus dem Abfrageentwurf ist denkbar einfach. Sie markieren zun!chst die Spalte und w!hlen dann den Befehl Bearbeiten > Spalten L4schen oder bet!tigen die _-Taste. Beachten Sie jedoch, dass sich dieser Befehl nicht mit Bearbeiten > R1ckg7ngig widerrufen l!sst. Wenn Sie eine versehentlich gelDschte Spalte wieder aufnehmen wollen, m,ssen Sie den entsprechenden Eintrag aus der Feldliste erneut in das Entwurfsraster ziehen.
Spalten lschen
117
Daten auswerten und pr%sentieren
Abb. 3.12 Lschen einer Spalte aus dem Entwurfsraster
Tipp
Zeilen lschen
Hinweis
Wenn Sie mit der rechten Maustaste auf den Kopf einer Spalte klicken, markiert Access die Spalte und Dffnet das Kontextmen,. Mit dem Befehl Ausschneiden kDnnen Sie die Spalte dann in die Zwischenablage von Windows lDschen. Bei Bedarf kDnnen Sie die Spalte dann sp!ter ,ber den Befehl Einf1gen wieder in den Entwurfsbereich einf,gen. Das LDschen von Zeilen in der Entwurfsansicht ist nicht mDglich. Access gibt die Zeilen Feld, Tabelle, Sortierung, Anzeigen, Kriterien und oder fest vor. Sie kDnnen diese Zeilen nicht lDschen, sondern hDchstens mit speziellen Befehlen des Men,s Ansicht ausblenden. So kDnnen Sie beispielsweise die Anzeige der Zeile Tabelle mit dem Befehl Ansicht > Tabellennamen wechselweise ein- und ausblenden. Weitere Befehle des Men,s Ansicht lernen Sie im Laufe Ihrer Arbeit mit Abfragen kennen. Beachten Sie, dass Sie im Datenblatt einer Abfrage sehr wohl Zeilen lDschen kDnnen. Das LDschen dieser Zeilen f,hrt jedoch zwangsl!ufig auch zum LDschen der entsprechenden Datens!tze aus der Tabelle, die der Abfrage zugrunde liegt.
Spalten anordnen Im Entwurfsraster kDnnen Sie die Anordnung der Spalten !ndern. Markieren Sie eine oder mehrere Spalten und ziehen Sie sie an ihre neue Position. Die Technik ist die gleiche wie beim Verschieben von Spalten im Datenblatt.
Hinweis
118
Access speichert die Anordnung der Spalten mit der Abfrage. Das ist anders, wenn Sie die Anordnung der Spalten in der Datenblattansicht !ndern. In diesem Fall speichert Access die Anordnung der Spalten mit dem Datenblatt-Layout.
Abfragen
Spalten ausblenden Manchmal benDtigen Sie ein Feld im Entwurfsraster, um Kriterien f,r dieses Feld festlegen zu kDnnen. Gleichzeitig soll dieses Feld im Abfragedatenblatt jedoch nicht mit angezeigt werden. Dieses Problem kDnnen Sie sehr einfach lDsen, indem Sie das Feld in das Entwurfsraster ziehen und anschließend das Kontrollk!stchen in der Zeile Anzeigen leeren. Access bezieht dieses Feld bei der Ausf,hrung der Abfrage dann mit ein, zeigt es im Dynaset jedoch nicht an.
Kriterien f r ausgeblendete Spalten definieren
Abb. 3.13 Abfrage mit dem Sternchen als Platzhalter
Das Ausblenden von Spalten wird h!ufig bei Abfragen angewendet, die ein Sternchen beinhalten. Das Sternchen dient als Platzhalter f,r alle Datenfelder der Abfrage. Sie kDnnen das gleich einmal ausprobieren, indem Sie eine neue Abfrage f,r die Adressentabelle entwerfen. Ziehen Sie das Sternchen und das Feld PLZ und Ort in das Entwurfsraster. Geben Sie f,r das Feld PLZ und Ort das Kriterium Wie "*D1sseldorf*" ein und leeren Sie das Kontrollk!stchen Anzeigen. Wenn Sie die Abfrage ausf,hren, erhalten Sie ein Datenblatt mit allen Feldern der Adressentabelle. Das Datenblatt enth!lt aber nur die Adressen aus D,sseldorf. Wenn Sie das Kontrollk!stchen Anzeigen ankreuzen und die Abfrage erneut ausf,hren, finden Sie das Feld PLZ und Ort zweimal im Datenblatt; einmal als Feld der Adressentabelle und einmal als Kriterienfeld, das Access standardm!ßig Feld1 nennt. 119
Daten auswerten und pr%sentieren
Tipp
Das Sternchen ist eine beliebte Methode, um eine Abfrage flexibel zu halten. Wenn Sie der Tabelle, die der Abfrage zugrunde liegt, sp!ter weitere Datenfelder hinzuf,gen, erscheinen diese aufgrund der Verwendung des Sternchens automatisch im Abfragedatenblatt.
Ein Abfragedatenblatt sortieren Prim!rschl ssel
Wie in Kapitel 2 Daten verwalten bereits erw!hnt wurde, sortiert Access Tabellen in der Datenblattansicht standardm!ßig nach dem Prim!rschl,ssel.
Abfrage zum Sortieren der Adressentabelle
Mit einer Abfrage kDnnen Sie eine Tabelle nach mehreren Kritierien sortieren. Wenn Sie die Abfrage speichern, dann kDnnen Sie jederzeit auf den sortierten Datenbestand zugreifen. Das folgende Beispiel beschreibt eine Abfrage, die die Adressentabelle nach Namen sortiert. Um das Beispiel nachzuvollziehen, gehen Sie wie folgt vor:
Neue Abfrage entwerfen
Tabelle anzeigen
Felder ausw!hlen und sortieren
Abfrage speichern
120
1
Aktivieren Sie das Datenbankfenster.
2
Markieren Sie das Register Tabellen.
3
Markieren Sie die Tabelle Adressen.
4
W!hlen Sie den Befehl Einf1gen > Abfrage aus der Men,leiste.
5
Im Dialog Neue Abfrage f,hren Sie einen Doppelklick auf den Eintrag Entwurfsansicht durch.
Bei der beschriebenen Vorgehensweise ist die Adressentabelle markiert, w!hrend Sie den Befehl zum Rffnen der Entwurfsansicht einer neuen Abfrage ausw!hlen. Access Dffnet daher den Abfrageentwurf, ohne den Dialog Tabelle anzeigen vorher einzublenden. Es f,gt vielmehr automatisch die Feldliste der Adressentabelle hinzu. Dieser Zusammenhang gilt stets dann, wenn vor dem Entwurf einer neuen Abfrage eine Tabelle oder eine andere Abfrage markiert ist. So kDnnen Sie den Entwurf einer neuen Abfrage beispielsweise auch aus der Datenblattansicht einer Tabelle beginnen. Ziehen Sie das Sternchen und das Feld Name aus der Feldliste in das Entwurfsraster und leeren Sie das Kontrollk!stchen Anzeigen des Feldes Name. Klicken Sie dann in die Zeile Sortierung der Spalte Name und auf den nach unten zeigenden Pfeil des Kombinationsfeldes. Access zeigt eine Auswahlliste der mDglichen Sortierreihenfolgen an. Klicken Sie auf den Eintrag Aufsteigend. Sie haben damit eine Abfrage mit allen Feldern der Adressentabelle definiert. Der einzige Unterschied zur origin!ren Adressentabelle besteht darin, dass die Adressen aufsteigend nach Namen sortiert sind. W!hlen Sie den Befehl Datei > Speichern aus der Men,leiste und geben Sie Adressen nach Namen sortiert als Abfragenamen ein.
Abfragen
Abb. 3.14 Diese Abfrage sortiert Adressen aufsteigend nach Namen
Wenn Sie die Abfrage ausf,hren lassen, zeigt Access das Datenblatt an. Sie kDnnen das Datenblatt jetzt genauso einsetzen wie die origin!re Tabelle. Sie kDnnen Datens!tze einf,gen, bearbeiten und lDschen. Sie kDnnen die Abfrage sogar als Basis f,r Formulare und Berichte verwenden. Das Beispiel zeigt die Sortierung nach nur einem Datenfeld. Es sortiert das Dynaset dabei zun!chst nach der am weitesten links stehenden Spalte, f,r die eine Sortierung festgelegt ist. Erst wenn bei dieser Spalte gleiche Werte auftreten, werden diese nach der n!chsten, rechts stehenden Spalte sortiert. Es gen,gt daher nicht, eine Sortierreihenfolge f,r mehrere Spalten zu definieren, sondern zus!tzlich muss auch die Anordnung der Spalten stimmen. Ein typisches Beispiel f,r diesen Anwendungsfall ist die Sortierung der Adressentabelle nach Postleitzahlengebieten. Innerhalb jedes Gebietes soll zus!tzlich nach Namen sortiert werden. Als Basis f,r das Beispiel soll die eben erstellte Abfrage Adressen nach Namen sortiert dienen. Rffnen Sie die Abfrage in der Entwurfsansicht und ziehen Sie zus!tzlich das Feld PLZ und Ort in das Entwurfsraster. Leeren Sie auch f,r diese Spalte das Kontrollk!stchen Anzeigen, und w!hlen Sie aufsteigende Sortierung. Verschieben Sie die Spalte PLZ und Ort gegebenenfalls an eine Position links von der Spalte Name, und speichern Sie die Abfrage unter dem Namen Adressen nach Postleitzahlen und Namen sortiert.
Abfrage ausf hren
Nach mehreren Spalten sortieren
Adressen nach Postleitzahlen und Namen sortieren Abfrage entwerfen
121
Daten auswerten und pr%sentieren
Abb. 3.15 Adressen nach Postleitzahlen und Namen sortiert
Abfrage ausf hren
Wenn Sie die Abfrage ausf,hren lassen, dann sortiert Access zun!chst den Datenbestand. Sofern Sie bereits mehrere Tausend Adressen angelegt haben, kann dies etwas Zeit in Anspruch nehmen. Schließlich wurde f,r das Feld PLZ und Ort kein Index definiert. Anschließend Dffnet Access das sortierte Dynaset in der Datenblattansicht und Sie kDnnen die Daten wie gewohnt bearbeiten. Das Beispiel zeigt die Sortierung nach zwei Spalten. Wenn Sie Ihre Tabellen einmal nach drei oder mehr Spalten sortieren wollen, dann bedienen Sie sich der gleichen Vorgehensweise. Achten Sie jedoch auf die richtige Anordnung der Spalten.
Hinweis
Anders als Sie vielleicht aus den Abbildungen dieses Buchs schließen, zeigt Access eine Abfrage entweder in der Entwurfs-, in der SQL- oder in der Datenblattansicht an. Um die Abbildungen zu erstellen, haben wir einige der Abfragen zweimal unter verschiedenen Namen gespeichert. Nur so ist es mDglich, die Entwurfs- und die Datenblattansicht gleichzeitig darzustellen.
Eine Und-Verknpfung von Abfragekriterien durchfhren Sie kDnnen im Entwurfsraster so viele Kriterien festlegen, wie es Ihre Anwendung erfordert. Sie m,ssen lediglich wissen, dass Access die Kriterien einer Zeile Und-verkn,pft. Das bedeutet, dass alle Kriterien dieser Zeile gleichzeitig erf,llt sein m,ssen, damit ein Datensatz in das Dynaset aufgenommen wird.
122
Abfragen
Als typisches Beispiel f,r die Und-Verkn,pfung von Kriterien soll eine Abfrage f,r die Projektetabelle erstellt werden. Die Abfrage soll aus den Projektdaten alle offenen Forderungen ermitteln und diese nach dem Rechnungsdatum sortiert anzeigen. Bei Bedarf kann dann anschließend direkt eine Mahnung geschrieben oder telefonisch gemahnt werden. Erstellen Sie eine neue Abfrage und f,gen Sie die Projektetabelle hinzu. Pbernehmen Sie dann per Doppelklick die Felder Titel, Ist Rechnung, Ist Zahlung und Ist Nettobetrag in das Entwurfsraster. Eine Forderung liegt dann vor, wenn bereits eine Rechnung geschrieben, aber noch kein Zahlungseingang verbucht wurde. Dieser Fall tritt genau dann ein, wenn das Rechnungsdatum bereits eingegeben, das Feld f,r das Zahlungsdatum aber noch leer ist. In der Abfrage ist es daher lediglich erforderlich, f,r das Rechnungsdatum das Kriterium Ist Nicht Null und f,r das Zahlungsdatum das Kriterium Ist Null einzugeben. Mit dem Kriterium Ist Null ermitteln Sie die Datens!tze, bei denen das Feld Zahlungsdatum noch keinen Wert hat. Mit dem Kriterium Ist Nicht Null erreichen Sie genau das Gegenteil. Da die Liste der Forderungen aufsteigend nach dem Rechnungsdatum sortiert werden soll, w!hlen Sie das Sortierkriterium Aufsteigend f,r diese Spalte.
Forderungen ermitteln
Abfrage entwerfen
Kriterien eingeben
Abb. 3.16 Liste der Forderungen
Speichern Sie die Abfrage unter dem Namen Forderungen. Wenn Sie sie zur Ausf,hrung bringen, zeigt Access die Titel aller Projekte an, zu denen noch Forderungen bestehen. Die Liste ist aufsteigend nach dem Rechnungsdatum sortiert, so dass die !lteste Forderung die Liste anf,hrt.
Abfrage speichern
123
Daten auswerten und pr%sentieren
Kritik an der Forderungsliste
Dieses Beispiel ist ein erster Schritt in die richtige Richtung. Es w!re w,nschenswert, die Forderungsliste noch um die Adressdaten zu erg!nzen. Außerdem w!re es empfehlenswert, die Forderungen nach Debitorennummern zu kumulieren bzw. die Forderungen je Kunde zu addieren. Das entstehende Dynaset kDnnte dann direkt die Basis f,r ein automatisches Mahnwesen bilden. Aber keine Sorge, die noch fehlenden Elemente folgen im weiteren Verlauf dieses Kapitels.
Eine Oder-Verknpfung von Abfragekriterien durchfhren Alle mit oder beschrifteten Zeilen im unteren Teil des Entwurfsrasters bilden ebenfalls Kriterienzeilen. Wie die Namensgebung der zus!tzlichen Zeilen bereits vermuten l!sst, verkn,pft Access alle Kriterienzeilen mit Oder.
Geplante Zahlungseing!nge
Das folgende Beispiel Geplante Zahlungseing7nge zeigt, dass die Verwendung mehrerer Kriterienzeilen manchmal unerl!sslich ist. Es soll eine Abfrage erstellt werden, die nicht nur die Forderungen, sondern alle zu erwartenden Zahlungseing!nge auflistet. Diese Abfrage muss zus!tzlich zu den Forderungen auch diejenigen Projekte ber,cksichtigen, die bereits abgegeben (Ist Abgabe = Nicht Null), aber noch nicht berechnet wurden (Ist Rechnung = Ist Null). Bei dieser Abfrage wird das Rechnungsdatum einmal auf Gleichheit und ein zweites Mal auf Ungleichheit gepr,ft. Es ist daher unerl!sslich, zwei Abfragezeilen zu definieren.
Abfrage entwerfen
Bei dem Beispiel handelt es sich um eine Erweiterung der Forderungsliste. Aktivieren Sie daher das Datenbankfenster und klicken Sie auf das Register Abfragen. Markieren Sie den Eintrag Forderungen und w!hlen Sie den Befehl Entwurf aus dem Kontextmen,. W!hlen Sie dann den Befehl Datei > Speichern unter, um eine Kopie der Abfrage unter dem Namen Geplante Zahlungseing7nge zu erstellen. F,r die neue Abfrage wird zus!tzlich das Feld Ist Abgabe benDtigt. Ziehen Sie den entsprechenden Eintrag aus der Feldliste in das Entwurfsraster. Die erste Kriterienzeile der Abfrage ermittelt alle Forderungen. Sie bleibt unver!ndert. In der zweiten Kriterienzeile tragen Sie f,r die Spalte Ist Abgabe das Kriterium Ist Nicht Null und f,r die Spalten Ist Rechnung und Ist Zahlung jeweils das Kriterium Ist Null ein. Diese zweite Zeile wird mit der ersten Zeile Oder-verkn,pft.
Abfrage speichern
Die Abfrage ermittelt damit alle Forderungen und zus!tzlich alle abgegebenen Projekte, die noch nicht berechnet wurden. Mit einem Klick auf das Speichern-Symbol speichern Sie den ge!nderten Abfrageentwurf in der Datenbank.
Zahlungs- und Rechnungsdatum eingeben
Sie kDnnen diese Abfrage nicht nur zum Ermitteln der geplanten Zahlungseing!nge einsetzen. Das Datenblatt eignet sich auch hervorragend zur Eingabe des Rechnungsdatums und des Zahlungsdatums. Es zeigt schließlich nur diejenigen Projekte an, bei denen diese beiden Werte noch fehlen. Mit der Abfrage entf!llt daher das manchmal l!stige Suchen nach den Projekten, die noch nicht berechnet oder bezahlt sind.
124
Abfragen
Abb. 3.17 Geplante Zahlungseing!nge
Zusammenfassend l!sst sich sagen, dass die Kriterien jeder Zeile Und-verkn,pft werden, wohingegen verschiedene Zeilen Oder-verkn,pft werden. Ein Gesetz der Logik besagt, dass sich gemeinsam mit dem Nicht-Operator alle nur denkbaren Kombinationen bilden lassen. Das Abfragefenster setzt hier keine Grenzen.
Zusammenfassung
Abfragen fr verknpfte Tabellen entwerfen In Kapitel 2 Daten verwalten haben Sie eine relationale Beziehung f,r die Adressenund die Projektetabelle definiert. In diesem Abschnitt nutzen Sie Abfragen, um Daten aus beiden Tabellen gleichzeitig auf dem Bildschirm darzustellen. Das folgende Beispiel zeigt alle Projekte mit den dazugehDrenden Adressdaten an: 1
Aktivieren Sie das Datenbankfenster.
2
Markieren Sie das Register Abfragen.
3
Klicken Sie auf die Schaltfl!che Neu.
4
F,hren Sie im Dialog Neue Abfrage einen Doppelklick auf die Schaltfl!che Entwurfsansicht durch.
5
Falls Access den Dialog Tabelle anzeigen nicht anzeigt, Dffnen Sie ihn durch einen Klick auf das gleichnamige Symbol
6
F,gen Sie die Tabellen Projekte und Adressen hinzu.
7
Klicken Sie im Dialog Tabelle anzeigen auf die Schaltfl!che Schließen.
Projekte und Adressen
Abfrage entwerfen
125
Daten auswerten und pr%sentieren
Access zeigt jetzt im oberen Teil des Abfragefensters jeweils eine Feldauswahlliste f,r die Projekte- und die Adressentabelle an. Es erkennt außerdem die relationale Beziehung der beiden Tabellen und zeigt diese durch eine Verbindungslinie an.
Relationale Beziehung
Hinweis
Felder der Projektetabelle hinzuf gen
Wenn Sie die Beziehung zwischen der Adressen- und der Projektetabelle nicht in der Datenbank gespeichert haben, zeigt Access trotzdem eine Verbindungslinie zwischen den beiden Tabellen an. Die Ursache hierf,r besteht darin, dass es zwei Felder mit gleichen Namen findet, die f,r eine Beziehung geeignet sind. Sollten Ihre Referenzfelder einmal verschiedene Namen haben, m,ssen Sie die Beziehung im Abfrageentwurf durch Ziehen einer Linie mit der Maus manuell herstellen. Beachten Sie, dass die Verbindungslinie die Beziehung der beiden Tabellen nur f,r die aktuelle Abfrage definiert. Diese Beziehung wird, anders als die im Beziehungsfenster festgelegten Beziehungen, nicht in der Datenbank gespeichert. In Kapitel 5 Abfragen dieses Buchs finden Sie weitere Informationen ,ber das manuelle Verkn,pfen von Tabellen im Abfrageentwurf. Zur Fertigstellung der Beispielabfrage fehlt lediglich noch die Auswahl der Felder f,r das Dynaset. Ziehen Sie das Sternchen aus der Projekte- und aus der Adressentabelle in den Entwurfsbereich, um alle Felder in das Abfrageergebnis zu ,bernehmen.
Abb. 3.18 Projekte und Adressen verkn pfen
Abfrage ausf hren
Speichern Sie die Abfrage unter dem Namen Projekte und Adressen. Klicken Sie dann auf das Datenblatt-Symbol, um die Abfrage ausf,hren zu lassen. Das Ergebnis Ihrer Bem,hungen ist ein Datenblatt, das Spalten f,r alle Felder der Projekte- und f,r alle Felder der Adressentabelle enth!lt. Aufgrund der Menge der Spalten ist das Datenblatt zwar etwas un,bersichtlich, es stellt jedoch erstmals die Datenfelder beider Tabellen dar. Da einige Felder wie beispielsweise das Feld Adresse-Nr in beiden Tabellen vorkommen, stellt Access diesen Feldnamen durch einen Punkt getrennt dem Namen der Herkunftstabelle voran. So entstehen beispielsweise die Namen Projekte.Adresse-Nr und Adressen.Adresse-Nr.
126
Abfragen
Abb. 3.19 Datenblatt mit Projekten und Adressen
Access ist eines der wenigen Datenbanksysteme, die das Editieren von Dynasets, die auf der Basis verkn,pfter Tabellen entstanden sind, erlauben. Sie kDnnen sowohl die Felder der Master- (also der Tabelle auf der 1-Seite einer 1:n-Beziehung) als auch die der Detailtabelle (also der Tabelle auf der n-Seite einer 1:n-Beziehung) bearbeiten. Weitere Beispiele in diesem Buch basieren auf der Abfrage, die Sie gerade erstellt haben. Sie kDnnen jedoch bereits jetzt mit dem Datenblatt arbeiten. Wenn Sie ein bisschen mit dem Fixieren und Ausblenden von Spalten experimentieren, gelangen Sie sehr bald zu einer etwas ,bersichtlicheren Anordnung der Tabelle. Weitere Hinweise zu diesem Thema finden Sie in Kapitel 2 Daten verwalten unter dem Stichwort Datenblatt-Layout.
Dynaset bearbeiten
Weitere Beispiele
Nachtr%gliches Erg%nzen einer Abfrage um eine weitere Tabelle Weiter oben in diesem Kapitel haben Sie eine Abfrage erstellt, die aus der Projektetabelle die Liste der Forderungen ermittelt. Eine Kritik an dieser Liste war, dass die Adressen der Debitoren fehlten. Sie kDnnen dieses Problem lDsen, indem Sie die Abfrage um die Adressentabelle erg!nzen.
Forderungen mit Adressen
Rffnen Sie die Entwurfsansicht der Abfrage Forderungen ,ber den Befehl Entwurf des Kontextmen,s im Datenbankfenster. W!hlen Sie den Befehl Abfrage > Tabelle anzeigen aus der Men,leiste und f,hren Sie einen Doppelklick auf den Eintrag Adressen durch.
Adressen hinzuf gen
Beenden Sie den Dialog Tabelle anzeigen, indem Sie auf die Schaltfl!che Schließen klicken. Access zeigt im oberen Teil des Abfragefensters jetzt die Projekte- und die Adressentabelle an. Eine Linie markiert die relationale Beziehung zwischen den beiden Tabellen. 127
Daten auswerten und pr%sentieren
Klicken Sie auf den Eintrag Name in der Feldliste der Adressentabelle. Klicken Sie dann bei festgehaltener H-Taste auf das Feld Telefon, um die vier Felder Name, Straße, PLZ und Ort und Telefon gleichzeitig zu markieren. Ziehen Sie die vier Felder in das Entwurfsraster und speichern Sie die Abfrage unter dem Namen Forderungen mit Adressen.
Abb. 3.20 Forderungen mit Adressen
Datenblatt
Wenn Sie die Datenblattansicht der Abfrage aktivieren, zeigt Access alle Forderungen mit Rechnungsdatum und Nettobetrag an. Als zus!tzliche Information finden Sie die Adressen und Telefonnummern der Kunden bzw. Debitoren, die Forderungen zu begleichen haben. Die Abfrage bietet den Vorteil, dass Sie Ihre Schuldner direkt anrufen oder anschreiben kDnnen. Ein weiterer Kritikpunkt an der Forderungsliste war, dass die Summierung der Forderungen je Debitor fehlt. Sie h!tte den Vorteil, dass die Gesamtsumme aller Forderungen gegen,ber einem Schuldner direkt erkennbar w!re. Das notwendige Wissen zum Erstellen einer solchen Abfrage erhalten Sie in Kapitel 5 Abfragen dieses Buchs. In diesem Kapitel erfahren Sie auch mehr ,ber Abfragen, mit denen Sie Ihren Datenbestand automatisch aktualisieren lassen kDnnen.
128
Formulare erstellen und anwenden
Das Datenblatt einer Abfrage drucken Um das Datenblatt einer Abfrage zu drucken, gehen Sie wie folgt vor: Datenblatt drucken
1
Wechseln Sie in die Datenblattansicht der Abfrage oder markieren Sie die Abfrage im Datenbankfenster.
2
Klicken Sie auf das Drucken-Symbol.
Access beginnt dann mit dem Ausdruck des Datenblatts. Statt auf das DruckenSymbol kDnnen Sie auch auf das Seitenansichts-Symbol klicken. Sie erhalten so eine Vorschau auf den sp!teren Ausdruck. Weitere Hinweise zum Drucken und zur Seitenansicht von Datenbl!ttern finden Sie in Kapitel 2 Daten verwalten dieses Buchs.
Abb. 3.21 Seitenansicht eines Abfragedatenblatts
Formulare erstellen und anwenden Der Vorteil eines Datenblatts besteht darin, dass in der tabellarischen Darstellung mehrere Datens!tze gleichzeitig betrachtet werden kDnnen. Die MDglichkeiten zur Gestaltung von Datenbl!ttern sind jedoch eingeschr!nkt. Die Schrift l!sst sich nur f,r alle Elemente eines Datenblatts gleichzeitig einstellen. Auf die Verwendung von Farben und grafischen Elementen muss weitgehend verzichtet werden.
Einschr!nkungen in Datenbl!ttern
129
Daten auswerten und pr%sentieren
Vorteile von Formularen
In Formularen verf,gen Sie ,ber fast alle gestalterischen Elemente, die die grafische Benutzeroberfl!che Windows bietet. Der Nachteil von Formularen besteht lediglich darin, dass sie zun!chst erstellt werden m,ssen. In diesem Abschnitt lernen Sie einige Formular-Assistenten kennen, die Ihnen die meiste Arbeit abnehmen. Kapitel 5 Abfragen dieses Buchs beschreibt den Entwurf von Formularen vollst!ndig. Dort finden Sie alles, was Sie zur individuellen Anpassung der mit den Assistenten entworfenen Formulare wissen m,ssen.
Mit nur vier Mausklicks zum Formular In diesem Abschnitt lernen Sie den Assistenten kennen, mit dem Sie ein Formular am schnellsten erstellen kDnnen. Im Unterschied zu den anderen Assistenten setzt der AutoFormular-Assistent f,r alle das Formular-Layout betreffenden Parameter Standardwerte ein und benDtigt daher keine Eingaben des Anwenders. Dar,ber hinaus bietet der AutoFormular-Assistent seit Access 2000 sogar die MDglichkeit, Formulare mit Unterformularen zu erstellen. Dies setzt voraus, dass Sie zwei Tabellen oder Abfragen miteinander verkn,pft haben und dass Sie die Detailtabelle zum Unterdatenblatt der Master-Tabelle gemacht haben. Mehr Informationen zu diesem Thema entnehmen Sie dem Abschnitt Unterdatenbl7tter in Kapitel 2 Daten verwalten. Zun!chst aber erstellen Sie ein Formular, das auf einer Tabelle oder Abfrage ohne Unterdatenbl!tter basiert. Benutzen Sie dazu die Tabelle Adressen. Bevor Sie beginnen, das Formular zu erstellen, m,ssen Sie noch das Unterdatenblatt entfernen. Dazu Dffnen Sie das Datenblatt der Tabelle und f,hren den Men,befehl Format > Unterdatenblatt > Entfernen aus. Damit diese 0nderung beim Erstellen des Formulars zum Tragen kommt, m,ssen Sie die Tabelle noch speichern. Nun steht der Erstellung Ihres ersten Formulars nichts mehr im Wege:
130
1
Aktivieren Sie das Datenbankfenster mit einem Klick auf das gleichnamige Symbol.
2
Klicken Sie im Datenbankfenster auf das Register Tabellen.
3
Markieren Sie die Tabelle Adressen.
4
Klicken Sie auf den Pfeil des Symbols Neues Objekt.
5
W!hlen Sie den Eintrag AutoFormular aus der Liste, um das Erstellen des Formulars zu starten.
Formulare erstellen und anwenden
Abb. 3.22 Automatisches Formular f r die Adressentabelle
Access startet den Formular-Assistenten, der das Formular automatisch generiert und es in der Formularansicht Dffnet. Bevor Sie ein Formular mit Unterformular erstellen, sollten Sie Ihr neues Formular zun!chst speichern, damit Sie es nicht jedesmal neu ,ber das AutoFormular-Symbol erzeugen m,ssen. W!hlen Sie den Befehl Datei > Speichern aus der Men,leiste oder klicken Sie auf das gleichnamige Symbol, und geben Sie den Dateinamen Adressen ohne Unterformular ein.
Formular speichern
Nachdem Sie das Formular gespeichert haben, erstellen Sie nun ein Formular mit Unterformular. Im Unterformular werden die Datens!tze der Detailtabelle dargestellt, welche mit dem aktuellen Datensatz des Hauptformulars verkn,pft sind. Dabei werden im Hauptformular die Daten der Master-Tabelle dargestellt. Weitere Informationen zu Formularen f,r Daten aus mehreren Tabellen entnehmen Sie dem Abschnitt Formulare f1r Daten aus mehreren Tabellen erstellen weiter unten in diesem Kapitel. Als Datenquelle des neuen Formulars dienen die verkn,pften Tabellen Adressen und Projekte. Um ein Formular mit Unterformular erstellen zu kDnnen, m,ssen Sie zun!chst das Entfernen des Unterdatenblattes r,ckg!ngig machen. Dazu Dffnen Sie die Adressentabelle und f,hren den Men,befehl Einf1gen > Unterdatenblatt aus. W!hlen Sie im Dialog Unterdatenblatt die Tabelle Projekte aus. Als Verkn,pfungsfeld geben Sie in beiden F!llen Adresse-Nr an. Nachdem Sie die Tabelle gespeichert haben, wiederholen Sie die oben angegebenen Schritte zum Erstellen des AutoFormulars.
131
Daten auswerten und pr%sentieren
Abb. 3.23 Automatisches Formular f r verkn pfte Tabellen
Formular mit Unterformular erstellen
Access startet den Formular-Assistenten, der das Formular automatisch generiert und es in der Formularansicht Dffnet. Bevor Sie sich mit den Besonderheiten der Datenbearbeitung in Formularen auseinandersetzen, sollten Sie Ihr neues Formular zun!chst speichern.
Formular anwenden Sie kDnnen ein mit dem AutoFormular- oder einem anderen Assistenten entworfenes Formular direkt zur Datenbearbeitung nutzen. Die meisten Techniken zur Datenbearbeitung sind dieselben wie im Datenblatt. Dennoch gibt es einige Besonderheiten, die im Folgenden kurz beschrieben werden.
Statuszeile
132
Um Daten zu bearbeiten, klicken Sie auf ein Datenfeld, und beginnen Sie mit der Dateneingabe. Beachten Sie, dass Access in der Statuszeile den im Tabellenentwurf festgelegten Text der Eigenschaft Beschreibung eines Datenfeldes anzeigt. Der Text, der jedem Eingabefeld vorangestellt ist, entspricht hingegen dem Feldnamen oder der Feldeigenschaft Beschriftung.
Formulare erstellen und anwenden
Im unteren Teil des Formularfensters finden Sie dieselben Navigationsschaltfl!chen wie in der Datenblattansicht einer Tabelle oder Abfrage. Auch die Tasten zur Bearbeitung von Daten und zur Navigation innerhalb des Formulars sind die gleichen wie im Datenblatt. Das Einf,gen und LDschen von Datens!tzen geschieht in Formularen auf die gleiche Art und Weise wie in Datenbl!ttern. Verwenden Sie die Befehle des Bearbeitenoder des Kontextmen,s. Das Formular f,r die Adressentabelle stellt im Unterschied zum Datenblatt nur einen einzelnen Datensatz dar. Sie kDnnen daher auch nur einen Adressen-Datensatz gleichzeitig lDschen. Die einzige Ausnahme von dieser Regel ist der Befehl Bearbeiten > Alle Datens7tze markieren. Mit ihm kDnnen Sie alle, d.h. auch die nicht sichtbaren, Datens!tze markieren, um diese anschließend zu lDschen. Weiter unten in diesem Kapitel entwerfen Sie ein Formular, das mehrere Datens!tze gleichzeitig darstellt. Mit diesem Formular lassen sich dann auch mehrere Datens!tze gleichzeitig markieren und lDschen. Um die in Formularen dargestellten Datens!tze einzuschr!nken, gibt es zwei MDglichkeiten. Wenn ein Formular dauerhaft nur einen Ausschnitt aus einer Tabelle oder Abfrage darstellen soll, erstellen Sie zun!chst eine Abfrage und anschließend ein Formular, das auf dem Abfrageergebnis basiert. Wenn Sie das Formular Dffnen, dann f,hrt Access automatisch die Abfrage aus und stellt nur die gew,nschten Datens!tze dar. Weitere Hinweise zu Abfragen finden Sie am Anfang dieses Kapitels und in Kapitel 5 Abfragen dieses Buchs. Wenn Sie die Datens!tze eines Formulars vor,bergehend einschr!nken wollen, dann ist ein Filter besser geeignet. Sie kDnnen in Formularen auswahlbasierte, formularbasierte und Spezialfilter anwenden. Die Techniken sind dieselben wie bei Datenbl!ttern. Weitere Hinweise zur Anwendung von Filtern mit Datenbl!ttern finden Sie in Kapitel 2 Daten verwalten dieses Buchs. Filter lassen sich auch f,r solche Formulare definieren, die auf einer Abfrage basieren. Sie kDnnen den Filter dazu einsetzen, um das Dynaset noch weiter einzuschr!nken. Außerdem versetzt Sie ein Filter in die Lage, die in der Abfrage festgelegte Sortierreihenfolge zu !ndern.
Navigationsschaltfl!chen
Datens!tze bearbeiten
Hinweis
Formulare, die auf Abfragen basieren
Filter definieren
Hinweis
Einspaltige Formulare erstellen Der Assistent AutoFormular:Einspaltig erstellt Formulare, die den mit dem Assistenten AutoFormular erstellten Formulare !hnlich sind. Als Beispiel erstellen Sie diesmal jedoch ein Formular, das auf einer Abfrage basiert. Gehen Sie wie folgt vor: 1
Markieren Sie im Datenbankfenster das Register Formulare.
2
Klicken Sie auf die Schaltfl!che Neu, damit Access den Dialog Neues Formular Dffnet.
Einspaltiges Formular
133
Daten auswerten und pr%sentieren
3
Klicken Sie auf den nach unten zeigenden Pfeil des Kombinationsfeldes W7hlen Sie die Tabelle oder Abfrage, und w!hlen Sie die Abfrage Adressen nach Namen sortiert aus der Liste.
4
F,hren Sie einen Doppelklick auf den Eintrag AutoFormular:Einspaltig durch.
Abb. 3.24 Einspaltiges AutoFormular erstellen
Einspaltige Darstellung
Abb. 3.25 Beispiel f r ein einspaltiges AutoFormular
134
Der Assistent AutoFormular:Einspaltig erzeugt ein Formular, das jeweils einen Datensatz im Formular aufnimmt. Dies entspricht der so genannten Einzelsatzdarstellung. Das Erstellen des Formulars l!uft automatisch, d.h. ohne weiteres Zutun des Anwenders. Das einspaltige Formular wird automatisch in der Formularansicht geDffnet.
Formulare erstellen und anwenden
Wenn Sie mit den Navigationsschaltfl!chen in den Daten des Formulars bl!ttern, erkennen Sie, dass die Adressen nach Namen sortiert sind. Die Ursache hierf,r besteht darin, dass Sie das Formular auf der Basis einer Abfrage erstellt haben, die die Sortierung herstellt. Speichern Sie das Formular unter den Namen Adressen nach Namen sortiert - AutoFormular: Einspaltig.
Tabellarische Formulare erstellen Der Assistent AutoFormular: Tabellarisch erstellt Formulare, die mehrere Datens!tze untereinander darstellen. Mit tabellarischen Formularen genießen Sie die Vorteile der ,bersichtlichen Anordnung von Datens!tzen und haben im Unterschied zur Datenblattansicht die MDglichkeit, Schriften und grafische Elemente zu verwenden.
Tabellarische Darstellung
Da tabellarische Formulare mehrere Datenfelder nebeneinander anordnen, sind sie am besten f,r Tabellen oder Abfragen mit wenigen Datenfeldern geeignet. Als Beispiel entwerfen Sie daher ein Formular, das auf der Abfrage Forderungen basiert. Da diese Abfrage nur vier Datenfelder enth!lt, ist sie f,r die tabellarische Darstellung besonders gut geeignet. Gehen Sie wie folgt vor: 1
Markieren Sie im Datenbankfenster das Register Formulare.
2
Markieren Sie die Abfrage Forderungen.
3
W!hlen Sie den Men,befehl Einf1gen > Formular aus der Men,leiste, damit Access den Dialog Neues Formular Dffnet.
4
Da die Abfrage im Datenbankfenster markiert ist, zeigt Access sie automatisch als Datenherkunft f,r das Formular an.
5
F,hren Sie einen Doppelklick auf den Eintrag AutoFormular: Tabellarisch durch, um den Assistenten zu starten.
Abb. 3.26 Beispiel f r ein tabellarisches Formular
135
Daten auswerten und pr%sentieren
Der Assistent erstellt das Formular automatisch und Dffnet es in der Formularansicht. Sie sehen, dass das tabellarische Formular mehrere Datens!tze gleichzeitig auf dem Bildschirm anzeigt.
Die Schw!chen des AutoFormular-Assistenten
Das Formular ist ein gutes Beispiel f,r die Schw!chen der AutoFormular-Assistenten von Access. Obwohl bei einer BildschirmauflDsung von 800x600 Punkten gen,gend Platz vorhanden w!re, schneidet der Assistent einige Texte im Formular ab. Das Formular in Abbildung 3.27, das auf der Basis der Abfrage Forderungen mit Adressen erstellt wurde, macht dies noch etwas deutlicher.
Abb. 3.27 Probleme bei tabellarischen AutoFormularen
Bei diesem Formular werden nicht nur beschriftende Texte, sondern auch die Inhalte einiger Datenfelder unvollst!ndig angezeigt. Ein solches Formular ist daher eigentlich nicht zu gebrauchen. Es ist unter Umst!nden trotzdem sinnvoll, tabellarische Formulare mit dem Assistenten zu erstellen. Sie haben n!mlich die MDglichkeit, den Formularentwurf manuell zu ,berarbeiten. Da der Zeitaufwand f,r die manuelle Pberarbeitung eines automatisch erstellten Formulars geringer ist, als das Formular von Grund auf manuell zu erstellen, haben die Formular-Assistenten von Access trotz der Schw!chen durchaus ihre Berechtigung. Wenn Sie jetzt mehr ,ber die Gestaltung von Formularen in der Entwurfsansicht wissen wollen, dann schlagen Sie in Kapitel 6 Formulare dieses Buchs nach.
Tipp
136
Um den Eindruck einer tabellarischen Darstellung zu erreichen, bedient sich der Assistent AutoFormular: Tabellarisch eines kleinen Tricks. Indem er die Layout-Eigenschaft Standardansicht des Formularobjekts auf Endlosformular setzt, zeigt Access den Detailbereich des Formulars wiederholt an. In Kapitel 6 Formulare dieses Buchs erfahren Sie mehr ,ber Eigenschaften von Formularen und wie Sie diesen Trick in Ihren eigenen Formularen anwenden kDnnen.
Formulare erstellen und anwenden
Formulare im Layout eines Datenblatts erstellen Der Assistent AutoFormular: Datenblatt erstellt Formulare, die wie ein Datenblatt aussehen. Die Vorgehensweise zum Erstellen solcher Formulare ist die gleiche wie bei den anderen AutoFormular-Assistenten. Da Datenbl!tter bereits in Kapitel 2 Daten verwalten ausf,hrlich besprochen wurden, braucht der Assistent AutoFormular: Datenblatt wohl nicht weiter erl!utert zu werden
Darstellung als Datenblatt
Abb. 3.28 Formulare im Stil eines Datenblatts erstellen
Sie kDnnen ,brigens f,r jedes mit einem Assistenten entworfene Formular die Datenblattansicht aktivieren. Klicken Sie dazu auf den nach unten zeigenden Pfeil des Symbols Ansicht, und w!hlen Sie den Eintrag Datenblattansicht aus der Liste. Wenn Access ein Formular nur vor,bergehend im Stil eines Datenblatts darstellen soll, brauchen Sie kein eigenes Formular hierf,r zu erstellen. Klicken Sie einfach auf das Symbol, um zwischen den Formularansichten zu wechseln.
Datenblattansicht
Der Formular-Assistent von Access Mit dem Formular-Assistenten von Access kDnnen Sie das Aussehen eines neuen Formulars st!rker beeinflussen als mit den AutoFormular-Assistenten. Auf der anderen Seite bedeutet dies nat,rlich, dass Sie mehr Parameter einstellen m,ssen. Als ein erstes Beispiel f,r den Einsatz des Formular-Assistenten erstellen Sie ein tabellarisches Formular, das nur einige ausgew!hlte Datenfelder aus der Adressentabelle anzeigt. Gehen Sie wie folgt vor:
137
Daten auswerten und pr%sentieren
1
Klicken Sie auf den Pfeil des Symbols Neues Objekt.
2
W!hlen Sie den Eintrag Formular aus der Liste, damit Access den Dialog Neues Formular Dffnet.
3
F,hren Sie einen Doppelklick auf den Eintrag Formular-Assistent durch.
Abb. 3.29 Datenherkunft f r ein Formular
Datenherkunft
Felder ausw!hlen
138
Access startet den Formular-Assistenten, auf dessen erster Dialogseite Sie gleich in den Genuss eines wichtigen Vorteils gegen,ber dem AutoFormular-Assistenten kommen. Der Dialog bietet n!mlich die MDglichkeit, die im Formular darzustellenden Datenfelder aus mehreren Tabellen und Abfragen zusammenzustellen. Dies ist auch der Grund daf,r, dass Sie die Datenherkunft vor dem Aufruf des Formular-Assistenten im Dialog Neues Formular nicht unbedingt ausw!hlen m,ssen. Da das neue Formular auf der Adressentabelle basieren soll, w!hlen Sie den Eintrag Tabelle: Adressen aus dem Kombinationsfeld Tabellen/Abfragen. Pbernehmen Sie dann die Felder Anrede, Name, Straße, PLZ und Ort und Telefon in die Liste Ausgew7hlte Felder. Die Pbernahme der Felder erfolgt mit einem Doppelklick auf den Feldnamen oder das Markieren des Feldes und einem Klick auf die Schaltfl!che, die ein GrDßerzeichen (>) symbolisiert. Best!tigen Sie Ihre Einstellung mit einem Klick auf die Schaltfl!che Weiter. Die Schaltfl!che, die ein doppeltes GrDßer-Zeichen (>>) symbolisiert, bewirkt die Pbernahme aller Felder.
Formulare erstellen und anwenden
Die Liste Ausgew7hlte Felder bestimmt nicht nur, welche Felder sp!ter im Formular angezeigt werden, sondern auch deren Reihenfolge. Wenn Sie die Feldreihenfolge !ndern wollen, dann m,ssen Sie die Felder zun!chst aus der rechten Liste entfernen. Klicken Sie auf die Schaltfl!che, die ein einfaches Kleiner-Zeichen (<) symbolisiert, um ein einzelnes Feld aus der Liste zu entfernen. Die Schaltfl!che, die ein doppeltes Kleiner-Zeichen (<<) symbolisiert, entfernt alle Datenfelder aus der Liste. Pbernehmen Sie die Felder dann in der Reihenfolge in die Liste, in der sie sp!ter angezeigt werden sollen. Der Ablauf der folgenden Dialogseiten des Formular-Assistenten h!ngt von den ausgew!hlten Datenfeldern ab. Die folgenden Abschnitte beschreiben den Ablauf f,r den Fall, dass Sie nur aus einer Tabelle Datenfelder ausw!hlen. Weiter unten in diesem Kapitel finden Sie die Beschreibung der Dialoge f,r die Zusammenstellung von Datenfeldern aus mehreren Tabellen.
Anordnung der Datenfelder festlegen
Hinweis
Abb. 3.30 Layout ausw!hlen
Mit der zweiten Dialogseite des Formular-Assistenten w!hlen Sie das Layout aus, in dem Ihr Formular sp!ter angezeigt werden soll. Dieser Dialog verdeutlicht, dass Sie mit dem Formular-Assistenten die gleichen Formulare erstellen kDnnen, wie mit den verschiedenen AutoFormular-Assistenten. Mit den AutoFormular-Assistenten kommen Sie zwar mit weniger Mausklicks zum Ziel, sie bieten daf,r aber auch weniger Flexibilit!t. Da die tabellarische Darstellung f,r die Adressenliste am besten geeignet ist, markieren Sie die entsprechende Option, und klicken Sie auf die Schaltfl!che Weiter. Im unteren Teil jedes Dialogs des Formular-Assistenten finden Sie Schaltfl!chen, mit denen Sie den Assistenten steuern kDnnen. Die Schaltfl!che Weiter best!tigt jeweils die Einstellungen des aktuellen Dialogs und wechselt zum n!chsten.
Tabellarische Darstellung
139
Daten auswerten und pr%sentieren
Mit Abbrechen kDnnen Sie den Assistenten jederzeit vorzeitig beenden. Access kehrt dann zur Anzeige des Datenbankfensters zur,ck. Mit der Schaltfl!che Zur1ck kDnnen Sie zum vorhergehenden Dialog zur,ckkehren und die dort vorgenommenen Einstellungen gegebenenfalls korrigieren. Sie kDnnen das Erstellen eines Formulars mit dem Assistenten beschleunigen, indem Sie direkt nach der Auswahl einer Datenherkunft auf die Schaltfl!che Fertigstellen klicken. Der Assistent erstellt das Formular dann im einspaltigen Layout und mit dem Stil, den Sie zuletzt ausgew!hlt haben. Als Formulartitel und damit auch als Formularname wird dann der Name der Herkunftstabelle und eine fortlaufende Nummer eingesetzt (z.B. Adressen1, Adressen2 usw.).
Abb. 3.31 Stil ausw!hlen
Stil ausw!hlen
Hinweis
140
Auf der dritten Dialogseite fordert Sie der Formular-Assistent zur Auswahl eines Stils f,r Ihr Formular auf. Der Dialog enth!lt eine Auswahlliste von vordefinierten Formularstilen. Wenn Sie einen Eintrag in der Liste anklicken, zeigt der linke Teil des Dialogs eine Vorschau auf das sp!tere Aussehen des Formulars an. F,r das Beispiel markieren Sie den Formularstil Standard, und klicken Sie auf die Schaltfl!che Weiter. In Kapitel 6 Formulare dieses Buchs erfahren Sie, wie Sie mit Access Ihre eigenen Formularstile erstellen kDnnen. Wenn Sie diese speichern, dann kDnnen Sie sie auch im Formular-Assistenten verwenden.
Formulare erstellen und anwenden
Abb. 3.32 Formular fertigstellen
Auf die Auswahl des Formularstils folgt auch schon die letzte Dialogseite des Formular-Assistenten. Geben Sie hier den Titel ein, der sp!ter als Pberschrift Ihres Formulars angezeigt werden soll. Beachten Sie, dass der Assistent den Titel gleichzeitig als Namen verwendet, unter dem das Formular in der Datenbank gespeichert wird. Wenn Sie hier also einen Namen eingeben, unter dem bereits ein Formular in der Datenbank gespeichert ist, fragt Sie der Assistent, ober er das bestehende Formular ,berschreiben soll. Klicken Sie hier im Zweifelsfall auf die Schaltfl!che Nein, und geben Sie einen anderen Titel ein.
Formulartitel und -name eingeben
Mit einem Klick auf die Schaltfl!che Fertigstellen beginnt der Assistent seine Arbeit. Kurze Zeit sp!ter wird das neue Formular in der Formularansicht geDffnet. Das mit dem Assistenten erstellte Formular sieht recht gut aus, enth!lt jedoch einige Schwachstellen. Wie bei den mit den AutoFormular-Assistenten erstellten Formularen wird auch hier die verf,gbare Bildschirmbreite nicht ganz ausgenutzt. Das f,hrt dazu, dass einige Straßen, Ortsnamen und die meisten Telefonnummern nicht vollst!ndig angezeigt werden. Um dieses Problem zu beheben, m,ssen Sie das Formular manuell ,berarbeiten. Wenn Sie das jetzt erledigen wollen, dann schlagen Sie in Kapitel 6 Formulare dieses Buchs nach. Sie brauchen das Formular nicht zu speichern, da der Assistent dies bereits erledigt hat. Wenn Sie das Formular sp!ter erneut Dffnen wollen, finden Sie es im Register Formulare des Datenbankfensters unter dem Namen Adressenliste. Access sortiert die Daten standardm!ßig in der Reihenfolge des Prim!rschl,ssels Adresse-Nr der Adressentabelle. Wenn Sie die Sortierreihenfolge !ndern wollen, dann klicken Sie mit der rechten Maustaste auf ein Datenfeld. W!hlen Sie dann einen der Befehle Aufsteigend oder Absteigend aus dem Kontextmen,.
Tipp 141
Daten auswerten und pr%sentieren
Abb. 3.33 Adressenliste in der Formularansicht
Formulare f/r Daten aus mehreren Tabellen erstellen Adressen und Projekte
Formulare und Berichte
Tabelle oder Abfrage als Datenherkunft verwenden
142
Die Projektdatenbank enth!lt eine Adressen- und eine Projektetabelle, f,r die Sie in Kapitel 2 Daten verwalten dieses Buchs eine relationale Beziehung erstellt haben. Da es sich um eine 1:n-Beziehung handelt, kDnnen jeder Adresse mehrere Projekte zugeordnet werden. Umgekehrt l!sst sich jedes Projekt eindeutig einer Adresse zuordnen. Die Adressentabelle ist demnach die Master- und die Projektetabelle die Detailtabelle. F,r eine optimale Darstellung dieser Datenkonstellation bedarf es der Verwendung von Formularen und Berichten. Nur die GestaltungsmDglichkeiten dieser beiden Objekttypen erlauben es, die Information aus beiden Dateien ,bersichtlich anzuordnen. In den folgenden Abschnitten lernen Sie die drei wichtigsten Varianten zur Darstellung von Daten aus 1:n-verkn,pften Tabellen am Beispiel der Adressen- und der Projektetabelle kennen. Wie Sie in den folgenden Abschnitten sehen werden, ist der Formular-Assistent von Access ein sehr leistungsf!higes Hilfsmittel, um schnell zu ansprechenden Formularen zu kommen. Eine wirkliche Arbeitserleichterung besteht darin, dass Sie die im Formular darzustellenden Datenfelder aus mehreren Tabellen aussuchen kDnnen. Anhand der in der Datenbank gespeicherten Beziehungen entwirft der Assistent dann automatisch eine Abfrage, die die Daten aus mehreren Tabellen zusammen-
Formulare fr Daten aus mehreren Tabellen erstellen
f,hrt und bindet diese als SQL-SELECT-Anweisung in die Datenherkunft des Formulars ein. Das Speichern eines eigenen Abfrageobjekts in der Datenbank bleibt dem Anwender damit oft erspart. Die wahrscheinlich h!ufigste Ausnahme von dieser Regel ist der Fall, dass f,r einige Datenfelder einer Tabelle Berechnungen durchgef,hrt werden m,ssen. Wenn Sie beispielsweise aus dem Nettobetrag und der Mehrwertsteuer eines Projekts den Bruttobetrag berechnen wollen und dieser im Formular angezeigt werden soll, dann benDtigen Sie doch eine Abfrage. Das ist aber insofern kein Problem, als Sie im Formular-Assistenten auch Abfragen als Datenherkunft verwenden kDnnen. Weitere Hinweise zur Gestaltung von Abfragen finden Sie in Kapitel 5 Abfragen dieses Buchs.
Darstellung einer 1:n-Beziehung in einem Formular Dabei sind zwei Varianten denkbar. Die erste Variante bildet eine Adresse in der Einzelsatzdarstellung ab. Unterhalb der Adresse befindet sich dann eine Tabelle mit den zugeordneten Projekten (siehe Abbildung 3.34). Diese Variante kommt Ihnen wahrscheinlich bekannt vor. Bereits zu Beginn dieses Kapitels haben Sie mithilfe des AutoFormular-Assistenten ein Formular aus zwei verkn,pften Tabellen erstellt. Dabei hatten Sie allerdings keine MDglichkeit, die Auswahl der verwendeten Eintr!ge zu beeinflussen. Bei der Arbeit mit dem FormularAssistenten ist zwar weit mehr Selbstst!ndigkeit gefragt, daf,r kDnnen Sie aber entscheiden, welche Daten in das Formular aufgenommen werden.
Abb. 3.34 Bei dieser Darstellung als 1:n-Beziehung stehen die Adressen im Vordergrund
Da bei dieser Darstellung die Adressen im Vordergrund stehen, handelt es sich um eine Darstellung der 1:n-Beziehung aus der Sicht der Adressentabelle. Um ein solches Formular zu erstellen, gehen Sie wie folgt vor:
143
Daten auswerten und pr%sentieren
1
Klicken Sie auf den Pfeil des Symbols Neues Objekt.
2
W!hlen Sie den Eintrag Formular aus der Liste, damit Access den Dialog Neues Formular Dffnet.
3
F,hren Sie einen Doppelklick auf den Eintrag Formular-Assistent durch.
Abb. 3.35 Felder aus zwei Tabellen ausw!hlen
Felder der Adressentabelle
Felder der Projektetabelle
Darstellung ausw!hlen
Auf der ersten Dialogseite des Formular-Assistenten w!hlen Sie nun zun!chst den Eintrag Tabelle: Adressen aus dem Kombinationsfeld Tabellen/Abfragen und ,bernehmen Sie die Felder Adresse-Nr, Anrede, Name, Straße und PLZ und Ort in die Liste der ausgew!hlten Felder. Nachdem das erledigt ist, w!hlen Sie den Eintrag Tabelle: Projekte aus dem Kombinationsfeld Tabellen/Abfragen. Pbernehmen Sie hier beispielsweise die Felder Projekt-Nr, Titel, Ist Nettobetrag und MWSt in die Liste. Da Sie diesmal Felder aus zwei verschiedenen Tabellen ausgew!hlt haben, Dffnet der Assistent einen Dialog, mit dem Sie eine Darstellung f,r die relational verkn,pften Tabellen ausw!hlen kDnnen. Da Sie die Anordnung nach Adressen und in einem Formular w,nschen, kDnnen Sie die Vorgaben des Assistenten unver!ndert lassen. Sie kDnnen nun auf die Schaltfl!che Weiter klicken, um weitere Einstellungen vorzunehmen. Alternativ kDnnen Sie aber auch auf die Schaltfl!che Fertig stellen klicken, um das Erstellen des Formulars direkt einzuleiten. Nach kurzer Zeit Dffnet Access dann das Formular aus Abbildung 3.34.
144
Formulare fr Daten aus mehreren Tabellen erstellen
Abb. 3.36 Darstellung ausw!hlen
Wenn das Formular aus Abbildung 3.34 in der Formularansicht geDffnet ist, kDnnen Sie es zur Bearbeitung von Adressen und Projekten verwenden. Die Vorgehensweise zum Einf,gen, 0ndern und LDschen von Datens!tzen ist die gleiche wie bei Datenbl!ttern und bei anderen Formularen. Sie markieren zun!chst einen Datensatz und w!hlen dann einen der Befehle aus dem Bearbeiten- oder dem Kontextmen,. Das Verst!ndnis des Formulars f!llt leichter, wenn Sie wissen, dass es eigentlich aus zwei Formularen besteht. Das Hauptformular zeigt die Daten aus der Adressentabelle an. In das Hauptformular ist ein tabellarisch gestaltetes Unterformular eingebettet, das die Daten aus der Projektetabelle anzeigt.
Formular f r Adressen und Projekte verwenden
Haupt- und Unterformular
Auch wenn dies in der Formularansicht nicht zu erkennen ist, ist das Unterformular ein Objekt der Datenbank und l!sst sich daher auch einzeln ,ber das Datenbankfenster Dffnen. Den Namen des Haupt- und des Unterformulars kDnnen Sie auf der letzten Dialogseite des Formular-Assistenten festlegen. Falls dies nicht geschehen ist, hat Access selbst die Namen vergeben (z.B. Adressen1 und Projekte Unterformular). Als Folge der Kombination von Haupt- und Unterformular zeigt Access beispielsweise zwei Navigationsbereiche an. Wenn Sie die Navigationsschaltfl!chen des Hauptformulars anklicken, ver!ndern Sie den aktuellen Datensatz der Adressentabelle. Klicken Sie jedoch auf die Navigationsschaltfl!chen des Unterformulars, wirkt sich das auf die Projektetabelle aus. Das Gleiche gilt nat,rlich f,r das LDschen von Datens!tzen. Wenn Sie ein Projekt lDschen wollen, dann klicken Sie auf die Indikatorspalte der Projektetabelle. Markieren Sie einen oder mehrere Datens!tze und w!hlen den Befehl Ausschneiden oder Datensatz L4schen aus dem Men, Bearbeiten oder dem Kontextmen,.
Projekte lschen
145
Daten auswerten und pr%sentieren
Abb. 3.37 Lschen eines Projekts aus dem Unterformular
Adressen lschen
Adresse anlegen
Projekt anlegen
Wollen Sie eine Adresse lDschen, dann m,ssen Sie vorher zun!chst alle zugeordneten Projekte lDschen. Das sind alle Projekte, die Access in der Projektetabelle des Formulars anzeigt. Das versehentliche LDschen von Adressen ist ja bekanntlich eine der Aktionen, die Sie durch die Definition der referenziellen Integrit!t verhindern (siehe Kapitel 2 Daten verwalten). Sollten Sie trotzdem versuchen, eine Adresse zu lDschen, der noch Projekte zugeordnet sind, zeigt Access eine Fehlermeldung an. Das Formular erlaubt die Neuanlage und Bearbeitung von Adressen und Projekten. Positionieren Sie den Datensatzzeiger einfach auf den leeren Datensatz, wenn Sie eine neue Adresse anlegen wollen. Vor der Anlage eines neuen Projekts positionieren Sie zun!chst auf die Adresse, der das Projekt zugeordnet werden soll. Anschließend klicken Sie auf ein Feld des neuen Datensatzes der Projektetabelle und beginnen mit der Dateneingabe. Beachten Sie jedoch, dass das Unterformular nur einen Teil der Projektdaten anzeigt. Sie kDnnen daher nicht alle Datenfelder der Projektetabelle f,llen. Gerade bei der Anlage neuer Projekte werden Sie wahrscheinlich das Verkn,pfungsfeld Adresse-Nr vermissen. Solange Sie mit dem Formular arbeiten, brauchen Sie sich um dieses Feld nicht zu k,mmern. Access f,llt es automatisch mit der Adressennummer, die es im Hauptformular darstellt. Das bedeutet, dass die Zuordnung der Projekte zu der aktuellen Adresse automatisch erfolgt.
Darstellung einer 1:n-Beziehung in zwei synchronisierten Formularen 1:n-Beziehung darstellen
146
Statt ,ber die Kombination eines Haupt- und Unterformulars kann die Darstellung einer 1:n-Beziehung auch wie in Abbildung 3.38 in zwei synchronisierten Formularen erfolgen.
Formulare fr Daten aus mehreren Tabellen erstellen
Bei der Darstellung in zwei Formularen zeigt das erste Formular nur die Adreß- und das zweite Formular nur die Projektdaten an. Da die beiden Formulare synchronisiert sind, zeigt das Projektformular nur die Projekte an, die der jeweils aktuellen Adresse zugeordnet sind. Unter dem Synchronisieren von Formularen versteht man den Abgleich der Daten im Projektformular auf den aktuellen Datensatz im Adressenformular. Man spricht in diesem Zusammenhang auch von verkn,pften Formularen.
Abb. 3.38 Darstellung einer 1:n-Beziehung ber synchronisierte Formulare
Der Entwurf von synchronisierten Formularen erfolgt ebenfalls ,ber den FormularAssistenten von Access. Zum Start des Assistenten gehen Sie genauso vor wie oben beschrieben. W!hlen Sie auch diesmal die gew,nschten Felder aus der Adressenund der Projektetabelle aus. Erst auf der zweiten Dialogseite des Formular-Assistenten gibt es einen Unterschied in der Vorgehensweise.
Formulare synchronisieren
Da wieder die Adressen im Vordergrund stehen, lassen Sie die Option nach Adressen markiert. Markieren Sie aber diesmal die Option Verkn1pfte Formulare, damit der Assistent zwei synchronisierte Formulare erstellt. Klicken Sie anschließend auf die Schaltfl!che Fertig stellen, um das Erstellen des Formulars einzuleiten.
Darstellung ausw!hlen
Nach kurzer Zeit Dffnet Access ein einspaltiges Formular zur Eingabe und Bearbeitung von Adressdaten in der Formularansicht. Die Besonderheit dieses Formulars ist eine Umschaltfl!che, ,ber die Sie das verkn,pfte Projektformular wechselweise ein- und ausblenden kDnnen.
Daten eingeben und bearbeiten
147
Daten auswerten und pr%sentieren
Abb. 3.39 1:n-Beziehung in zwei verkn pften Formularen darstellen
Das Projektformular ist ein eigenst!ndiges Formular mit tabellarischer Anordnung von Datens!tzen. Da es synchronisiert ist, zeigt es aber nur die Projekte an, die mit dem aktuellen Adressdatensatz relational verkn,pft sind. Sie kDnnen das leicht nachvollziehen, indem Sie in den Datens!tzen des Adressenformulars bl!ttern und beobachten, wie sich die Anzeige des Projektformulars !ndert. F,r die Bearbeitung von Adressen und Projekten gelten ansonsten die gleichen Regeln wie bei der Darstellung als Haupt- und Unterformular. Das Synchronisieren von Formularen ohne Assistent ist keine einfache Sache und erfordert die Programmierung mit Makros und VBA. Hinweis
Darstellung zweier relational verknpfter Tabellen als n:1-Beziehung Projekte und Adressen
n:1-Beziehung darstellen
148
Bei der dritten Variante zur Darstellung einer 1:n-Beziehung wird die Beziehung aus der entgegengesetzten Richtung betrachtet. Da hier die Projekte im Vordergrund stehen, spricht man auch von der Darstellung als n:1-Beziehung. Bei der Darstellung als n:1-Beziehung wird zu jedem Projekt die verkn,pfte Adressinformation angezeigt. Formulare zur Darstellung einer n:1-Beziehung kDnnen Sie ebenfalls mit dem Formular-Assistenten erstellen. Die Vorgehensweise ist zun!chst die gleiche wie beim Erstellen von Formularen zur Darstellung als 1:n-Beziehung.
Formulare fr Daten aus mehreren Tabellen erstellen
Abb. 3.40 Erstellen eines Formulars, bei dem die Projekte im Vordergrund stehen
Sie sollten jedoch zuerst die gew,nschten Felder aus der Projektetabelle und erst danach die Felder aus der Adressentabelle ausw!hlen. So erkennt der Formular-Assistent automatisch, dass die Projektetabelle im Vordergrund der Betrachtung stehen soll, und markiert auf der zweiten Dialogseite automatisch die Option nach Projekte. Auf der dritten Dialogseite w!hlen Sie eine beliebige Darstellung (einspaltig, tabellarisch oder als Datenblatt). Klicken Sie auf die Schaltfl!che Fertig stellen, damit der Assistent das Formular erstellt und Access es in der Formularansicht Dffnet. Sie kDnnen das Formular sp!ter wie gewohnt zur Datenanzeige und -bearbeitung nutzen.
Abb. 3.41 Bei dieser Darstellung als n:1-Beziehung stehen die Projektdaten im Vordergrund
149
Daten auswerten und pr%sentieren
Datenblatt einer Abfrage
Als weitere Alternative zur Darstellung von relational verkn,pften Tabellen als n:1-Beziehung haben Sie zu Beginn dieses Kapitels die Abfrage Projekte und Adressen erstellt. Das Datenblatt dieser Abfrage zeigt die Daten aus beiden Tabellen ebenfalls aus der Sicht der Projektetabelle an. Statt den Formular-Assistenten zu verwenden, kDnnen Sie auch ein tabellarisches AutoFormular auf der Basis dieser Abfrage erstellen, um die n:1-Beziehung darzustellen. Sie erhalten damit prinzipiell das gleiche Ergebnis. Sie kennen jetzt die Vorgehensweise zum Erstellen von Formularen, die Daten aus einer oder mehreren Tabellen anzeigen. Mithilfe des Formular-Assistenten haben Sie schon einige recht leistungsf!hige Formulare erstellt. Sie haben dabei aber auch die Schwachstellen solcher Formulare kennen gelernt.
Ausblick
Wenn Sie sich jetzt direkt weiter mit dem Formularentwurf auseinandersetzen wollen, dann schlagen Sie in Kapitel 6 Formulare dieses Buchs nach. Um allerdings Ihren Rundgang durch Access zu beenden, sollten Sie hier weiterlesen. In den folgenden Abschnitten lernen Sie den Berichts-Assistenten von Access und Berichte zum Ausdruck Ihrer Daten kennen. Danach kDnnen Sie mit den Kapitel 4 Tabellen und Kapitel 5 Abfragen. Ihr Wissen ,ber den Entwurf von Tabellen und Abfragen zun!chst vervollst!ndigen, bevor Sie sich mit den Einzelheiten des Formularentwurfs auseinandersetzen.
Datenausgabe mit Berichten Berichte sind das flexibelste und leistungsf!higste Mittel von Access, um Daten auf Papier auszugeben. Im Unterschied zu Formularen eignen sich Berichte nicht zur Datenbearbeitung. In Berichten verf,gen Sie aber ,ber zus!tzliche Funktionen f,r den Ausdruck von Daten (z.B. Gruppierungen und mehrspaltige Anordnung). Die 0hnlichkeiten zwischen Berichten und Formularen sind verbl,ffend. Als Erstes f!llt auf, dass Access Sie auch beim Entwurf von Berichten mit einer Reihe von Berichts-Assistenten unterst,tzt. Auch die Vorgehensweisen zum manuellen Entwurf von Berichten sind mit denen zum Entwurf von Formularen weitgehend identisch. Weitere Hinweise zum manuellen Entwurf von Berichten finden Sie in Kapitel 7 Berichte dieses Buchs. Die folgenden Abschnitte erl!utern den Entwurf einiger einfacher Berichte anhand des Beispiels der Adressen- und Projektetabelle.
Hinweis
150
Die Assistenten AutoBericht, AutoBericht: Einspaltig und AutoBericht: Tabellarisch entsprechen den jeweils gleichnamigen Formular-Assistenten und brauchen daher nicht mehr detailliert besprochen zu werden. Sie finden die Beschreibung der korrespondierenden Formular-Assistenten weiter oben in diesem Kapitel. Die folgenden Abschnitte beschreiben lediglich die Besonderheiten, die beim Berichtsentwurf zu ber,cksichtigen sind. Außerdem finden Sie weiter unten in diesem Abschnitt die Beschreibung des Etiketten-Assistenten.
Datenausgabe mit Berichten
Berichte mit dem Berichts-Assistenten erstellen In diesem Abschnitt entwerfen Sie mit dem Berichts-Assistenten einen tabellarischen Bericht, mit dem Sie eine Telefonliste ausdrucken kDnnen. Da Sie die Auswahl der gew,nschten Datenfelder und einer Sortierung mit dem Berichts-Assistenten vornehmen kDnnen, benDtigen Sie hierf,r keine Abfrage. Gehen Sie wie folgt vor: 1
Gehen Sie im Datenbankfenster auf das Register Berichte.
2
Klicken Sie auf die Schaltfl!che Neu, damit Access den Dialog Neuer Bericht Dffnet.
3
F,hren Sie einen Doppelklick auf den Eintrag Berichts-Assistent durch.
Telefonliste drucken
Abb. 3.42 Datenfelder ausw!hlen
Der erste Dialog des Berichts-Assistenten sieht genauso aus wie der erste Dialog des Formular-Assistenten. Auch hier kDnnen Sie die Datenfelder f,r einen neuen Bericht aus einer oder mehreren Tabellen und Abfragen zusammenstellen. Der Berichts-Assistent erstellt die Abfrage, die die Daten zusammenf,gt, automatisch im Hintergrund und bindet sie als Datenherkunft f,r den neuen Bericht ein. Nachdem Sie die Felder f,r die Telefonliste ausgew!hlt haben, klicken Sie auf die Schaltfl!che Weiter. Auf der zweiten Dialogseite des Berichts-Assistenten kDnnen Sie die Daten f,r den Bericht gruppieren. Da die Telefonliste nicht gruppiert werden muss, klicken Sie hier direkt auf die Schaltfl!che Weiter.
151
Daten auswerten und pr%sentieren
Tipp
Wenn Sie sp!ter viele Adressen in einer Telefonliste ausdrucken wollen, kann es unter Umst!nden sinnvoll sein, einen Bericht mehrspaltig und nach Anfangsbuchstaben gruppiert auszudrucken. Sie erhalten so eine !hnliche Darstellung wie in den Telefonb,chern der Deutschen Post. Weitere Hinweise zum Erstellen von gruppierten und mehrspaltigen Berichten finden Sie in Kapitel 7 Berichte dieses Buchs.
Abb. 3.43 Bericht sortieren
Bericht sortieren
Auf der folgenden Dialogseite des Berichts-Assistenten kDnnen Sie bis zu vier Datenfelder ausw!hlen, nach denen die Berichtdaten sortiert werden. W!hlen Sie hier den Eintrag Name aus dem Kombinationsfeld und klicken Sie auf die Schaltfl!che Weiter. Alternativ kDnnen Sie die Berichtsdaten auch nach dem Feld PLZ und Ort sortieren lassen, indem Sie den Feldnamen aus dem ersten Kombinationsfeld ausw!hlen. Da mehrere Adressen aus demselben Postleitzahlengebiet kommen kDnnen, sollten Sie dann beispielsweise das Feld Name als zweites Sortierkriterium ausw!hlen. Die Berichtsdaten werden dann sp!ter zuerst nach der Postleitzahl sortiert. Bei gleichen Postleitzahlen entscheidet dann der Name ,ber die Reihenfolge der Datens!tze.
Layout ausw!hlen
152
Mit der folgenden Dialogseite des Berichts-Assistenten w!hlen Sie ein Layout zur Darstellung Ihres Berichts aus. Markieren Sie hier die Option Tabellarisch. Außerdem sollten Sie darauf achten, dass das Kontrollk!stchen Feldbreite so anpassen, dass alle Felder auf eine Seite passen angekreuzt ist. So stellen Sie sicher, dass sp!ter alle Datenfelder nebeneinander auf einem Blatt Papier gedruckt werden.
Datenausgabe mit Berichten
44 . 3. bbA Layout ausw!hlen
Mit den Optionen der Gruppe Ausrichtung bestimmen Sie, ob das Papier im Hochoder im Querformat ausgedruckt werden soll. Da f,r die Adressenliste das Querformat geeigneter ist, markieren Sie diese Option und klicken Sie auf die Schaltfl!che Weiter.
Abb. 3.45 Berichtsstil einstellen
153
Daten auswerten und pr%sentieren
Berichtsstil erstellen
Es folgt die Dialogseite, ,ber die Sie den Berichtsstil einstellen. Probieren Sie die Optionen nacheinander aus und beobachten Sie, wie sich die Anzeige im linken Teil des Dialogs !ndert. Entscheiden Sie sich dann f,r Ihren bevorzugten Berichtsstil. In Kapitel 6 Formulare und Kapitel 7 Berichte dieses Buchs erfahren Sie, wie Sie mit Access Ihre eigenen Formular- und Berichtsstile erstellen kDnnen.
Hinweis Wenn Sie diese speichern, dann kDnnen Sie sie auch im Bericht-Assistenten verwenden.
Abb. 3.46 Berichtstitel eingeben
Mit einem Mausklick auf die Schaltfl!che Weiter gelangen Sie auch schon zur letzten Dialogseite des Berichts, auf der Sie zur Eingabe eines Berichtstitels aufgefordert werden. Access gibt den Namen der zugrunde liegenden Tabelle oder Abfrage und eine fortlaufende Nummer vor. 0ndern Sie die Vorgabe in den eindeutigeren Titel Telefonliste. Beachten Sie bei der Vergabe von Berichtstiteln, dass Access den Titel zum Speichern des Berichts verwendet. Berichtstitel m,ssen daher den Namenskonventionen von Access entsprechen. Starten Sie den Entwurf des Berichts mit einem Klick auf die Schaltfl!che Fertig stellen.
Seitenansicht
154
Der Assistent benDtigt einen Augenblick, um den Bericht fertigzustellen. Access Dffnet ihn dann in der Seitenansicht. Die Seitenansicht zeigt den Bericht in der gleichen Form an, wie er auch ausgedruckt wird. Im unteren Teil des Seitenansichtsfensters finden Sie Navigationsschaltfl!chen, mit denen Sie in den Seiten des Berichts bl!ttern kDnnen. Tabelle 3.1 beschreibt die Symbolleiste in der Seitenansicht.
Datenausgabe mit Berichten
Abb. 3.47 Die Seitenansicht der Telefonliste
Die Symbolleiste in der Seitenansicht
Symbol
Bedeutung Wechselt in die Entwurfsansicht Druckt den Bericht Wechselt zwischen der vergrDßerten und verkleinerten Anzeige (Zoom) Zeigt eine Druckseite auf dem Bildschirm an Zeigt zwei nebeneinander liegende Druckseiten auf dem Bildschirm an Zeigt eine beliebige Zahl von nebeneinanderliegenden Druckseiten auf dem Bildschirm an Ver!ndert den Prozentsatz, um den die Anzeige vergrDßert oder verkleinert wird Schließt die Seitenansicht Gibt den Bericht an MS-Excel oder an MS-Word aus Aktiviert das Datenbankfenster
155
Daten auswerten und pr%sentieren
Die Symbolleiste in der Seitenansicht (Forts.)
Symbol
Bedeutung Entwirft ein neues Datenbankobjekt Ruft den Office-Assistenten auf Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 3.1
Bericht drucken
Mit einem Klick auf das Drucken-Symbol beginnt Access direkt mit dem Ausdruck des Berichts. Wenn Sie vorher den Druckbereich oder andere Druckoptionen einstellen wollen, m,ssen Sie stattdessen den Befehl Datei > Drucken aus der Men,leiste w!hlen. Jetzt beginnt der Ausdruck erst, wenn Sie auf die Schaltfl!che OK klicken.
Abb. 3.48 Bericht drucken
Einzelne Seiten drucken
156
Sie kDnnen entweder den gesamten Bericht oder nur bestimmte Seitenzahlen drucken. Wenn Sie nur einzelne Seiten drucken wollen, dann tragen Sie die Seitenzahlen in die daf,r vorgesehenen Eingabefelder ein. W!hlen Sie einen Drucker aus dem gleichnamigen Kombinationsfeld und tragen Sie die Anzahl der zu druckenden Exemplare ein.
Datenausgabe mit Berichten
Durch das Ankreuzen des Kontrollk!stchens Druckausgabe in Datei umleiten kDnnen Sie den Ausdruck in eine Datei umleiten. Access fragt dann vor dem Ausdruck nach einem Dateinamen. Geben Sie das Laufwerk, den Pfad und den Namen der Datei an. Der Ausdruck in Dateien erfolgt mit allen Formatierungen des Druckertreibers, so dass Sie die Datei sp!ter nur an den Drucker zu senden brauchen. Ein Klick auf die Schaltfl!che Eigenschaften Dffnet den gleichnamigen Dialog. Der Aufbau des Dialogs ist weitgehend vom Typ Ihres Druckers abh!ngig. Abbildung 3.49 zeigt ein Beispiel f,r den Drucker HP LaserJet III P von Hewlett Packard.
In Datei drucken
Drucker einrichten
Abb. 3.49 Eigenschaften eines Druckers
Pber die Symbole im oberen Teil des Dialogs stellen Sie die GrDße des Papiers ein, auf das Sie drucken wollen. Einige der mDglichen Einstellungen sind A4 und verschiedene UmschlaggrDßen. Als mDgliche Ausrichtungen stehen Ihnen das Hochformat und das Querformat zur Verf,gung. Im Hochformat wird beispielsweise ein DIN-A4-Blatt in der Breite von 21 und der HDhe von 29,7 Zentimetern bedruckt. Im Querformat betr!gt die Breite des DIN-A4-Blatts 29,7 und die HDhe 21 Zentimeter. Weitere Eigenschaften kDnnen Sie ,ber die Register im oberen Teil des Dialogs einsehen. Da diese in der Regel stark zwischen den Druckertypen variieren, schlagen Sie deren Dokumentation am besten im Handbuch Ihres Druckers nach.
Papiergrße
Papierausrichtung
Weitere Eigenschaften
157
Daten auswerten und pr%sentieren
Seite einrichten
F,r den Ausdruck von Berichten sind die Einstellungen des Dialogs Seite einrichten viel interessanter. Sie Dffnen diesen Dialog ,ber den Befehl Datei > Seite einrichten oder einen Klick auf die Schaltfl!che Einrichten im Dialog Drucker. Im Unterschied zum Dialog Seite einrichten, den Sie ,ber die Schaltfl!che im Drucken-Dialog erreichen, kDnnen Sie ,ber den Men,befehl zus!tzlich noch die Einstellungen der Seiten bearbeiten.
Abb. 3.50 Der Dialog Seite einrichten ber den Men befehl Datei > Seite einrichten
Seitenr!nder
Nur Daten
Im linken Teil des Dialogs finden Sie einige Eingabefelder, mit denen Sie Seitenr!nder definieren kDnnen. In Abbildung 3.50 erkennen Sie, dass Access die Eingabe der Seitenr!nder in der Einheit Millimeter erwartet. Kreuzen Sie das Kontrollk!stchen Nur Daten drucken an, wenn Access keine grafischen Elemente wie beispielsweise Linien, Rechtecke und Bilder drucken soll. Wenn Sie den Dialog ,ber den Befehl Datei > Seite einrichten aufgerufen haben, kDnnen Sie außerdem die Registerseite Seite ausw!hlen. Im Register Seite kDnnen Sie inhaltlich die gleichen Einstellungen vornehmen wie in den Druckereigenschaften. Nur wirken sich die Einstellungen hier nicht auf die Eigenschaften des Druckers, sondern nur auf den aktuellen Bericht aus. Das Gleiche gilt f,r die Einstellungen im Register Spalten. Da diese Einstellungen in erster Linie f,r mehrspaltige Berichte interessant sind, werden sie in diesem Zusammenhang in Kapitel 7 Berichte dieses Buchs beprochen.
158
Datenausgabe mit Berichten
Access speichert die Einstellungen des Dialogs Seite einrichten mit dem Bericht ab. Die Einstellungen kDnnen daher zwischen verschiedenen Berichten variieren. Das hat den Vorteil, dass sich beispielsweise die Papierausrichtung und die Seitenr!nder f,r jeden Bericht individuell einstellen lassen. Access zeigt in der Seitenansicht standardm!ßig eine vollst!ndige Druckseite an. Diese Darstellung vermittelt einen guten Pberblick, w!hrend Einzelheiten jedoch verloren gehen. Wenn Sie mehr Details erkennen wollen, dann klicken Sie auf das Zoom-Symbol. Access zeigt dann einen vergrDßerten Ausschnitt der Seitenansicht an. Mit weiteren Schaltfl!chen der Symbolleiste (siehe Tabelle 3.1) kDnnen Sie auch zwei bzw. mehrere Druckseiten gleichzeitig darstellen oder die Anzeige stufenlos zoomen. Sie lernen diese Symbole am besten kennen, indem Sie mit ihnen experimentieren.
Hinweis
Seitenansicht zoomen
Statt der Verwendung des Symbols kDnnen Sie auch auf einen Bereich der Seitenansicht klicken. Access stellt dann genau diesen Bereich vergrDßert dar. Tipp Mit einem Klick auf die Schaltfl!che Schließen beenden Sie die Seitenansicht. Anschließend ist wieder dasselbe Fenster aktiv wie vor dem Rffnen der Seitenansicht. Das kann beispielsweise das Datenbankfenster oder das Berichtsentwurfsfenster sein. Klicken Sie dort gegebenenfalls auf das Seitenansichts-Symbol, um erneut in die Seitenansicht zu wechseln. Im unteren Teil des Berichtsfensters finden Sie Navigationsschaltfl!chen, mit denen Sie seitenweise in der Seitenansicht bl!ttern. Die Navigationssymbole haben die gleiche Bedeutung wie in der Formularansicht, aber mit dem Unterschied, dass Sie diesmal nicht auf Datens!tze, sondern auf Druckseiten positionieren. Ein Klick auf den Pfeil des Symbols OfficeVerkn1pfungen und die Auswahl des Listeneintrags weiterbearbeiten mit MS Word veranlasst Access, die Daten des Berichts im so genannten Rich-Text-Format (kurz: RTF) zu speichern. Außerdem startet Access das Textverarbeitungsprogramm Micorosft Word und veranlasst dieses Programm, die RTF-Datei zu Dffnen. Sie haben so die MDglichkeit, die Berichtsdaten direkt in der Textverarbeitung weiterzubearbeiten. Ein Klick auf den Pfeil des Symbols OfficeVerkn1pfungen und die Auswahl des Listeneintrags analysieren mit MS Excel bereitet die Berichtsdaten f,r die Weiterbearbeitung mit der Tabellenkalkulation MS-Excel f,r Windows auf. Access startet Excel, erstellt und Dffnet ein Arbeitsblatt mit den Daten aus dem Bericht. Die Verwendung des Befehls Datei > Senden an setzt eine MDglichkeit zum Versand von Nachrichten (z.B. Microsoft Mail, Microsoft Exchange oder Microsoft Outlook) voraus. Sie kDnnen den Befehl deshalb nur ausw!hlen, wenn eine MDglichkeit zum Versand von Nachrichten unter Windows installiert ist.
Schließen
Navigationsschaltfl!chen
In MS-Word weiterbearbeiten
In MS-Excel analysieren
Nachricht senden
Kapitel 10 Datenaustausch dieses Buchs beschreibt weitere MDglichkeiten zum Datenaustausch mit anderen Anwendungsprogrammen. Hinweis 159
Daten auswerten und pr%sentieren
Adressetiketten drucken In diesem Abschnitt entwerfen Sie einen Bericht, der die Adressentabelle auf Etiketten druckt. Voraussetzung f,r den erfolgreichen Einsatz des Berichts ist nat,rlich, dass Sie ,ber einen geeigneten Drucker und ein entsprechendes Etikettenformular verf,gen. Gehen Sie wie folgt vor: Etiketten-Assistent aufrufen
Etiketten-Assistent starten
1
Aktivieren Sie das Datenbankfenster mit einem Klick auf das gleichnamige Symbol.
2
Klicken Sie auf das Register Tabellen, und markieren Sie den Eintrag Adressen.
3
Klicken Sie auf den Pfeil des Symbols Neues Objekt.
4
W!hlen Sie den Eintrag Bericht aus der Liste.
Da Sie die Adressentabelle im Datenbankfenster markiert haben, setzt Access die Adressentabelle als Grundlage f,r den neuen Bericht ein. Sie kDnnen im Dialog Neuer Bericht daher direkt einen Doppelklick auf den Eintrag Etiketten-Assistent durchf,hren, um diesen zu starten.
Abb. 3.51 Etikettengrße ausw!hlen
Etikettengrße ausw!hlen
160
Die erste Dialogseite zeigt eine Auswahlliste der EtikettengrDßen an, die der Etiketten-Assistent kennt. In der linken Spalte der Auswahlliste finden Sie eine Etikettennummer und in der mittleren Spalte die GrDßenangaben f,r die Etiketten. Die rechte Spalte enth!lt die Anzahl der Etikettenbahnen, die bedruckt werden.
Datenausgabe mit Berichten
Schauen Sie am besten auf der Verpackung Ihrer Etiketten nach, um die richtige GrDße zu ermitteln. Sie kDnnen die EtikettengrDße auch mit einem Lineal nachmessen. Sofern die GrDße Ihrer Etiketten in Zoll angegeben ist, klicken Sie auf die Option Zoll. Der Assistent zeigt die EtikettengrDße dann in der englischen Maßeinheit an. Die Wahrscheinlichkeit, dass Ihre Etiketten mit einem der in der Liste aufgef,hrten Eintr!ge ,bereinstimmen, ist recht hoch. Sollten Sie Ihre Etiketten dennoch nicht finden kDnnen, haben Sie zwei MDglichkeiten. Entweder klicken Sie auf die Schaltfl!che Anpassen, um eigene EtikettengrDßen zu definieren, oder Sie definieren manuell einen passenden Bericht. Der Entwurf eigener EtikettengrDßen wird weiter unten in diesem Abschnitt beschrieben. In Kapitel 7 Berichte dieses Buchs finden Sie weitere Hinweise zum Berichtsentwurf.
Hinweis
Wenn Sie die richtige EtikettengrDße gefunden haben, markieren Sie den entsprechenden Eintrag. Klicken Sie dann auf die Schaltfl!che Weiter, um die Einstellung zu best!tigen.
Abb. 3.52 Schrift ausw!hlen
Mit dem folgenden Dialog kDnnen Sie verschiedene Einstellungen f,r die Schriften zum Ausdruck der Etiketten vornehmen. Dazu z!hlen unter anderem die Schriftart und die SchriftgrDße. Nehmen Sie die erforderlichen Einstellungen vor, und klicken Sie auf die Schaltfl!che Weiter. Es folgt die Dialogseite des Etiketten-Assistenten, mit der Sie die Datenfelder aus der zugrunde liegenden Adressentabelle f,r den Ausdruck eines Etiketts anordnen. Um ein Feld in den Etikettenentwurf zu ,bernehmen, f,hren Sie einen Doppelklick auf den entsprechenden Eintrag in der Liste Verf1gbare Felder durch. Alternativ kDnnen Sie das Feld auch in der Liste markieren und es mit einem Klick auf das einfache GrDßerzeichen (>) in den Etikettenentwurf ,bernehmen.
Schrift ausw!hlen
Felder anordnen
161
Daten auswerten und pr%sentieren
Abb. 3.53 Felder anordnen
Die Datenfelder werden im Etikettenentwurf durch Platzhalter dargestellt. Access ersetzt die Platzhalter beim sp!teren Ausdruck durch die Werte aus einem Datensatz der Adressentabelle. Der Etikettenentwurf wird f,r jeden Datensatz der Adressentabelle einmal wiederholt. Das bedeutet, dass Access f,r jeden Datensatz ein Etikett bedruckt. Um den Etikettenentwurf zu gestalten, gehen Sie wie folgt vor:
Etikettenentwurf bearbeiten
162
1
F,hren Sie einen Doppelklick auf das Feld Anrede durch, um es in den Etikettenentwurf zu ,bernehmen.
2
Klicken Sie in die zweite Zeile des Etikettenentwurfs.
3
Pbernehmen Sie das Feld Name per Doppelklick in den Etikettenentwurf.
4
Pbernehmen Sie mit derselben Vorgehensweise die Felder Straße und PLZ und Ort in weitere Felder des Etikettenentwurfs.
Wenn Sie sp!ter eigene Etikettenentw,rfe gestalten, kDnnen Sie zus!tzlich zu den Platzhaltern auch beliebige Texte eingeben. Wenn Sie bei der Gestaltung des Etikettenentwurfs einen Fehler gemacht haben, kDnnen Sie Texte und Platzhalter markieren, um sie mit der _-Taste zu lDschen. Klicken Sie auf die Schaltfl!che Weiter, um den Etikettenentwurf zu best!tigen.
Datenausgabe mit Berichten
Abb. 3.54 Sortierung festlegen
Mit dem folgenden Dialog des Etiketten-Assistenten w!hlen Sie eines oder mehrere Felder aus, nach denen Access die Daten sp!ter sortiert. Wenn Sie kein Feld in die Liste Sortiert nach ,bernehmen, werden die Etiketten in der Reihenfolge der zugrunde liegenden Tabelle oder Abfrage sortiert. Im Fall der Adressentabelle w,rde das eine Sortierung nach dem Prim!rschl,sselfeld Adresse-Nr bedeuten. Eine sinnvolle Sortierung der Etiketten erfolgt entweder nach Namen oder nach Postleitzahlen und Namen.
Sortierung festlegen
Abb. 3.55 Berichtsname eingeben
163
Daten auswerten und pr%sentieren
Berichtsname eingeben
Die letzte Dialogseite des Etiketten-Assistenten fordert Sie zur Eingabe eines Namens auf, unter dem Access den Bericht in der Datenbank speichert. 0ndern Sie die Vorgabe in Adressen-Etiketten. Der Dialog enth!lt außerdem zwei Optionsfelder, mit denen Sie den Bericht in der Seiten- oder der Entwurfsansicht Dffnen kDnnen. Markieren Sie die Option f,r die Seitenansicht und klicken Sie abschließend auf die Schaltfl!che Fertigstellen, um das Erstellen des Berichts zu starten.
Abb. 3.56 Adressetiketten in der Seitenansicht
Bericht drucken
Nach kurzer Zeit Dffnet Access den Bericht in der Seitenansicht. Wie Sie sehen, hat Access die Adressen aufsteigend nach Namen sortiert. Um den Bericht zu drucken, klicken Sie auf das gleichnamige Symbol. Access hat den Bericht bereits unter dem Namen Adressen-Etiketten gespeichert und Sie kDnnen die Seitenansicht mit einem Klick auf die Schaltfl!che Schließen beenden.
Eigene Etikettengr&ßen definieren Eine EtikettengrDße speichert Informationen ,ber das Format von Etiketten, die mit dem Etiketten-Assistenten bedruckt werden sollen. Wenn Sie Etiketten bedrucken wollen, die der Assistent noch nicht kennt, dann m,ssen Sie auf der ersten Dialogseite des Assistenten auf die Schaltfl!che Anpassen klicken, damit Access den Dialog Neue Etikettengr4ßen Dffnet.
Etikettentyp
164
Der Dialog enth!lt eine Auswahlliste aller benutzerdefinierten EtikettengrDßen des Etikettentyps, der gerade markiert ist. Der Etikettentyp Einzeln bestimmt dabei, dass die Etiketten per Einzelblatteinzug eingezogen werden. Der Etikettentyp Endlos weist auf Endlosetikettenformulare hin.
Datenausgabe mit Berichten
Abb. 3.57 Eigene Etikettengrßen definieren
Ausgehend von diesem Dialog kDnnen Sie bestehende Vorlagen bearbeiten oder lDschen. Ein Klick auf die Schaltfl!che Neu Dffnet den Dialog Neues Etikett, mit dem Sie eine neue EtikettengrDße definieren kDnnen. Wenn Sie bereits eine eigene EtikettengrDße definiert haben, dann zeigt Access statt der Schaltfl!che Neu die Schaltfl!che Kopie an. Diese Schaltfl!che dupliziert die markierte EtikettengrDße und ermDglicht die Bearbeitung des Duplikats im Dialog Etikett bearbeiten. Die Dialoge Neues Etikett und Etikett bearbeiten sind von der Benennung abgesehen identisch. Sie sollten bei der Bearbeitung eines Duplikats als Erstes den Namen der Vorlage !ndern.
Hinweis
Abb. 3.58 Der Dialog Neues Etikett
165
Daten auswerten und pr%sentieren
Name eingeben
Der Dialog Neues Etikett enth!lt einige Eingabefelder, mit denen Sie das Format der zu bedruckenden Etiketten bestimmen. Bei der Definition einer EtikettengrDße sollten Sie stets als Erstes einen eindeutigen Namen eingeben, der die EtikettengrDße identifiziert. Zu den weiteren Einstellungen z!hlen unter anderem die GrDße der Etiketten, die horizontalen und vertikalen Abst!nde und die Anzahl der nebeneinander zu druckenden Etiketten. Der Dialog ordnet die Eingabefelder in einer Grafik an, aus der gleichzeitig die Bedeutung der Eingabefelder hervorgeht. Die Einstellungen bed,rfen daher keiner weiteren Erl!uterung. Beachten Sie lediglich, dass alle Angaben wahlweise in Zoll oder Zentimeter erfolgen kDnnen.
Etikettengrße speichern Vorlage verwenden
Wenn Sie alle erforderlichen Eingaben vorgenommen haben, dann klicken Sie auf die Schaltfl!che OK. Access speichert die EtikettengrDße dann. Sie kDnnen die neue EtikettengrDße jetzt zusammen mit dem Etiketten-Assistenten von Access verwenden. Starten Sie den Assistenten daher, wie weiter oben beschrieben. Der Dialog zur Auswahl der EtikettengrDße enth!lt wie bisher alle von Access vordefinierten EtikettengrDßen.
Abb. 3.59 Benutzerdefinierte Etikettengrßen verwenden
Erst wenn Sie das Kontrollk!stchen Benutzerdefinierte Etikettengr4ßen anzeigen ankreuzen, zeigt Access auch die benutzerdefinierten Vorlagen an. Beachten Sie, dass diese Liste nur die EtikettengrDßen des markierten Etikettentyps Einzeln oder Endlos anzeigt. Wenn Sie also eine EtikettengrDße vermissen, dann markieren Sie die jeweils andere Option f,r den Etikettentyp. 166
Tabellen Tabelle manuell entwerfen Tabellendefinition Felder definieren Feldeigenschaften Schlssel definieren Tabellendefinition nachtr%glich %ndern Tabellen verknpfen Beziehungen Referenzielle Integrit%t Der Tabellen-Assistent Der Nachschlage-Assistent Der Tabellenanalyse-Assistent Hyperlinks in einer Tabelle speichern
169 170 181 185 194 201 204 205 217 220 226 230 240
4
Tabellen
Bei einem relationalen Datenbanksystem wie Access dreht sich alles um Daten. Access speichert Daten in Tabellen, die wiederum mit anderen Tabellen zusammengef,hrt werden kDnnen. Die Ergebnisse lassen sich dann in Formularen und Berichten ansprechend pr!sentieren. In diesem Kapitel erfahren Sie alles ,ber die Anlage und den Gebrauch von Tabellen. Die ersten Abschnitte beinhalten den Tabellenentwurf und die relationalen Beziehungen zwischen Tabellen. Die weiteren Abschnitte besch!ftigen sich dann mit den Besonderheiten, die Sie beim nachtr!glichen 0ndern einer Tabellendefinition beachten m,ssen. Im Anschluss an diese Grundlagen finden Sie eine detaillierte Beschreibung des Tabellen-Assistenten, der Ihnen beim Tabellenentwurf viel Arbeit abnehmen kann. Die Vorgehensweise zur Eingabe und Bearbeitung von Daten ist Ihnen bereits aus dem Kapitel 2 Daten verwalten bekannt. Mit Access verf,gen Sie ,ber mehrere MDglichkeiten zum Entwurf einer Tabelle. So kDnnen Sie beispielsweise eine bereits bestehende dBase-Tabelle in Ihre Datenbank importieren oder mit dem Assistenten eine weitgehend standardisierte Tabelle entwerfen. Den besten Pberblick ,ber diese MDglichkeiten erhalten Sie, wenn Sie wie folgt vorgehen: Markieren Sie im Datenbankfenster das Register Tabellen und klicken Sie auf die Schaltfl!che Neu oder w!hlen Sie den Befehl Einf1gen > Tabelle aus der Men,leiste.
Abb. 4.1 Neue Tabelle anlegen
168
Tabelle manuell entwerfen
Access Dffnet in beiden F!llen den Dialog Neue Tabelle mit einer Pbersicht der MDglichkeiten zur Anlage einer neuen Tabelle. Bei einem Doppelklick auf den Eintrag Datenblattansicht Dffnet Access das Datenblatt einer neuen Tabelle. Hier kDnnen Sie direkt mit der Eingabe von Daten beginnen, w!hrend Access automatisch die zu Ihren Eingaben passende Tabelle entwirft. Weitere Hinweise zu diesem Thema finden Sie in Kapitel 2 Daten verwalten dieses Buchs. Ein Doppelklick auf den Eintrag Tabellen-Assistent startet einen Assistenten, mit dem Sie aus einer Palette von mehr als 45 Mustervorlagen f,r h!ufig benDtigte Tabellendefinitionen ausw!hlen kDnnen. Mit dem Tabellen-Assistenten kDnnen Sie eine oder mehrere Tabellendefinitionen und sogar die Beziehungen zwischen den Tabellen quasi automatisch entwerfen lassen.
Datenblattansicht
Tabellen-Assistent
Der Tabellen-Assistent f,hrt schnell zu zuverl!ssigen Ergebnissen und kann Ihnen eine ganze Menge Arbeit abnehmen. Dennoch wird es in der Praxis h!ufig so sein, dass die vom Assistenten erstellten Tabellen nicht genau Ihren Bed,rfnissen entsprechen. Es wird daher die Regel so sein, dass Sie die vom Assistenten erstellten Tabellen manuell nachbearbeiten. Das setzt Kenntnisse im manuellen Tabellenentwurf voraus. Sie finden die Beschreibung des Tabellen-Assistenten daher am Ende dieses Kapitels. Die beiden Befehle Importieren und Tabelle verkn1pfen des Men,s Datei > Externe Daten machen externe Datenquellen in Ihrer Datenbank zug!nglich. Es kann sich dabei um Tabellen von anderen Access-Datenbanken, HTML-Seiten, Tabellen eines SQL-Servers oder anderen Formaten handeln. Kapitel 10 Datenaustausch enth!lt weitere Hinweise zum Thema Datenaustausch.
Tabellen importieren und verkn pfen
Die folgenden Abschnitte dieses Kapitels beschreiben den manuellen Entwurf einer Tabelle in der Entwurfsansicht. W!hrend des manuellen Entwurfs von Tabellen lernen Sie die Grundlagen der Datenorganisation mit Access am besten kennen. Sie werden sehen, dass mit diesem Wissen die anderen MDglichkeiten zur Anlage einer Tabelle nahezu selbsterkl!rend sind. Sie sollen mit diesem Buch schließlich nicht nur erfahren, was Sie alles mit Access machen kDnnen, sondern auch, wie es geht.
Tabelle manuell entwerfen Die Vorgehensweise zum manuellen Entwurf einer neuen Tabelle sieht vereinfacht wie folgt aus: 1
Erstellen Sie eine neue Tabelle.
2
Legen Sie in der Entwurfsansicht des Tabellenfensters die Namen und Datentypen der Datenfelder fest und geben Sie die Beschreibungen ein.
3
Bei Bedarf kDnnen Sie zus!tzliche Feldeigenschaften wie beispielsweise G1ltigkeitsregel und G1ltigkeitsmeldung definieren. 169
Tabellen
4
W!hlen Sie den Men,befehl Ansicht > Indizes, um die Schl,ssel f,r die neue Tabelle festzulegen.
5
Legen Sie ggf. weitere Eigenschaften der Tabelle wie beispielsweise eine Beschreibung fest.
6
Speichern Sie die Tabellendefinition.
7
Sollten Sie bereits ,ber mehrere Tabellen verf,gen, dann kDnnen Sie diese ,ber den Befehl Extras > Beziehungen relational verkn,pfen.
Wenn Sie eine Tabelle erst einmal angelegt haben, dann kDnnen Sie sie mit dem Tabellenanalyse-Assistenten optimieren. Sie finden die Beschreibung dieses Assistenten weiter unten in diesem Kapitel. Weitere Leistungssteigerungen erreichen Sie mit dem Leistungsanalyse-Assistenten, dessen Beschreibung Sie in Kapitel 9 Eine Datenbank verwalten finden.
Eigenschaften einer Tabelle und ihrer Datenfelder
Eigenschaften definieren
W!hrend des Tabellenentwurfs definieren Sie die Eigenschaften der Tabelle und der Datenfelder, aus denen sie besteht. Einige Eigenschaften einer Tabelle sind ihr Name, ihre G,ltigkeitsregel und ihre G,ltigkeitsmeldung. Typische Eigenschaften f,r ein Datenfeld sind der Feldname, der Felddatentyp und die Beschriftung. Die Definition der Eigenschaften erfolgt dabei ,ber die MDglichkeiten der Benutzeroberfl!che, also ,ber die Men,leiste, die Symbolleiste und Dialoge.
Tabellendefinition Access speichert Daten in Tabellen, die aus Spalten und Zeilen bestehen. Die Spalten entsprechen den Datenfeldern und die Zeilen den Datens!tzen einer Tabelle.
Tabelle anlegen Tabellendefinition
Bevor Sie Daten in eine Tabelle eingeben kDnnen, m,ssen Sie zun!chst deren Struktur definieren. Die Struktur bestimmt die Anzahl und Anordnung der Spalten und welche Art von Information in ihnen gespeichert werden kann. Bei Access wird die Tabellenstruktur als Tabellendefinition bezeichnet. Zur Anlage einer neuen Tabelle haben Sie folgende MDglichkeiten:
Neue Tabelle anlegen
Markieren Sie im Datenbankfenster das Register Tabellen und klicken Sie auf die Schaltfl!che Neu oder w!hlen Sie bei markiertem Datenbankfenster den Befehl Einf1gen > Tabelle aus der Men,leiste oder
170
Tabellendefinition
w!hlen Sie aus dem Kombinationsfeld Neues Objekt den Eintrag Tabelle, oder klicken Sie auf einen der Erstellt...-Eintr!ge.
Abb. 4.2 Die Entwurfsansicht einer neuen Tabelle
Access Dffnet in jedem Fall den Dialog Neue Tabelle. Markieren Sie hier den Eintrag Entwurfsansicht und klicken Sie auf die Schaltfl!che OK. Access Dffnet dann die Entwurfsansicht des Tabellenfensters. Die folgenden Abschnitte enthalten zun!chst einige Vorgehensweisen zur Handhabung von Tabellen und gehen dann auf die Definition von Datenfeldern ein. Trotz sorgf!ltiger Planung gelingt der Entwurf einer Tabellendefinition nur selten im ersten Durchlauf. Es ist daher oft erforderlich, die Struktur einer bereits bestehenden Tabelle, in der bereits Daten gespeichert sind, nachtr!glich zu !ndern. Weiter unten in diesem Kapitel finden Sie den Abschnitt Tabellendefinition nachtr7glich 7ndern, der sich mit dieser Thematik auseinandersetzt.
Entwurfsansicht
Hinweis
Die Symbolleiste im Tabellenentwurf Die manuelle Anlage von Tabellen erfolgt ,ber einen Klick auf die Schaltfl!che Neue Tabelle im gleichnamigen Dialog. Access Dffnet dann das Entwurfsfenster f,r eine neue Tabelle. Die folgende Tabelle enth!lt eine Pbersicht ,ber die Symbolleiste im Tabellenentwurf. 171
Tabellen
Die Symbolleiste im Tabellenentwurf
Symboi
Bedeutung Aktiviert die Datenblattansicht Speichert den Tabellenentwurf Druckt Datenbankobjekte (steht im Tabellenentwurf nicht zur Verf,gung) Aktiviert die Seitenansicht (steht im Tabellenentwurf nicht zur Verf,gung) Pr,ft die Rechtschreibung von Texten (steht im Tabellenentwurf nicht zur Verf,gung) Verschiebt das markierte Element in die Zwischenablage Kopiert das markierte Element in die Zwischenablage F,gt den Inhalt der Zwischenablage ein Pbertr!gt Formate (steht im Tabellenentwurf nicht zur Verf,gung) Macht die letzte 0nderung r,ckg!ngig Definiert die markierten Felder als Prim!rschl,ssel Rffent das Fenster Indizes F,gt eine neue Zeile bzw. ein neues Datenfeld in den Tabellenentwurf ein LDscht die markierten Zeilen bzw. Datenfelder aus dem Tabellenentwurf Rffnet das Fenster Tabelleneigenschaften Rffnet den Feld-Generator Aktiviert das Datenbankfenster Entwirft ein neues Datenbankobjekt Zeigt die Hilfe zu dem Objekt an, das Sie als n!chstes anklicken
172
Tabellendefinition
Die Symbolleiste im Tabellenentwurf (Forts.)
Symboi
Bedeutung Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 4.1
Eigenschaften einer Tabelle Nicht nur die Datenfelder, sondern auch die Tabelle selbst hat Eigenschaften, die sich ebenfalls !ndern lassen. Wechseln Sie in die Entwurfsansicht der Tabelle und klicken Sie auf das Eigenschaften-Symbol oder w!hlen den Befehl Ansicht > Eigenschaften, damit Access das Eigenschaftenfenster anzeigt.
Eigenschaften
Abb. 4.3 Eigenschaften einer Tabelle
Das Eigenschaftenfenster enth!lt Eingabefelder, mit denen Sie eine Beschreibung, eine G,ltigkeitsregel, eine G,ltigkeitsmeldung, einen Filter und eine Sortierung festlegen kDnnen. Weiterhin finden Sie hier einige Eingabefelder, mit deren Hilfe Sie definieren kDnnen, ob und wie verkn,pfte Objekte in der Datenblattansicht erschei-
Beschreibung
173
Tabellen
nen. Sie sollten sich daran gewDhnen, zu jeder Tabelle eine Beschreibung einzugeben, so dass Sie auch lange Zeit nach dem Entwurf der Tabelle noch verstehen kDnnen, worum es geht.
Pr fung auf Datensatzebene
Mit der Tabelleneigenschaft G1ltigkeitsregel kDnnen Sie einen logischen Ausdruck zur Pberpr,fung von Datens!tzen definieren. Access pr,ft diese Bedingung vor dem Speichern eines Datensatzes. Der Datensatz wird nur dann gespeichert, wenn die Bedingung erf,llt ist. Andernfalls zeigt Access die G,ltigkeitsmeldung an. Sie sollten den Text der G,ltigkeitsmeldung daher so gestalten, dass er einen Hinweis auf die mDgliche Fehlerquelle gibt. Sie kDnnen zur Eingabe der G,ltigkeitsregel den Ausdrucks-Editor von Access verwenden. Klicken Sie dazu im Eigenschaftenfenster auf die Schaltfl!che mit den drei Punkten.
Pr fung auf Feldebene
Die Datenfelder einer Tabelle verf,gen ebenfalls ,ber eine Eigenschaft G1ltigkeitsregel. Hier kDnnen Sie Bedingungen f,r jedes einzelne Datenfeld der Tabelle definieren. Die G,ltigkeitsregel der Tabelle eignet sich jedoch besser f,r Pr,fungen, die den gesamten Datensatz im Pberblick haben m,ssen. So kDnnen Sie hier beispielsweise ein Datenfeld in Abh!ngigkeit von einem anderen Datenfeld pr,fen. Ein Beispiel daf,r ist die Pr,fung des Zahlungsdatums anhand des Rechnungsdatums: [Ist Zahlung]>=[Ist Rechnung] Oder [Ist Zahlung] Ist Null Zu dieser G,ltigkeitsregel passt beispielsweise die folgende G,ltigkeitsmeldung: Das Zahlungsdatum muss grßer als oder gleich dem Rechnungsdatum sein.
Abb. 4.4 G ltigkeitsregel und G ltigkeitsmeldung im Eigenschaftenfenster der Tabelle
G ltigkeitsregel
berpr fen
174
Wenn Sie die G,ltigkeitsregel f,r eine bereits bestehende Tabelle !ndern, dann kann es vorkommen, dass einige Daten der Tabelle die G,ltigkeitsregel verletzen. In diesem Fall kommt es zu einer Fehlermeldung beim Speichern der Tabelle und Access hebt die G,ltigkeitsregel automatisch wieder auf. Sie wird damit unwirksam.
Tabellendefinition
Um dies zu vermeiden, sollten Sie die G,ltigkeitsregel f,r die bereits gespeicherten Daten ,berpr,fen. Der Befehl Bearbeiten > G1ltigkeitsregeln testen ,bernimmt dies automatisch. Sollten einige Datens!tze die G,ltigkeitsregel verletzen, macht eine entsprechende Meldung darauf aufmerksam. In diesem Fall sollten Sie eine Abfrage entwerfen, um die fehlerhaften Datens!tze aufzusp,ren. Weitere Hinweise zum Entwurf von Abfragen finden Sie in Kapitel 5 Abfragen dieses Buchs. Wenn Sie das Eigenschaftenfenster wieder ausblenden wollen, dann klicken Sie erneut auf das Eigenschaften-Symbol oder w!hlen den Befehl Ansicht > Eigenschaften erneut aus. Genau genommen z!hlt auch das Layout einer Tabelle zu deren Eigenschaften. Wenn Sie n!mlich in die Datenblattansicht einer Tabelle wechseln, kDnnen Sie Spaltenbreiten, ZeilenhDhen, Schriften und andere Dinge ver!ndern. Access speichert Ihre Einstellungen auf Wunsch mit der Tabellendefinition ab. Sofern Sie verschiedenartige Tabellen-Layouts benDtigen, verwenden Sie besser Formulare. Mit der Tabelleneigenschaft Filter kDnnen Sie eine Filterbedingung angeben, die Access bei Auswahl des Befehls Filter > Sortierung anwenden aktiviert. Es muss sich dabei um einen g,ltigen logischen Ausdruck handeln. Ein Beispiel ist die folgende Bedingung:
Eigenschaftenfenster ausblenden
Hinweis
Filter
[Ist Rechnung] <> Null Dieser Filter ermittelt alle Datens!tze, bei denen dem Feld Ist Rechnung noch kein Wert zugewiesen wurde. Die Verwendung des Wie-Operators in der Tabelleneigenschaft ist nicht erlaubt. Hier m,ssen Sie stattdessen den englischen Namen Like angeben. Die Filterbedingung [Titel] Like „A*“ ermittelt alle Datens!tze, bei denen der Titel mit dem Buchstaben A beginnt. Die beiden Beispiele kDnnen nat,rlich nur dann funktionieren, wenn die aktuelle Tabelle die Felder Ist Rechnung bzw. Titel enth!lt. Andernfalls f,hrt der Versuch, den Filter zu aktivieren, zu einer Fehlermeldung von Access. F,r die Eigenschaft Sortiert nach kDnnen Sie eines oder mehrere durch Semikola getrennte Datenfelder angeben, nach denen Access das Datenblatt sortieren soll. Ein Beispiel f,r eine solche Feldliste sieht folgendermaßen aus:
Sortieren
[Titel]; [Ist Nettobetrag] Dieses Beispiel funktioniert nat,rlich nur dann, wenn die Felder Titel und Ist Nettobetrag in der aktuellen Tabelle angelegt sind. Sie kDnnen die Wirkung der Eigenschaften Filter und Sortiert nach ,berpr,fen, indem Sie in der Datenblattansicht den Befehl Datens7tze > Filter > Spezialfilter/-sortierung aus der Men,leiste ausw!hlen. Access zeigt die Wirkung der beiden Eigenschaften dann als Filterentwurf an.
Hinweis 175
Tabellen
Filter und Sortierung anwenden
Access wendet die in der Tabelleneigenschaft hinterlegte Sortierung manchmal automatisch an. Der Filter wird demgegen,ber nur aktiv, wenn Sie in der Datenblattansicht auf das Symbol Filter/Sortierung anwenden klicken oder Sie den Befehl Datens7tze > Filter/Sortierung anwenden aus der Men,leiste w!hlen. Die Bedingungen f,r das automatische Aktivieren von Filter und Sortierung sehen wie folgt aus: Wenn Sie nur eine Sortierung definieren, aktiviert Access diese bei einem anschließenden Wechsel in die Datenblattansicht automatisch. Wenn Sie nur eine Sortierung definiert und die Tabelle bei aktivierter Sortierung gespeichert haben, aktiviert Access sie beim n!chsten Rffnen der Tabelle automatisch. Wenn Sie nur eine Sortierung definiert haben, kDnnen Sie sie mit dem Symbol Filter/Sortierung anwenden bzw. den Men,befehlen Datens7tze > Filter/ Sortierung anwenden und Datens7tze > Filter/Sortierung entfernen aktivieren und deaktivieren. Wenn Sie eine Sortierung und einen Filter definiert haben, aktiviert Access keine von beiden automatisch. Wenn Sie eine Sortierung und einen Filter definiert haben, aktiviert das Symbol Filter/Sortierung anwenden nur den Filter. Wenn Sie eine Sortierung und einen Filter definiert haben, aktiviert der Men,befehl Datens7tze > Filter/Sortierung anwenden die Sortierung und den Filter. Wenn Sie nur einen Filter definiert haben, aktiviert Access ihn erst nach einem Klick auf das Symbol Filter/Sortierung anwenden oder der Auswahl des Men,befehls Datens7tze > Filter/Sortierung anwenden. In dieser Auflistung fehlt noch der Fall, dass Sie einen Filter und eine Sortierung definiert haben, Access aber nur den Filter deaktivieren bzw. nur aktivieren soll. Sie erreichen dies, indem Sie mit dem Men,befehl Datens7tze > Filter/Sortierung anwenden zuerst den Filter und die Sortierung aktivieren. Anschließend klicken Sie auf das Symbol Filter entfernen, um nur den Filter zu deaktivieren. Danach ist nur noch die Sortierung aktiv.
Vererbung
Wenn Sie auf Basis der Tabelle ein neues Formular oder einen neuen Bericht erstellen, dann werden die Eigenschaften Filter und Sortiert nach sozusagen vererbt. Das bedeutet, dass Access die Werte dieser Eigenschaften automatisch in die gleichnamigen Formular- und Berichtseigenschaften ,bernimmt. Auch hier stellt sich die Frage, ob und wann Access den Filter und oder die Sortierung automatisch aktiviert. Betrachten Sie dazu folgende Regeln: Die Sortierung wendet Access im neuen Formular oder Bericht stets automatisch an.
176
Tabellendefinition
Den Filter wendet Access nur an, wenn Sie das neue Formular oder den neuen Bericht auf der Basis der in der Datenblattansicht geDffneten Tabelle erstellen. In einem Formular aktiviert Access den Filter nur beim ersten Rffnen, also unmittelbar nach dem Erstellen des Formulars. Bei jedem weiteren Rffnen des Formulars m,ssen Sie den Filter explizit per Men,befehl oder Symbol aktivieren. In Berichten aktiviert Access den Filter bei jedem Rffnen. Access aktiviert den Filter nicht, wenn Sie das neue Formular oder einen neuen Bericht erstellen, w!hrend die zugrunde liegende Tabelle nicht geDffnet ist. Um einen Filter zu deaktivieren, klicken Sie auf das Symbol Filter entfernen. Um eine Sortierung und den Filter zu deaktivieren, w!hlen Sie den Befehl Datens7tze > Filter/Sortierung entfernen aus der Men,leiste. Beachten Sie, dass dieser Befehl zus!tzlich auch den Filter deaktiviert.
Filter und Sortierung deaktivieren
Unterdatenbl%tter Wie bereits in Kapitel 2 Daten verwalten erw!hnt, kDnnen Sie seit Access 2000 Tabellen und Abfrageergebnisse als Unterdatenbl!tter in Tabellen, Abfragen und Formularen einbinden. Dies geschieht ,ber den Befehl Einf1gen > Unterdatenblatt. Sie kDnnen auch manuell ein Unterdatenblatt anlegen. Dazu m,ssen Sie lediglich die entsprechenden Werte in die folgenden Eigenschaftenfelder eintragen.
Abb. 4.5 Eigenschaften von Unterdatenbl!ttern
Mithilfe der Eigenschaft Unterdatenblattname kDnnen Sie den Namen der Tabelle oder Abfrage angeben, deren Datens!tze im Unterdatenblatt erscheinen sollen. Die Auswahl der Tabelle oder Abfrage erfolgt mithilfe eines Kombinationsfeldes.
Unterdatenblattname
177
Tabellen
Verkn pfen von und Verkn pfen nach
Unterdatenblatthhe
Unterdatenblatt erweitert
Wenn es zwischen der aktuellen Abfrage und der Tabelle oder Abfrage, deren Datens!tze im Unterdatenblatt dargestellt werden sollen, keine Verkn,pfung gibt, m,ssen Sie die Eigenschaften Verkn1pfen von und Verkn1pfen nach verwenden. Unter Verkn1pfen von geben Sie den Namen des zu verkn,pfenden Datenfeldes der aktuellen Abfrage an und unter Verkn1pfen nach dementsprechend den Namen des zu verkn,pfenden Datenfeldes aus der Tabelle oder Abfrage, die Sie unter Unterdatenblattname eingef,gt haben. Die Bezeichnungen der beiden Datenfelder werden deshalb getrennt eingegeben, weil die Bezeichnungen in den zu verkn,pfenden Tabellen oder Abfragen nicht immer gleich lauten. Die Eigenschaft Unterdatenblatth4he bestimmt die maximale HDhe des geDffneten Unterdatenblattes. Wenn die Datens!tze nicht die angegebene HDhe benDtigen, ist die HDhe des Unterdatenblattes entsprechend niedriger. Sollte das Unterdatenblatt grDßer sein, kDnnen Sie die vertikale Bildlaufleiste benutzen, um alle verkn,pften Datens!tze einsehen zu kDnnen. Mit der Eigenschaft Unterdatenblatt erweitert kDnnen Sie bestimmen, ob in der Abfrage bereits alle Unterdatenbl!tter geDffnet sind. Der Wert Nein ist hier voreingestellt.
Tabellendefinition speichern Das Speichern der Tabellendefinition erfolgt ,ber den Men,befehl Datei > Speichern oder einen Klick auf das Speichern-Symbol. Wenn Sie die Tabelle vorher benannt haben, dann speichert Access die 0nderungen unter demselben Namen in der Datenbank. Beim Speichern einer neuen Tabellendefinition fordert Sie Access zur Eingabe eines Tabellennamens auf. Beachten Sie dabei die folgenden Namenskonventionen: Der Name einer Tabelle darf maximal 64 Zeichen lang sein. Namenskonventionen
Namen d,rfen aus einer beliebigen Folge von Buchstaben, Ziffern und den meisten Sonderzeichen bestehen. Nicht erlaubt sind die Sonderzeichen mit den ASCII-Werten 0 bis 31. Ebenfalls nicht erlaubt sind eckige Klammern ([, ]), der Punkt (.), das Ausrufezeichen (!) und der Accent grave (`). Namen d,rfen nicht mit einem Leerzeichen beginnen.
Hinweis
178
Die hier aufgef,hrten Namenskonventionen gelten nicht nur f,r die Namen von Tabellen, sondern f,r die Bezeichnung aller Objekte einer Datenbank. Dieselben Regeln gelten daher beispielsweise f,r Feldnamen, Abfragenamen, Formularnamen, Berichtsnamen und Makro-Namen.
Tabellendefinition
Der Befehl Datei > Speichern speichert die Tabelle standardm!ßig unter ihrem bisherigen Namen. Wenn Sie die Tabelle zwar bereits benannt haben, sie aber trotzdem unter einem neuen Namen speichern wollen, dann m,ssen Sie erst die Tabelle im Datenbankfenster markieren und dann den Befehl Datei > Speichern unter ausw!hlen. Damit erzeugen Sie ein Duplikat der Tabellendefinition. MDchten Sie hingegen nur einen neuen Namen f,r die Tabelle vergeben, verwenden Sie bei aktiviertem Datenbankfenster den Befehl Bearbeiten > Umbenennen. Wenn Sie aus der Entwurfs- in die Datenblattansicht einer Tabelle wechseln, m,ssen Sie zun!chst alle 0nderungen an der Tabellendefinition speichern. Access fragt in einem Dialog, ob Sie die 0nderungen speichern oder lieber zur Entwurfsansicht zur,ckkehren wollen. Wenn Sie das Layout einer Tabelle in der Datenblattansicht ge!ndert haben, fragt Access beim Schließen des Tabellenfensters automatisch, ob Sie die 0nderungen speichern wollen. Der entsprechende Dialog wird unabh!ngig davon angezeigt, ob Sie sich in der Datenblatt- oder Entwurfsansicht befinden.
Tabelle unter einem neuen Namen speichern
Hinweis
Layout speichern
Tabelle umbenennen Das Umbenennen von Tabellen erfolgt im Datenbankfenster. Markieren Sie zun!chst das Register Tabellen und dann den Tabellennamen. Klicken Sie erneut auf den Tabellennamen, so dass Access die Einf,gemarke anzeigt, und !ndern Sie den Namen. Alternativ kDnnen Sie auch den Men,befehl Bearbeiten > Umbenennen aus der Men,leiste oder den Befehl Umbenennen aus dem Kontextmen, des Tabellennamens w!hlen. Der Zugriff von Abfragen, Formularen, Berichten, Makros und Modulen auf Tabellen erfolgt in aller Regel ,ber den Namen. Beachten Sie daher, dass Sie die betroffenen Objekte nach dem Umbenennen einer Tabelle ebenfalls !ndern m,ssen.
Hinweis
Tabelle kopieren Auch das Kopieren von Tabellen erfolgt im Datenbankfenster. Klicken Sie zun!chst auf das Register Tabellen und markieren anschließend den Tabellennamen. W!hlen Sie dann den Befehl Bearbeiten > Kopieren aus der Men,leiste oder dem Kontextmen,, um die Tabelle in die Zwischenablage zu kopieren. Wenn Sie die Tabelle innerhalb der gleichen Datenbank kopieren wollen, w!hlen Sie den Befehl Einf1gen aus dem Kontextmen,. Der Befehl zeigt den Dialog Tabelle einf1gen als an. Mithilfe dieses Dialogs kDnnen Sie den Tabellennamen des Duplikats festlegen. Zwei Optionsfelder bestimmen dann, ob Access nur die Tabellendefinition oder auch die Daten einf,gen soll. Als Alternative kDnnen Sie auch den Namen einer bereits bestehenden Tabelle eingeben und die Option Daten an vorhandene Tabelle anf1gen ausw!hlen.
179
Tabellen
Abb. 4.6 Tabelle kopieren
Tabelle in eine andere Datenbank kopieren
Sofern Sie die Tabelle in eine andere Datenbank kopieren wollen, w!hlen Sie zun!chst den Befehl Datei > Datenbank 4ffnen. W!hlen Sie erst anschließend den Befehl Bearbeiten > Einf1gen. Weitere Hinweise zum Kopieren von Tabellen aus anderen Datenbanken finden Sie in Kapitel 10 Datenaustausch dieses Buchs. Alternativ w!hlen Sie den Befehl Datei > Exportieren aus der Men,leiste. Im Exportieren-Dialog werden Sie nach der Datenbankdatei gefragt, in die die Tabelle exportiert werden soll.
Tabelle verschieben Die Technik zum Verschieben einer Tabelle ist die gleiche wie zum Kopieren. W!hlen Sie jedoch statt des Befehls Kopieren den Befehl Ausschneiden.
Tabelle l&schen Das LDschen einer Tabelle erfolgt ebenfalls im Datenbankfenster. Klicken Sie auf das Register Tabellen und markieren Sie den Tabellennamen. W!hlen Sie dann den Befehl L4schen aus dem Kontextmen, oder dem Men, Bearbeiten. Solange Sie keine anderen Operationen im Datenbankfenster vornehmen, kDnnen Sie das LDschen einer Tabelle r,ckg!ngig machen. W!hlen Sie dazu den Befehl Bearbeiten > R1ckg7ngig aus der Men,leiste oder klicken Sie auf das gleichnamige Symbol. Beachten Sie, dass Sie zwar das LDschen von Tabellen und Formularen, nicht aber von Berichten r,ckg!ngig machen kDnnen. 180
Felder definieren
Tabellendefinition drucken Access zeigt in der Entwurfsansicht lediglich Feldnamen, Felddatentypen und Beschreibungen ,bersichtlich an. Wenn Sie weitere Feldeigenschaften einsehen wollen, dann m,ssen Sie das entsprechende Datenfeld zun!chst aktivieren.
(bersicht aller Eigenschaften
Zum Zwecke der Dokumentation, ist aber manchmal eine Pbersicht aller Tabellenund Feldeigenschaften erforderlich. Diese ist besonders hilfreich, wenn Sie sich in eine Tabellendefinition einarbeiten wollen, die nicht von Ihnen selbst stammt. Sie erhalten diese Pbersicht ,ber den Men,befehl Extras > Analyse > Dokumentierer. Dieser Befehl Dffnet den Datenbank-Dokumentierer von Access, der in Kapitel 9 Eine Datenbank verwalten dieses Buchs beschrieben wird.
Felder definieren Access stellt die Spalten bzw. Datenfelder einer Tabelle in der Entwurfsansicht als Zeilen dar. Die Spalten der Entwurfsansicht werden von den Eigenschaften Feldname, Felddatentyp und Beschreibung gebildet. Links neben der Spalte f,r den Feldnamen finden Sie eine Indikatorspalte. Ein kleines Dreieck markiert das jeweils aktuelle Datenfeld.
Indikatorspalte
Sie benDtigen die Indikatorspalte außerdem, um eines oder mehrere Datenfelder zu markieren. Verwenden Sie die Maus und gegebenenfalls die H-Taste, wenn Sie mehrere Datenfelder gleichzeitig markieren wollen. Wenn Sie Felder markieren wollen, die nicht unmittelbar nebeneinander liegen, halten Sie die S-Taste gedr,ckt, und markieren Sie die gew,nschten Datenfelder mit der Maus.
Feldname Feldnamen d,rfen bis zu 64 Zeichen lang sein und – mit wenigen Ausnahmen – aus einer beliebigen Kombination von Buchstaben, Ziffern und Sonderzeichen bestehen. Sie finden die Auflistung der Namenskonventionen weiter oben in diesem Kapitel.
Felddatentyp Mit dem Felddatentyp bestimmen Sie, welche Art von Information das Datenfeld speichern kann. W!hlen Sie den Felddatentyp aus dem gleichnamigen Kombinationsfeld eines Datenfeldes. Access kennt die in Tabelle 4.2 aufgelisteten Felddatentypen.
181
Tabellen
9bersicht ber die Felddatentypen
Felddatentyp
Bedeutung
Speicherbedarf
Text
Speichert Texte bis maximal 255 Zeichen
Max. 255 Byte
Memo
Speichert Texte bis maximal 65.535 Zeichen
Max. 65.535 Byte
Zahl
Speichert Zahlen
1,2,4 oder 8 Byte (nur bei Replikations ID: 16 Byte)
Datum/Uhrzeit
Speichert Datum und Uhrzeit
8 Byte
W!hrung
Speichert Zahlen im W!hrungsformat
8 Byte
AutoWert
Speichert Zahlen, die Access automatisch hochz!hlt: Access erlaubt nur einen AutoWert Feld je Tabelle
4 Byte (nur bei Replikations-ID: 16 Byte)
Ja/Nein
Speichert Boolesche Werte
1 Bit
OLE-Objekt
Speichert Objekte bis maximal 1 GByte. OLE- Max. 1 GByte Objekte kDnnen unter anderem Bilder, Musiksequenzen oder Texte sein.
Hyperlink
Max. 2.048 Byte je Bestandteil Speichert Texte, die Access als HyperlinkAdressen verwendet. Eine Hyperlink-Adresse (Anzeigetext, Adresse, Subadresse) besteht maximal aus Anzeigetext, Adresse und Unteradresse.
Nachschlage-Assistent Die Auswahl dieses Felddatentyps startet den Nachschlage-Assistenten. Er ermDglicht die Definition eines Feldes, dessen Wert ,ber ein Kombinationsfeld aus einer anderen Tabele oder Abfrage oder einer Werteliste entnommen wird.
Dieselbe GrDße wie das Prim!rschl,sselfeld der anderen Tabelle oder Abfrage (in der Regel 4 Byte)
Tabelle 4.2
Hinweis
F,r die meisten Felddatentypen kDnnen Sie weitere Eigenschaften festlegen. So l!sst sich beispielsweise die maximale Anzahl Zeichen f,r ein Textfeld limitieren. Beachten Sie daher unbedingt die Beschreibung der Feldeigenschaften weiter unten in diesem Abschnitt.
Speicherbedarf
Die FeldgrDße bestimmt h!ufig auch den Speicherbedarf. Mit wachsenden Tabellen spielt der Speicherbedarf der Felddatentypen eine zunehmend wichtige Rolle.
Feldgrße von Text-, Memo- und OLEFeldern
Die FeldgrDße von Text-, Memo- und OLE-Feldern ist abh!ngig von den Daten, welche die Felder speichern. Bei Textfeldern kDnnen Sie jedoch zus!tzlich die maximale Anzahl zu speichernder Zeichen festlegen. Setzen Sie dazu die entsprechende Feldeigenschaft auf den gew,nschten Wert.
182
Felder definieren
Im Unterschied zu einigen anderen Datenbanksystemen speichert Access in Textfeldern nur die eingegebenen Zeichen. Der Speicherbedarf eines Textfeldes ergibt sich daher direkt aus der Menge der eingegebenen Zeichen (1 Byte pro Zeichen). Der Speicherbedarf von Datum/Uhrzeit- und AutoWert-Feldern ist fixiert. Der Speicherbedarf von AutoWert-Feldern betr!gt 4 Byte und der von Ja/Nein-Feldern 1 Bit (8 Bit = 1 Byte). Bei Zahl-Feldern richtet sich der Speicherbedarf nach der festgelegten FeldgrDße. Er kann zwischen 1 und 8 Byte variieren. Beachten Sie die Ausf,hrungen zur FeldgrDße weiter unten in diesem Abschnitt. Ein Sonderfall bei Zahlenfeldern sind die so genannten Replikations-IDs oder GUIDFelder (f,r englisch: Global Unique Identifier, deutsch: global eindeutiger Bezeichner). W!hrend des Replizierens einer Datenbank f,gt Access den Tabellen selbstst!ndig eine Reihe von GUID-Feldern hinzu, die jeweils mit 16 Byte Speicherplatzbedarf zu Buche schlagen. Als Anwender haben Sie keine Verwendung f,r diesen Datentyp, da Access ihn selbst verwaltet. Weitere Hinweise zum Replizieren von Datenbanken finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs. Hyperlink-Felder bestehen aus maximal drei Teilen: Anzeigetext, Adresse und Unteradresse. Sie enthalten Texte, Zahlen und Sonderzeichen. Access speichert HyperlinkFelder intern aber stets wie Textfelder. Jeder der drei Bestandteile kann maximal 2.048 Zeichen in Anspruch nehmen. Das Einf,gen von Werten in Hyperlink-Felder erfolgt ,ber den Men,befehl Einf1gen > Hyperlink.
Access speichert Textfelder mit variabler L!nge Datum/Uhrzeitund AutoWertFelder Zahl-Felder
Replikations-IDFelder
Hyperlink-Felder
Weitere Hinweise zur Eingabe von Werten in Hyperlink-Felder finden Sie weiter unten in diesem Kapitel im Abschnitt Hyperlinks in einer Tabelle speichern. Hinweis Sie sollten es sich zur Gewohnheit machen, zu jedem Datenfeld eine Beschreibung einzugeben. So wird es leichter, die Bedeutung eines Datenfeldes zu erkennen. Access zeigt die Beschreibung eines aktiven Datenfeldes zudem automatisch in der Statuszeile an, sobald das Datenfeld aktiviert wird. Die Beschreibung darf maximal 255 Zeichen lang sein.
Beschreibung
Der Feld-Generator Der Feld-Generator von Access ermDglicht den Zugriff auf den Tabellen-Assistenten direkt aus dem Tabellenentwurf. Um den Feld-Generator zu starten, gehen Sie wie folgt vor: 1
Aktivieren Sie das Tabellenentwurfsfenster.
2
Klicken Sie in einer beliebigen Zeile auf die Spalte Feldname.
3
Klicken Sie auf das Editor-Symbol.
Zugriff auf den Tabellen-Assistenten
183
Tabellen
Abb. 4.7 Der Feld-Generator
Beispieltabelle und Feldname ausw!hlen
Der Tabellen-Assistent zeigt eine Auswahlliste privater und gesch!ftlicher Mustertabellen an. Sobald Sie eine Beispieltabelle anw!hlen, zeigt die rechte Auswahlliste die Datenfelder an. Zur Auswahl eines Datenfeldes kDnnen Sie entweder einen Doppelklick auf den Feldnamen durchf,hren oder Sie markieren den Feldnamen und klicken auf die Schaltfl!che OK. Access f,gt ein neues Datenfeld in den Tabellenentwurf ein und ,bernimmt automatisch alle Feldeigenschaften. Wenn Sie wollen, kDnnen Sie die Feldeigenschaften jetzt auch !ndern. Alternativ kDnnen Sie auch weitere Datenfelder aus dem FeldGenerator in den Tabellenentwurf kopieren.
Felder einfgen und l&schen Das Einf,gen bzw. LDschen eines Feldes in die Tabellendefinition ist gleichbedeutend mit dem Einf,gen bzw. LDschen einer Zeile in den Tabellenentwurf. Das Einf,gen einer neuen Zeile erfolgt ,ber das gleichnamige Symbol oder den Men,befehl Einf1gen > Zeilen. Alternativ kDnnen Sie auch mit der rechten Maustaste das Kontextmen, aufrufen und den Befehl Zeilen einf1gen ausw!hlen.
Zeile lschen
184
Auch das LDschen einer Zeile kann alternativ ,ber das gleichnamige Symbol oder den Men,befehl Bearbeiten > Zeilen l4schen erfolgen. Alternativ kDnnen Sie auch mit der rechten Maustaste das Kontextmen, aufrufen und den Befehl Zeilen l4schen ausw!hlen.
Feldeigenschaften
Beachten Sie jedoch, dass Access beim LDschen eines Datenfeldes automatisch die in diesem Feld gespeicherten Daten lDscht. Wenn Sie also bereits Daten in die Tabelle eingegeben haben, dann sollten Sie sicher sein, dass Sie die im zu lDschenden Feld gespeicherten Daten nicht mehr benDtigen.
Feldeigenschaften Mit der Definition des Felddatentyps setzt Access die Feldeigenschaften automatisch auf Standardwerte. Sie brauchen die Eigenschaften daher nur dann zu ver!ndern, wenn Sie mit den Standardwerten nicht einverstanden sind. In vielen F!llen kDnnen Sie mit den Feldeigenschaften das Erscheinungsbild Ihrer Tabelle verbessern. So ist es beispielsweise empfehlenswert, Zahlenfelder, die Prozentzahlen speichern, auch im Prozentformat anzeigen zu lassen. Tabelle 4.3 enth!lt eine Pbersicht ,ber alle Feldeigenschaften und gibt an, bei welchen Felddatentypen sie ver!ndert werden kDnnen.
Standardwerte !ndern Welche Eigenschaften f r welche Felddatentypen?
Felddatentypen und deren Eigenschaften
Feldeigenschaft
Text
Memo
Zahl
Datum/ Uhrzeit
W!hrung
AutoWert
Ja/Nein
OLEObjekt
Hyperlink
FeldgrDße
Ja
Nein
Ja
Nein
Nein
Ja
Nein
Nein
Nein
Neue Werte
Nein Nein
Nein Nein
Nein
Ja
Nein
Nein
Nein
Format
Ja
Ja
Ja
Ja
Ja
Ja
Nein
Ja
Dezimalstellen
Nein Nein
Ja
Nein
Ja
Nein
Nein
Nein
Nein
Eingabeformat
Ja
Nein
Ja
Ja
qJa
Nein
Nein
Nein
Nein
Beschriftung
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Standardwert
Ja
Ja
Ja
Ja
Ja
Nein
Ja
Nein
Ja
G,ltigkeitsregel
Ja
Ja
Ja
Ja
Ja
Nein
Ja
Nein
Ja
G,ltigkeitsmeldung
Ja
Ja
Ja
Ja
Ja
Nein
Ja
Nein
Ja
Eingabe erforderlich
Ja
Ja
Ja
Ja
Ja
Nein
Ja
Ja
Ja
Leere Zeichenfolge
Ja
Ja
Nein Nein
Nein
Nein
Nein
Nein
Ja
Indiziert
Ja
Nein
Ja
Ja
Ja
Ja
Ja
Nein
Nein
Steuerelement anzeigen
Ja
Nein
Ja
Nein
Nein
Nein
Ja
Nein
Nein
Ja
Tabelle 4.3 185
Tabellen
Die Tabelle verdeutlicht, dass sich nur die Beschriftung f,r alle Felddatentypen festlegen l!sst. Die Zusammenstellung aller weiteren Feldeigenschaften variiert mit dem Felddatentyp. Die folgenden Abschnitte beschreiben die Feldeigenschaften im Einzelnen.
Steuerelement anzeigen
Bei Text-, Zahl- und Ja/Nein-Feldern gibt es die Eigenschaft Steuerelement anzeigen. Sie kDnnen diese Eigenschaft erst einsehen, wenn Sie in den zus!tzlichen Feldeigenschaften das Register Nachschlagen aktivieren. Mit dieser Eigenschaft kDnnen Sie einen Steuerelementtyp festlegen, den Access standardm!ßig in Datenbl!ttern, Formularen und Berichten verwendet. So kDnnen Sie beispielsweise f,r Ja/Nein-Felder ausw!hlen, dass diese standardm!ßig als Kontrollk!stchen angezeigt werden. Wenn Sie f,r diese Eigenschaft einen der Eintr!ge Kombinationsfeld oder Listenfeld aus der Liste w!hlen, dann erscheinen im Register Nachschlagen weitere Eigenschaften, die nicht in Tabelle 4.3 aufgef,hrt sind. Es handelt sich hierbei um Eigenschaften, die nur im Zusammenhang mit dem Felddatentyp Nachschlage-Assistent interessant sind. Dieser Assistent und die entsprechenden Eigenschaften werden in einem eigenen Abschnitt weiter unten in diesem Kapitel besprochen.
Feldgr&ße bei Textfeldern Die FeldgrDße kann nur bei Text- und Zahl-Feldern beeinflusst werden. Bei Textfeldern bestimmt die FeldgrDße die maximale Anzahl der Zeichen, die eingegeben werden kDnnen. Beachten Sie, dass es sich hierbei lediglich um eine Limitierung f,r die Dateneingabe handelt. Access speichert in der Tabelle nur diejenigen Zeichen, die auch wirklich eingegeben wurden. Der Speicherbedarf von Textfeldern ist also dynamisch.
Feldgr&ße bei Zahlenfeldern Die Feldgrße bestimmt den Zahlentyp
Bei Zahlenfeldern bestimmt die FeldgrDße den Zahlentyp. Der Zahlentyp beeinflusst den Wertebereich und die Genauigkeit von Zahlenfeldern erheblich. Tabelle 4.4 enth!lt eine Aufstellung aller FeldgrDßen.
9bersicht ber die Feldgr&ßen fr Zahlenfelder
FeldgrDße
Wertebereich
Dezimalstellen
Speicherbedarf
Byte
0 bis 255
Keine
1 Byte
Integer
-32.768 bis 32.767
Keine
2 Byte
Long Integer
-2.147.483.648 bis 2.147.483.647
Keine
4 Byte
7
4 Byte
38
Single
38
-3,402823 x 10 bis 3,402823 x 10
186
Feldeigenschaften
9bersicht ber die Feldgr&ßen fr Zahlenfelder (Forts.)
FeldgrDße
Wertebereich
Dezimalstellen
Speicherbedarf
Double
-1,79769313486232 x 10308 bis 1,79769313486232 x 10308
15
8 Byte
Dezimal
-1 x 1028 bis 1 x 1028
28
12 Byte
Replikations-ID
Wird vom System verwaltet
Irrelevant
16 Byte Tabelle 4.4
W!hlen Sie die FeldgrDße so, dass einerseits alle erforderlichen Zahlen eingegeben werden kDnnen und andererseits mDglichst wenig Speicherplatz verbraucht wird. Access setzt die FeldgrDße von Zahlenfeldern standardm!ßig auf Long Integer. Diese FeldgrDße speichert keine Dezimalzahlen. Wenn Sie Dezimalzahlen mit hDchster Genauigkeit speichern wollen, dann !ndern Sie die FeldgrDße auf Double. Wenn Sie nur Dezimalzahlen mit geringerer Genauigkeit benDtigen, sollten Sie die FeldgrDße auf Single !ndern, um Speicherplatz zu sparen. Sie verf,gen ,ber drei FeldgrDßen, die nur ganze Zahlen speichern. Beachten Sie, dass die FeldgrDße Byte nur positive Zahlen im Bereich von 0 bis 255 speichert und mit einem Byte den geringsten Speicherplatz benDtigt. Access setzt die FeldgrDße von AutoWert-, Datum/Uhrzeit- und W7hrung-Feldern automatisch. Es verwaltet AutoWert-Felder intern als Zahlenfelder mit dem Format Long Integer. Sie benDtigen diese Information, wenn Sie die referenzielle Integrit!t f,r AutoWert-Felder definieren wollen.
Feldgrße ausw!hlen Standardeinstellung
Ganze Zahlen
AutoWert-Felder
Datum/Uhrzeit-Felder werden intern aus zwei Long-Integer-Feldern zusammengesetzt. W7hrung-Felder entsprechen der FeldgrDße Double. Sofern Sie bereits Daten in eine Tabelle eingegeben haben und die FeldgrDße nachtr!glich !ndern wollen, kann ein Datenverlust entstehen. Wenn Sie beispielsweise die FeldgrDße von Double in Long Integer !ndern, rundet Access die gespeicherten Werte und schneidet Dezimalstellen ab. Wenn Sie den Wertebereich eines Zahlenfeldes verkleinern und die gespeicherten Werte außerhalb des neuen Wertebereichs liegen, zeigt Access eine Warnung an. Sofern Sie die Warnung mit OK best!tigen, ersetzt Access die Werte durch Nullwerte. Die Zuweisung eines Nullwerts entspricht dem Leeren des Zahlenfeldes. Das Zahlenfeld hat anschließend keinen Wert mehr (also auch nicht den Wert 0).
Hinweis
Wertebereich verkleinern
Beachten Sie auch die Hinweise zum nachtr!glichen 0ndern der Tabellendefinition weiter unten in diesem Kapitel. 187
Tabellen
Format Mit dem Format beeinflussen Sie die Anzeige eines Datenfeldes. So l!sst sich beispielsweise ein Zahlenfeld f,r wissenschaftliche und technische Anwendungen auch als Exponentialzahl anzeigen. Sie kDnnen sogar verschiedene Formate f,r positive und negative Zahlen definieren. So lassen sich beispielsweise negative Werte in roter Schrift anzeigen.
Anzeigeformate in Formularen und Berichten
Access verwendet die in der Tabellendefinition festgelegten Anzeigeformate als Standard f,r die Darstellung in Datenbl!ttern, Formularen und Berichten. Es lohnt sich daher, das Anzeigeformat sorgf!ltig zu w!hlen. Sie brauchen das Anzeigeformat dann in Formularen und Berichten wahrscheinlich nur in Ausnahmef!llen zu !ndern.
Standardformate
Access h!lt eine ganze Reihe von vorderfinierten Anzeigeformaten bereit, die Sie direkt aus dem Kombinationsfeld Format w!hlen kDnnen. Tabelle 4.5 enth!lt eine Pbersicht ,ber diese Standardformate.
Standardanzeigeformate von Access
188
Felddatentyp
Format
Bedeutung
Text
Keine Standardformate
Memo
Keine Standardformate
Zahl
Allgemeine Zahl
Zeigt keine Tausender-Trennzeichen an. Alle eingegebenen Dezimalstellen werden angezeigt
W!hrung
Zeigt das W!hrungssymbol (z.B. DM), Tausender-Trennzeichen und zwei Dezimalstellen an
Euro
Zeigt das Euro-Symbol, TausenderTrennzeichen und zwei Dezimalstellen an
Festkommazahl
Zeigt mindestens eine Ziffer und zwei Dezimalstellen an
Standardzahl
Zeigt Tausender-Trennzeichen und zwei Dezimalstellen an
Prozentzahl
Multipliziert eingegebene Werte mit 100 und zeigt das Prozentzeichen sowie zwei Nachkommastellen an
Feldeigenschaften
Standardanzeigeformate von Access (Forts.)
Felddatentyp
Format
Bedeutung
Exponentialzahl
Zeigt Zahlen in der wissenschaftlichen Notation an. Auf das große E folgt die Zehnerpotenz
Datum/Uhrzeit Standarddatum
Zeigt entweder eine Zeit oder ein Datum an
Datum, lang
Entspricht dem langen Datumsformat aus den L7ndereinstellungen der Systemsteuerung von Windows
Datum, mittel
Zeigt Werte in der Form 05. Okt. 01 an
Datum, kurz
Entspricht dem kurzen Datumsformat aus den L7ndereinstellungen der Systemsteuerung von Windows
Zeit, lang
Entspricht dem Zeitformat aus den L7ndereinstellungen der Systemsteuerung von Windows
Zeit, 12 Std.
Z!hlt Stunden nur bis 12 und markiert sie mit AM. Zieht von den Stunden 13 bis 24 den Wert 12 ab und markiert sie mit PM.
Zeit, 24 Std.
Zeigt alle 24 Stunden an
W!hrung
Wie bei Zahl
AutoWert
Wie bei Zahl
Ja/Nein
Ja/Nein
Zeigt Ja oder Nein an.
Wahr/Falsch
Zeigt Wahr f,r Ja und Falsch f,r Nein an
Ein/Aus
Zeigt Ein f,r Ja und Aus f,r Nein an
OLE-Objekt
Keine Formatierung mDglich
Hyperlink
Keine Standardformate Tabelle 4.5
189
Tabellen
Individuelle Formate definieren
Neben den oben beschriebenen Standardformaten kDnnen Sie auch individuelle Formate zusammenstellen. Dies ist besonders f,r die Darstellung von Zahlen interessant. Eine Besonderheit der Anzeigeformate f,r Zahlenwerte besteht darin, dass Sie f,r positive Werte, negative Werte, Nullen und Nullwerte getrennte Formate definieren kDnnen.
Besonderheiten bei Datumsangaben Falls Sie bei Datumsangaben mit zweistelligen Jahreszahlen arbeiten, sollten Sie eine Besonderheit beachten. Access XP interpretiert alle Datumsangaben mit zweistelligen Jahreszahlen vom 01.01.00 bis zum 31.12.29 als Daten des 21. Jahrhunderts, also als 01.01.2000 bis zum 31.12.2029. Die Angaben vom 01.01.30 bis 31.12.99 werden hingegen als Daten des 20. Jahrhunderts aufgefasst. Dies entspricht also den Daten vom 01.01.1930 bis zum 31.12.1999. Um allen Missverst!ndnissen vorzubeugen, arbeiten Sie am besten von Beginn an mit vierstelligen Datumsangaben.
Dezimalstellen Zwei Dezimalstellen sind Standard
Beschriftung
Access zeigt beim Anzeigeformat Allgemeine Zahl immer alle eingegebenen Dezimalstellen an. Bei allen anderen Anzeigeformaten f,r numerische Daten zeigt Access standardm!ßig zwei Dezimalstellen an. Dies entspricht der Einstellung der Eigenschaft Dezimalstellen auf Automatisch. Mithilfe des Kombinationsfeldes kDnnen Sie die Anzahl der anzuzeigenden Stellen jedoch auch auf Werte zwischen 0 und 15 !ndern. Sofern Sie mehr Dezimalstellen eingeben, als Access anzeigt, wird gerundet. Bei einer Dezimalstelle wird beispielsweise der Wert 1,55 auf 1,6 gerundet. Access rundet negative Zahlen wie beispielsweise -1,66 auf den n!chstkleineren Wert, also -1,7. Access zeigt im Tabellenfenster standardm!ßig den Feldnamen als Spalten,berschrift an. Wenn Sie eine andere Beschriftung w,nschen, dann tragen Sie diese in das gleichnamige Eingabefeld ein. In Formularen setzt Access die Beschriftung als Bezeichnung f,r das verbundene Steuerelement ein, welches das Datenfeld anzeigt.
Eingabeformat Eingabeformate standardisieren die Eingaben des Anwenders
190
Mit der Eingabeformat-Eigenschaft kDnnen Sie veranlassen, dass Access die Eingaben des Anwenders automatisch formatiert. So kDnnen Sie beispielsweise bei Textfeldern nur die Eingabe der Buchstaben A bis Z erlauben. Eingabeformate eignen sich in erster Linie f,r solche Datenfelder, die standardisierte Eingaben aufnehmen sollen. Das typische Beispiel hierf,r ist die ISBN-Nummer im Buchbereich, die stets den gleichen Aufbau hat.
Feldeigenschaften
Bei Text- und Datum/Uhrzeit-Feldern kDnnen Sie die Definition von Eingabeformaten mit dem gleichnamigen Assistenten vereinfachen. Zum Start dieses Assistenten markieren Sie die Eingabeformat-Eigenschaft und klicken auf das Editor-Symbol.
EingabeformatAssistent starten
Abb. 4.8 Der EingabeformatAssistent
Der Eingabeformat-Assistent ermDglicht nicht nur die Auswahl eines vordefinierten Musters, sondern vereinfacht auch die Definition individueller Eingabeformate. Sie kDnnen Ihre Eingabeformate mit dem Assistenten testen, bevor Sie sie in die Tabellendefinition ,bernehmen.
Individuelle Eingabeformate definieren
Beschriftung Access zeigt im Tabellenfenster standardm!ßig den Feldnamen als Spalten,berschrift an. Wenn Sie eine andere Beschriftung w,nschen, dann tragen Sie diese in das gleichnamige Eingabefeld ein. In Formularen und Berichten setzt Access die Beschriftung standardm!ßig als Bezeichnung f,r das verbundene Steuerelement ein, welches das Datenfeld anzeigt.
Spalten berschriften im Datenblatt
Standardwert Standardwerte eignen sich zur Initialisierung von Feldern, die h!ufig denselben Wert annehmen. Access weist den Datenfeldern bei der Neuanlage von Datens!tzen automatisch den Standardwert zu. 191
Tabellen
Access initialisiert Zahlen- und Datum/Uhrzeit-Felder standardm!ßig mit dem Wert 0. Wenn Sie keine Initialisierung dieser Felder w,nschen, dann lDschen Sie den Standardwert. Ja/Nein-Felder werden standardm!ßig mit Nein initialisiert. Sie kDnnen in das Feld f,r den Standardwert konstante Werte oder auch Ausdr,cke eingeben. In beiden F!llen m,ssen Sie jedoch darauf achten, dass der Datentyp der Konstanten oder des Ausdrucks mit dem Felddatentyp ,bereinstimmt. Access ,bernimmt den Standardwert eines Datenfeldes automatisch in die gleichnamige Eigenschaft des Steuerelements eines Formulars oder Berichts, wenn diese neu angelegt werden. Sie m,ssen die entsprechenden Werte in Formularen und Berichten nur dann manuell !ndern, wenn Sie nachtr!glich einen neuen Standardwert in die Tabellendefinition einsetzen.
Tipp
Access erleichtert die Eingabe von Ausdr,cken f,r die Standardwert-Eigenschaft ,ber den Ausdrucks-Editor. Sie kDnnen den Editor durch einen Klick auf das gleichnamige Symbol starten, w!hrend die Standardwert-Eigenschaft aktiv ist. In Kapitel 11 Mit Bildern und anderen Objekten arbeiten dieses Buchs finden Sie eine detaillierte Beschreibung des Ausdrucks-Editors.
Gltigkeitsregel Mit der G,ltigkeitsregel kDnnen Sie Eingaben in ein Datenfeld ,berpr,fen. Die G,ltigkeitsregel ist ein logischer Ausdruck. Access akzeptiert die Eingabe in das Datenfeld nur dann, wenn die G,ltigkeitsregel erf,llt ist. In allen anderen F!llen zeigt es die G,ltigkeitsmeldung an und weist die Eingabe zur,ck.
G ltigkeitsregel
berpr fen
Wenn Sie G,ltigkeitsregeln f,r Datenfelder einer bereits bestehenden Tabelle !ndern, dann kann es vorkommen, dass einige Daten die G,ltigkeitsregel verletzen. In diesem Fall kommt es zu einer Fehlermeldung beim Speichern der Tabelle und Access hebt die G,ltigkeitsregel automatisch wieder auf. Sie wird damit unwirksam. Um dies zu vermeiden, sollten Sie die G,ltigkeitsregel f,r die bereits gespeicherten Daten ,berpr,fen. Der Befehl Bearbeiten > G1ltigkeitsregeln Testen ,bernimmt dies automatisch. Sollten einige Datens!tze die G,ltigkeitsregel verletzen, macht eine entsprechende Meldung darauf aufmerksam. In diesem Fall sollten Sie eine Abfrage entwerfen, um die fehlerhaften Datens!tze aufzusp,ren. Weitere Hinweise zum Entwurf von Abfragen finden Sie in Kapitel 5 Abfragen dieses Buchs.
Tipp
192
Wenn Sie nicht mehr genau wissen, welche Daten in ein Feld eingegeben werden d,rfen, dann bet!tigen Sie die E-Taste. Diese Taste macht Ihre Eingaben r,ckg!ngig und stellt den urspr,nglichen Feldinhalt wieder her. Dies gilt auch dann, wenn der urspr,ngliche Feldinhalt einer nachtr!glich eingef,hrten G,ltigkeitsregel nicht entspricht.
Feldeigenschaften
Tabelle 4.6 zeigt einige typische G,ltigkeitsregeln. Sie enth!lt auch einige Beispiele f,r G,ltigkeitsregeln, die auf andere Felder der Tabelle Bezug nehmen. Achten Sie darauf, dass Sie Feldnamen in eckige Klammern setzen m,ssen.
Typische G ltigkeitsregeln
Beispiele fr Gltigkeitsregeln
G,ltigkeitsregel
Bedeutung
>=0
Erlaubt nur positive Werte
>0 Und <1
Eignet sich, um Prozentzahlen auf den Bereich zwischen 0 und 99,99% einzuschr!nken
>=[Ist Abgabe]
Der Wert muss grDßer oder gleich dem Wert des Feldes Ist Abgabe sein
>=#01.09.1995#
Das Datum muss grDßer oder gleich dem 1. September 1995 sein Tabelle 4.6
Wenn Sie Datumswerte als Konstanten eingeben, dann m,ssen Sie diese in Doppelkreuze (#) klammern. Sie m,ssen diese Regel beachten, da Access in Ausdr,cken den Punkt als besonderes Zeichen interpretiert. Beachten Sie bei der Bildung von G,ltigkeitsregeln auch die Hinweise zur Bildung von Ausdr,cken in Kapitel 13 Makroprogrammierung dieses Buchs. Access erleichtert die Eingabe von Ausdr,cken f,r die G1ltigkeitsregel-Eigenschaft ,ber den Ausdrucks-Editor. Sie kDnnen den Editor starten, indem Sie bei aktivierter Standardwert-Eigenschaft auf das Editor-Symbol klicken. In Kapitel 13 Makroprogrammierung dieses Buchs finden Sie eine detaillierte Beschreibung des AusdrucksEditors.
Datumswerte
Tips & Tricks
Gltigkeitsmeldung Access zeigt die G,ltigkeitsmeldung an, wenn die Eingabe in ein Datenfeld die G,ltigkeitsregel verletzt. Sie kDnnen dann eine neue Eingabe versuchen oder den Prozess mit der E-Taste abbrechen.
Eingabe erforderlich Die Eigenschaft Eingabe erforderlich ist f,r alle Felddatentypen außer AutoWert-Feldern verf,gbar. Wenn Sie diese Eigenschaft auf Ja einstellen, dann erzwingt Access eine Eingabe in dieses Datenfeld. Solange der Anwender keine Eingabe in dieses Feld vorgenommen hat, kann Access den Datensatz nicht speichern.
Erzwingt die Eingabe in ein Datenfeld
193
Tabellen
Die Eigenschaft Eingabe erforderlich wird h!ufig gleichzeitig mit einer G,ltigkeitsregel verwendet. Auf diese Weise ist es mDglich, die Eingabe in ein Datenfeld bei gleichzeitiger Pbereinstimmung mit einer G,ltigkeitsregel zu erzwingen.
Leere Zeichenfolge Verhindert Zeichenfolgen der L!nge Null
Die Eigenschaft Leere Zeichenfolge ist nur f,r Text- und Memo- und Hyperlink-Felder verf,gbar. Wenn Sie diese Eigenschaft auf Nein (das ist der Standardwert) einstellen, dann unterbindet Access die Eingabe von Zeichenfolgen der L!nge Null in das Text- oder Memo- oder Hyperlink-Feld. Wenn Sie die Eigenschaft auf Ja einstellen, dann kann der Anwender zwei aufeinanderfolgende Anf,hrungszeichen ("") und damit eine Zeichenfolge der L!nge Null eingeben.
Indiziert Die Standardeinstellung f,r die Eigenschaft Indiziert ist Nein. Sie benDtigen dieses Feld, wenn Sie einen ein- oder mehrdeutigen Index definieren wollen. Außerdem setzt Access bei der Definition eines Prim!rschl,ssels automatisch die Eigenschaft auf Ja (Ohne Duplikate). F,r mehrdeutige Indizes w!hlen Sie den Eintrag Ja (Duplikate m4glich). Sie nehmen die Definition von Schl,sseln am besten ,ber den Dialog Indizes vor, der im folgenden Abschnitt beschrieben wird.
Neue Werte Die Feldeigenschaft Neue Werte gibt es nur bei AutoWert-Feldern. Bei der Standardeinstellung Inkrement weist Access AutoWert-Feldern automatisch aufsteigende Zahlenwerte zu. Das Feld erh!lt damit die Werte 1, 2, 3 usw. Alternativ kDnnen Sie auch die Einstellung Zufall w!hlen. Access weist dem AutoWert-Feld dann Zufallszahlen aus dem Wertebereich der FeldgrDße Long Integer zu. Das AutoWert-Feld kann damit sowohl positivie als auch negative Werte erhalten. Beim Replizieren einer Datenbank weist Access AutoWert-Feldern automatisch Zufallszahlen zu, damit die Eindeutigkeit eines Schl,ssels ,ber mehrere Datenbanken hinweg gew!hrleistet ist. Weitere Hinweise zum Replizieren von Datenbanken finden Sie in Kapitel 9 Eine Datenbank verwalten.
Schl/ssel definieren Indizes bzw. Schl ssel beschleunigen den Datenzugriff
194
Die Definition von Indizes bzw. Schl,sseln beschleunigt in der Regel den Zugriff auf die Daten einer Tabelle. Access verwendet einmal definierte Indizes automatisch, wenn es die Anwendung erlaubt. Andererseits erfordert die Pflege von Indizes w!hrend der Bearbeitung von Daten Rechenzeit, Arbeits- und Festplattenspeicher.
Schlssel definieren
Sie sollten Indizes daher f,r alle Felder definieren, die Sie h!ufig zur Datensuche oder zur Sortierung benDtigen. Wenn Sie eine bestimmte Sortierreihenfolge nur selten benDtigen, sollten Sie lieber eine Abfrage definieren. Das Ausf,hren einer Abfrage benDtigt zwar verh!ltnism!ßig mehr Zeit als der sortierte Zugriff ,ber ein Schl,sselfeld, der Zeitbedarf ist jedoch auf einen Zeitpunkt beschr!nkt. Da Access Abfragen im Unterschied zu Indizes nicht st!ndig pflegen muss, belasten Abfragen das System im normalen Ablauf weniger. Neben der h!ufigen Datensuche und Sortierung spielt auch die relationale Verkn,pfung eine wichtige Rolle zur Bildung von Indizes. Sofern Sie zwei Tabellen relational verkn,pfen wollen, m,ssen Sie zumindest f,r eine der beiden Tabellen einen Prim!r- oder einen Sekund!rschl,ssel definieren.
Das Aktualisieren von Indizes bentigt Rechenzeit
Schl ssel werden f r die relationale Verkn pfung von Tabellen bentigt
Prim%rschlssel definieren Sie sollten f,r jede Tabelle einen Prim!rschl,ssel definieren. Der Prim!rschl,ssel beschleunigt den Zugriff auf Ihre Daten. Außerdem ermDglicht der Prim!rschl,ssel die eindeutige Identifikation eines jeden Datensatzes einer Tabelle. Der Prim!rschl,ssel nimmt eine Sonderstellung ein. Access erlaubt nur einen Prim!rschl,ssel je Tabelle, der stets einen eindeutigen Index bildet. Wenn Sie versuchen, einen Schl,sselwert doppelt einzugeben, meldet Access einen Fehler und verhindert das Speichern Ihrer Eingabe. Außerdem wird der Prim!rschl,ssel automatisch mit der Tabelle aktiviert. Alle anderen Schl,ssel werden nur bei Bedarf aktiviert.
Der Prim!rschl ssel beschleunigt den Zugriff auf die Daten Nur ein Prim!rschl ssel je Tabelle
Die Definition des Prim!rschl,ssels erfolgt in der Entwurfsansicht des Tabellenfensters. Sie haben folgende MDglichkeiten: Markieren Sie ein oder mehrere Datenfelder, die den Prim!rschl,ssel bilden sollen, und w!hlen Sie den Befehl Bearbeiten > Prim7rschl1ssel. Alternativ kDnnen Sie auch auf das Prim7rschl1ssel-Symbol der Symbolleiste klicken. Eine weitere Alternative besteht in der Definition des Prim!rschl,ssels im Dialog Indizes. Sie finden die Beschreibung dieses Dialogs weiter unten in diesem Kapitel. Wenn Sie das Tabellenfenster schließen oder in die Datenblattansicht wechseln, pr,ft Access zun!chst, ob die folgenden Bedingungen f,r den Prim!rschl,ssel erf,llt sind:
Bedingungen f r den Prim!rschl ssel
Sofern die Tabelle bereits Daten enth!lt, d,rfen keine doppelten Schl,sselwerte vorhanden sein. Access akzeptiert keine Nullwerte in den Feldern des Prim!rschl,ssels. Das bedeutet, dass alle Felder, die den Prim!rschl,ssel bilden, Daten enthalten m,ssen.
195
Tabellen
Prim!rschl,ssel kDnnen nur f,r AutoWert-, Zahl-, Text-, Datum/Uhrzeit- und W7hrung-Felder definiert werden. Access erlaubt zwar die Definition f,r ein Ja/Nein-Feld, sie ist jedoch unsinnig. Ja/Nein-Felder kDnnen nur zwei Zust!nde annehmen, was aufgrund des Gebots der Eindeutigkeit des Prim!rschl,ssels nur zwei Datens!tze je Tabelle erlaubt. Wenn eine dieser Bedingungen nicht erf,llt ist, akzeptiert Access Ihre Schl,sseldefinition nicht und kehrt in die Entwurfsansicht zur,ck. Sie m,ssen dann den Datenbestand so ver!ndern, dass der gew,nschte Schl,ssel definiert werden kann, oder Sie definieren einen neuen Prim!rschl,ssel.
Hinweis
Automatischer Prim!rschl ssel
Tipp
Der Prim!rschl,ssel spielt f,r Access eine so wichtige Rolle, dass es beim Verlassen der Entwurfsansicht einer neuen Tabelle darauf hinweist, wenn noch kein Prim!rschl,ssel definiert wurde. Nur wenn Sie auf OK klicken und die anschließende Frage, ob Access selbst einen Prim!rschl,ssel anlegen soll, mit Nein beantworten, speichert Access die Tabelle ohne Prim!rschl,ssel. Wenn Access selbst einen Prim!rschl,ssel anlegen soll, pr,ft es zun!chst, ob Ihre Tabelle ein AutoWert-Feld enth!lt. Falls ja, markiert es dieses AutoWert-Feld als Prim!rschl,ssel. Andernfalls f,gt Access der Tabelle ein AutoWert-Feld mit dem Namen ID (f,r: Identifikation) hinzu und markiert dieses als AutoWert-Feld. Eine der Bedingungen f,r die Anlage eines Prim!rschl,ssels ist, dass die Werte der entsprechenden Datenfelder eindeutig sind. Wenn eine Tabelle bereits Daten enth!lt, dann kDnnen Sie Duplikate leicht mit dem Assistenten zur Duplikatsuche ermitteln. Die entstehende Abfrage gibt Ihnen die MDglichkeit, Duplikate vor der Definition des Prim!rschl,ssels zu eliminieren. Weitere Hinweise zum Assistenten zur Duplikatsuche finden Sie in Kapitel 5 Abfragen dieses Buchs.
Zusammengesetzte Prim%rschlssel Prim!rschl ssel aus mehreren Datenfeldern zusammensetzen
Sie kDnnen Prim!rschl,ssel aus einem oder mehreren Feldern zusammensetzen. Markieren Sie dazu eine Gruppe von Feldern und klicken dann auf das Schl1sselSymbol. Access erlaubt bei zusammengesetzten Prim!rschl,sseln das Mischen verschiedener Felddatentypen. Access sortiert zusammengesetzte Prim!rschl,ssel zun!chst nach dem obersten Datenfeld in der Entwurfsansicht. Sofern Sie eine andere Sortierung w,nschen, m,ssen Sie die Datenfelder vorher neu anordnen. Bei zusammengesetzten Prim!rschl,sseln m,ssen Sie f,r alle Datenfelder, die den Schl,ssel bilden, sicherstellen, dass sie keine Nullwerte enthalten. Die Eindeutigkeit muss hingegen nicht unbedingt f,r jedes einzelne Feld, sondern nur f,r die Feldkombinationen gew!hrleistet sein.
196
Wenn Sie beispielsweise einen Prim!rschl,ssel f,r ein Text- und ein Datumsfeld definieren, dann d,rfen durchaus gleiche Datumswerte vorkommen. In diesem Fall m,ssen sich jedoch die Textwerte unterscheiden. Tabelle 4.7 zeigt einige g,ltige und ung,ltige Kombinationen f,r dieses Beispiel.
Schlssel definieren
Wertebeispiele fr einen zusammengesetzten Prim%rschlssel
Datumswert
Textwert
Kombination g,ltig?
1.9.2001
Meier
Ja
1.9.2001
Schulze
Ja
1.9.2001
Schmidt
Ja
1.9.2001
Nein, da Nullwert
2.9.2001
Meier
Ja
2.9.2001
Meier
Nein, da Wiederholung
1.9.2001
M,ller
Ja
1.9.2001
Schulze
Nein, da Wiederholung
2.9.2001
Schulze
Ja Tabelle 4.7
Ein zusammengesetzter Prim!rschl,ssel hindert Sie nicht daran, f,r jedes der beteiligten Felder zus!tzlich noch einen Sekund!rschl,ssel zu definieren. Da Access nach dem ersten Feld des Prim!rschl,ssels generell aufsteigend sortiert, ist die Definition eines Sekund!rschl,ssels f,r dieses Feld jedoch nicht sinnvoll. Alle anderen Felder des Prim!rschl,ssels werden nur innerhalb gleicher Feldwerte des ersten Schl,sselfeldes sortiert. Hier kann die Definition von Sekund!rschl,sseln also durchaus sinnvoll sein.
Prim%rschlssel %ndern und l&schen Sie kDnnen den Prim!rschl,ssel einer Tabelle in der Entwurfsansicht des Tabellenfensters !ndern. Markieren Sie die Datenfelder, die den neuen Prim!rschl,ssel bilden sollen, und klicken Sie auf das Schl1ssel-Symbol oder w!hlen Sie den Befehl Bearbeiten > Prim7rschl1ssel aus der Men,leiste. Um einen Prim!rschl,ssel zu lDschen, markieren Sie alle Datenfelder, die Bestandteile des Prim!rschl,ssels sind. Klicken Sie dann auf das Prim7rschl1ssel-Symbol, um dessen Markierung aufzuheben. Gleichzeitig verschwindet die Anzeige des Schl1ssel-Symbols in der Indikatorspalte der Entwurfsansicht. Sofern die Tabelle als Master-Tabelle einer Beziehung mit oder ohne referenzieller Integrit!t eingesetzt wird, l!sst sich der Prim!rschl,ssel nicht mehr !ndern. Sie m,ssen in diesem Fall zun!chst die Beziehung lDschen, bevor Sie den Prim!rschl,ssel !ndern kDnnen.
Hinweis
197
Tabellen
Sekund%rschlssel Access verwendet Sekund!rschl,ssel automatisch bei der Suche oder Abfrage von Datenbest!nden. Sekund!rschl,ssel kDnnen beide Prozesse erheblich beschleunigen, benDtigen andererseits jedoch Rechenzeit, Arbeits- und Festplattenspeicher bei der Datenbearbeitung. Sie sollten daher sorgf!ltig abw!gen, f,r welche Datenfelder Sie Sekund!rschl,ssel definieren.
Sekund!rschl ssel sp!ter erg!nzen
Eigenschaft Indiziert
Hinweis
Sofern Sie zun!chst auf die Definition eines Sekund!rschl,ssels verzichten und erst sp!ter bemerken, dass Sie auf ein Datenfeld h!ufig in sortierter Reihenfolge zugreifen m,ssen, kDnnen Sie die Schl,sseldefinition jederzeit nachholen. Die Definition des Sekund!rschl,ssels erfolgt mit der Eigenschaft Indiziert. Wenn Sie den Eintrag Ja (Duplikate m4glich) aus dem Kombinationsfeld w!hlen, definieren Sie einen Sekund!rschl,ssel, der auch doppelte Schl,sselwerte erlaubt. Der Eintrag Ja (Ohne Duplikate) definiert hingegen einen eindeutigen Sekund!rschl,ssel, der keine doppelten Schl,sselwerte erlaubt. Sekund!rschl,ssel kDnnen nur f,r AutoWert-, Zahl-, Text-, Datum/Uhrzeit- und W7hrung-Felder definiert werden. Wenn Sie einen eindeutigen Sekund!rschl,ssel definieren und bereits Daten eingegeben haben, dann akzeptiert Access die Schl,sseldefinition nur dann, wenn es keine doppelten Schl,sselwerte findet. Andernfalls m,ssen Sie den Datenbestand zun!chst ,berarbeiten oder etwa einen zusammengesetzten Schl,ssel definieren. Wenn Sie ein einzelnes Feld als Prim!rschl,ssel ausgew!hlt haben, dann setzt Access die Eigenschaft Indiziert automatisch auf den Wert Ja (Ohne Duplikate). Sie kDnnen diese Einstellung nicht !ndern, da sich ein einzelnes Feld nicht gleichzeitig zur Bildung eines eindeutigen und mehrdeutigen Schl,ssels verwenden l!sst. Die Verwendung des Feldes ist dann nur noch in zusammengesetzten Sekund!rschl,sseln mDglich.
9bersicht aller Indizes Der Dialog Indizes
Der Dialog Indizes vermittelt eine gute Pbersicht ,ber alle Indizes einer Tabelle. Er ist außerdem die einzige MDglichkeit, um zusammengesetzte Sekund!rschl,ssel f,r eine Tabelle zu definieren. Zum Rffnen des Dialogs gehen Sie wie folgt vor: W!hlen Sie den Befehl Ansicht > Indizes aus der Men,leiste oder klicken Sie auf das Indizes-Symbol.
(berblick der Schl sseldefinitionen
198
Der Dialog Indizes zeigt alle definierten Prim!r- und Sekund!rschl,ssel der Tabelle an. Er gibt daher eine bessere Pbersicht aller Schl,sseldefinitionen als das Tabellenentwurfsfenster.
Schlssel definieren
Abb. 4.9 Der Dialog Indizes
Der Dialog enth!lt Spalten f,r den Indexnamen, den Feldnamen und die Sortierreihenfolge f,r jedes Datenfeld, nach dem indiziert wird. Bei zusammengesetzten Schl,sseln wird nur beim jeweils ersten Datenfeld der Indexname eingegeben. Bei allen anderen Datenfeldern des zusammengesetzten Schl,ssels bleibt der Eintrag f,r den Indexnamen leer. Im unteren Teil des Dialogs zeigt Access die so genannten Indexeigenschaften des aktuellen Schl,ssels an. Access markiert den aktuellen Schl,ssel durch die Darstellung des Dreiecks in der Indikatorspalte des Dialogs Indizes. Die Indexeigenschaften sind Prim7rschl1ssel, Eindeutig und Nullwerte ignorieren. Wenn Sie die Eigenschaft Nullwerte ignorieren auf Ja einstellen, dann ber,cksichtigt Access bei der Bildung nur solche Datens!tze, die im Schl,sselfeld einen Wert haben. Datens!tze mit Nullwerten im Schl,sselfeld werden dabei ignoriert. Bei Tabellen mit sehr vielen Nullwerten in einem Schl,sselfeld kDnnen Sie so Speicherplatz sparen. Access zeigt die Indexeigenschaften bei zusammengesetzten Schl,sseln nur dann an, wenn der Indexname markiert ist. Bei allen weiteren Datenfeldern des zusammengesetzten Schl,ssels bleibt der Bereich f,r die Indexeigenschaften leer. F,r die Indexeigenschaften gelten die folgenden Regeln:
Indexeigenschaften
Die Eigenschaft Nullwerte ignorieren
Regeln f r die Indexeigenschaften
Die Eigenschaft Prim7rschl1ssel kann nur beim Prim!rschl,ssel einer Tabelle auf Ja eingestellt werden. Bei Sekund!rschl,sseln hat die Eigenschaft Prim7rschl1ssel den Wert Nein. 199
Tabellen
Die Eigenschaft Eindeutig hat beim Prim!rschl,ssel stets den Wert Ja. Bei Sekund!rschl,sseln kDnnen Sie die Eigenschaft Eindeutig auf Ja (eindeutiger Schl,ssel) oder Nein (mehrdeutiger Schl,ssel) einstellen. Die Eigenschaft Nullwerte ignorieren hat beim Prim!rschl,ssel einer Tabelle stets den Wert Nein. Das bedeutet, dass bei Prim!rschl,sseln Nullwerte immer beachtet werden. Bei Sekund!rschl,sseln kDnnen Sie die Eigenschaft Nullwerte ignorieren nach den Bed,rfnissen Ihrer Anwendung selbst einstellen.
Dialog Indizes schließen
Das Schließen des Dialogs Indizes erfolgt genauso wie das Rffnen. Sie haben folgende MDglichkeiten: W!hlen Sie den Befehl Ansicht > Indizes aus der Men,leiste, oder klicken Sie auf das Indizes-Symbol oder f,hren Sie einen Doppelklick auf das Systemmen,feld des Dialogs durch.
Zusammengesetzte Sekund%rschlssel Mit Access kDnnen Sie Sekund!rschl,ssel definieren, die sich jeweils aus bis zu zehn Datenfeldern zusammensetzen. Zur Definition eines zusammengesetzten Sekund!rschl,ssels gehen Sie wie folgt vor:
200
1
Rffnen Sie den Dialog Indizes durch einen Klick auf die gleichnamige Schaltfl!che der Symbolleiste.
2
Geben Sie einen Indexnamen ein, der den Namenskonventionen von Access entspricht.
3
W!hlen Sie das erste Datenfeld aus dem Kombinationsfeld.
4
Ver!ndern Sie gegebenenfalls die Indexeigenschaften gem!ß den Erfordernissen Ihrer Anwendung.
5
Wechseln Sie in die Spalte Feldname der n!chsten Zeile des Dialogs Indizes, und lassen Sie das Eingabefeld f,r den Indexnamen leer.
6
W!hlen Sie das zweite Datenfeld aus dem Kombinationsfeld.
7
Fahren Sie mit den Schritten 5 und 6 fort, bis Sie alle Datenfelder f,r den zusammengesetzten Sekund!rschl,ssel bestimmt haben.
Tabellendefinition nachtr%glich %ndern
Abb. 4.10 Beispiel eines zusammengesetzten Sekund!rschl ssels
Weitere Einzelheiten zur Funktionsweise zusammengesetzter Schl,ssel finden Sie unter dem Stichwort Zusammengesetzte Prim7rschl1ssel weiter oben in diesem Kapitel. Weitere Einzelheiten zum Dialog Indizes finden Sie unter der Pberschrift 9bersicht aller Indizes weiter oben in diesem Kapitel.
Tabellendefinition nachtrglich ndern 0nderungen an der Tabellendefinition sind immer dann unproblematisch, wenn Sie noch keine Daten eingegeben haben. Sobald die Tabelle jedoch bereits Daten enth!lt, kDnnen bei der nachtr!glichen 0nderung der Tabellendefinition Datenverluste auftreten. Die folgenden Abschnitte beschreiben einige der Probleme und wie Sie sie vermeiden kDnnen. Die Probleme beim nachtr!glichen 0ndern der Tabellenstruktur sprechen daf,r, dass Sie vor der Tabellendefinition und der Dateneingabe das Datenmodell sorgf!ltig planen. Sp!tere 0nderungen sind immer zeitintensiv und unter Umst!nden mit Datenverlusten verbunden. Wenn Sie eine bereits bestehende Tabelle nachtr!glich !ndern wollen, dann markieren Sie den Tabellennamen im Datenbankfenster, und klicken Sie auf die Schaltfl!che Entwurf. Die Bearbeitung der Tabellendefinition ist nur dann erlaubt, wenn Access die Tabelle sperren kann. Dies gelingt nur, wenn weder Sie noch ein anderer Benutzer die Tabelle in Gebrauch habt. Sie sollten vorsichtshalber zuvor alle Abfragen, Formulare und Berichte, die auf die Tabelle zugreifen, schließen. Sie sollten vor jeder wie auch immer gearteten 0nderung an der Tabellendefinition unbedingt eine Datensicherung durchf,hren. Sichern Sie am besten nicht nur die Tabelle, die Sie modifizieren wollen, sondern gleich die ganze Datenbank. So verf,gen Sie im Ernstfall auch ,ber eine Datensicherung der Abfragen, Formulare, Berichte, Makros und Module, die auf die Tabelle zugreifen. Hinweise zum Sichern einer Datenbank finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs.
Entwurfsansicht ffnen
Hinweis
Datenbank vorher sichern
201
Tabellen
Felder einfgen Das Einf gen neuer Felder ist unproblematisch
Beim Einf,gen neuer Felder kann im Prinzip nichts passieren. Rffnen Sie das Tabellenfenster in der Entwurfsansicht und w!hlen den Befehl Einf1gen > Zeilen oder die Schaltfl!che Zeilen einf1gen. Wenn Sie das neue Feld direkt mit Daten f,llen wollen, dann kann Ihnen eine Aktualisierungsabfrage die Arbeit vielleicht erleichtern. Kapitel 5 Abfragen dieses Buchs enth!lt mehr zu diesem Thema. Denken Sie auch daran, das Feld in gegebenenfalls bereits vorhandene Formulare oder Berichte aufzunehmen.
Felder umbenennen Ge!nderte Feldnamen m ssen auch in anderen Datenbankobjekten ber cksichtigt werden
Das Umbenennen von Feldern ist ebenfalls recht problemlos. Sobald Sie das Feld umbenannt haben, m,ssen Sie diese 0nderung jedoch zus!tzlich in allen Abfragen, Formularen, Berichten, Makros und Modulen, in denen das Feld verwendet wird, ber,cksichtigen. Sonst entstehen beispielsweise in Formularen und Berichten Steuerelemente, die mit einem nicht mehr existierenden Feld verbunden sind.
Felder l&schen Das Lschen eines Datenfeldes lscht auch die in ihm gespeicherten Daten
Hinweis
Mit dem LDschen eines Feldes gehen auch dessen Daten verloren. Sie sollten das LDschen von Datenfeldern daher mit der angebrachten Sorgfalt planen.
Felddatentyp %ndern Beim 0ndern von Felddatentypen gibt es mitunter Schwierigkeiten bei der Datenkonvertierung. Das Gelingen einer solchen Operation h!ngt stets davon ab, von welchem in welchen Datentyp ein Feld ge!ndert wird und welche Daten bereits in dem Feld enthalten sind. Einige Hinweise zum Konvertieren von Zahlenfeldern unterschiedlicher Formate finden Sie im Abschnitt Feldeigenschaften weiter oben in diesem Kapitel. Die folgenden Abschnitte beschreiben die Besonderheiten beim Konvertieren eines Felddatentyps in einen anderen. Sie kDnnen den Datentyp eines Feldes nur dann !ndern, wenn es nicht als Verkn,pfungsfeld in einer Beziehung eingesetzt wird. Weitere Einzelheiten zu Beziehungen finden Sie weiter unten in diesem Kapitel. Wenn Sie Felddatentypen !ndern, und Access kann die Werte nicht in den neuen Felddatentyp umwandeln, dann zeigt es eine Warnung an. Die Warnung enth!lt die Angabe, wie viele Datens!tze sich nicht konvertieren lassen. Wenn Sie die Warnung mit einem Klick auf die Schaltfl!che OK best!tigen, f,hrt Access die Konvertierung soweit wie mDglich durch, wobei die nicht-konvertierbaren Daten verloren gehen. Access setzt in diesem Fall Nullwerte ein. Wenn Sie den Prozess hingegen durch einen Klick auf die gleichnamige Schaltfl!che abbrechen, kehrt Access zur Entwurfsansicht zur,ck, ohne irgendwelche Konvertierungen durchzuf,hren. Es zeigt in diesem Fall jedoch die neu eingestellten
202
Tabellendefinition nachtr%glich %ndern
Felddatentypen weiterhin an. Wenn Sie das Tabellenfenster schließen, ohne die 0nderungen zu speichern, stellt Access die urspr,ngliche Tabellendefinition wieder her. Dies ist der sicherste Weg, um Datenverluste zu vermeiden. Der Felddatentyp OLE-Objekt kann generell nicht in andere Felddatentypen konvertiert werden. Das Gleiche gilt f,r den umgekehrten Weg, das heißt, dass Access keinen Felddatentyp in OLE-Felder !ndern kann. Wenn Sie den Felddatentyp dennoch !ndern, gehen Ihre Daten verloren. Das 0ndern von Hyperlink-, Zahl-, AutoWert-, W7hrung- und Ja/Nein-Feldern in den Felddatentyp Text ist unproblematisch. Sie m,ssen lediglich sicherstellen, dass das Textfeld eine ausreichende L!nge aufweist. Beachten Sie, dass Sie nach der Konvertierung in den Felddatentyp Text mit den Zahlen keine Berechnungen mehr durchf,hren kDnnen. Wenn Sie ein Memo-Feld in ein Text-Feld !ndern, schneidet Access den Text ab, der die maximale L!nge des Textfeldes ,berschreitet.
OLE-Felder
&ndern in den Felddatentyp Text
Beim Konvertieren von Zahlenwerten verwendet Access das Format Allgemeine Zahl und beim Konvertieren von Datumswerten das Format Standarddatum. Das 0ndern von Textfeldern in Memo-Felder ist problemlos. Access ,bernimmt alle Textdaten in das Memo-Feld.
&ndern in den Felddatentyp Memo
F,r das 0ndern von Zahl-, AutoWert-, W7hrung- und Ja/Nein-Feldern in den Felddatentyp Memo gelten die gleichen Regeln wie f,r das 0ndern dieser Felder in den Felddatentyp Text (siehe oben). Text- und Memo-Felder lassen sich problemlos in die numerischen Felddatentypen Zahl oder W7hrung !ndern, sofern sie denn Zahlen- oder W!hrungswerte enthalten. Access f,hrt alle sinnvollen Konvertierungen automatisch durch. Textfelder, die keine sinnvollen Zahlenkombinationen enthalten, werden nat,rlich nicht konvertiert.
&ndern in den Felddatentyp Zahl oder W(hrung
Beim Konvertieren in den Datentyp Zahl ber,cksichtigt Access Tausender- und Dezimaltrennzeichen. Beim Konvertieren von W!hrungsfeldern gelten die Einstellungen aus der Systemsteuerung von Windows. Access konvertiert beispielsweise die Texte DM 50, 10E3 und 50% richtig. Das Konvertieren des Wertes 50% liefert allerdings nur dann das gew,nschte Ergebnis, wenn das Zielformat ein Zahlentyp mit Dezimalstellen ist. F,r nicht konvertierbare Texte setzt Access den Wert 0 ein. Access kann Text- und Memo-Felder, die g,ltige Formate enthalten, in Datum/Uhrzeit-Felder konvertieren. Die Datums- und Zeitangaben sollten sich jedoch nach dem in den L7ndereinstellungen der Systemsteuerung von Windows festgelegten Format richten.
&ndern in den Felddatentyp Datum/ Uhrzeit
Da Access Datum/Uhrzeit-Felder intern als numerische Felder verwaltet, ist auch das Konvertieren zwischen Datum/Uhrzeit- und Zahl-Feldern problemlos. Die Ergebnisse der Konvertierung sind jedoch nicht immer besonders einleuchtend. Sie sollten von dieser MDglichkeit nur dann Gebrauch machen, wenn Sie Access bereits sehr gut kennen. 203
Tabellen
&ndern in den Felddatentyp Ja/Nein
Das 0ndern von Text- und Memo-Feldern in Ja/Nein-Felder gelingt bei Textfeldern, die nur die Werte Ja, Nein, Ein, Aus, Wahr, Falsch, -1 oder 0 enthalten. Bei der Konvertierung numerischer Felder !ndert Access den Wert -1 in Ja und den Wert 0 in Nein.
&ndern in den Felddatentyp Hyperlink
Sie kDnnen Text- und Memo-Felder in Hyperlink-Felder umwandeln. Da Access Hyperlink-Felder intern als Texte speichert, treten w!hrend der Konvertierung hDchstens bei langen Texten Probleme auf. Hier kann es vorkommen, dass Access diese Texte abschneidet. Bei konvertierten Texten, die keinen g,ltigen Hyperlink enthalten, f,hrt erst das Anklicken des Hyperlinks zu einer Fehlermeldung.
Tabellen verkn/pfen Tabellen aufsplitten
Tabellen wieder zusammenf hren
Ein wichtiger Aspekt bei der Anlage von Tabellen ist die Vermeidung von unnDtigen Redundanzen. Bei diesem als Normalisierung bezeichneten Vorgang werden die Daten so in einzelne Komponenten aufgesplittet, dass logisch voneinander unabh!ngige Tabellen entstehen. Das spart Festplattenspeicher und verhindert Fehler bei der Datenpflege. Sie kDnnen diese Vorteile nur nutzen, weil Access auch den umgekehrten Weg erlaubt. Durch die relationale Verkn,pfung lassen sich die einzelnen Tabellen wieder zu einem sinnvollen Ganzen zusammenf,gen. Dieser Abschnitt beschreibt die Techniken zur Verkn,pfung von Tabellen. Mit Access 7.0 hat Microsoft einen Assistenten eingef,hrt, der Tabellen weitgehend automatisch optimiert. Ein Bestandteil der Optimierung durch den Assistenten zur Tabellenanalyse ist die Normalisierung von Tabellen. Sie finden die Beschreibung des Assistenten weiter unten in diesem Kapitel.
Relationale Verknpfung Sie kDnnen alle Tabellen einer Datenbank unabh!ngig voneinander betrachten und bearbeiten. Die Tabellen lassen sich bei Bedarf relational verkn,pfen und gemeinsam auswerten. Diese Form der relationalen Verkn,pfung findet in Abfragen, Formularen und Berichten statt. Diese eher lockere Bindung der Tabellen hat eine Reihe von Nachteilen. Zun!chst m,ssen Sie sich beim Erstellen jeder Abfrage, jedes Formulars und jedes Berichts ,berlegen, wie die Verbindungen zwischen den Tabellen aussehen und sie jedesmal neu definieren.
Beziehung definieren
204
Sie kDnnen dieses Problem lDsen, indem Sie eine Beziehung zwischen den Tabellen definieren. Eine Beschreibung dieses Verfahrens finden Sie weiter unten in diesem Kapitel.
Beziehungen
Der weitaus grDßere Nachteil besteht jedoch darin, dass bei losen Verbindungen die Integrit!t Ihrer Daten verloren gehen kann. Solange Sie Access nicht damit beauftragen, die referenzielle Integrit!t zu gew!hrleisten, kDnnen Sie alle Tabellen unabh!ngig voneinander bearbeiten. Das w,rde aber fast zwangsl!ufig zu Datens!tzen mit ung,ltigen Bez,gen f,hren. Sie sollten daher f,r zu verkn,pfende Tabellen auch die referenzielle Integrit!t definieren. In die relationale Verkn,pfung von Tabellen und die Definition der referenziellen Integrit!t wurden Sie bereits in Kapitel 2 Daten verwalten dieses Buchs eingef,hrt. Dort finden Sie Beispiele, die den praxisnahen Gebrauch beider Funktionen verdeutlichen.
Referenzielle Integrit!t
Hinweis
Beziehungen Mit der Definition einer Beziehung informieren Sie Access ,ber die relationale Verkn,pfung zweier Tabellen. Access ber,cksichtigt Beziehungen bei der Neuanlage von Abfragen, Formularen und Berichten. Beziehungen haben keinen Einfluss auf die Bearbeitung von Daten. Wenn Sie eine st!rkere Bindung von Tabellen w,nschen, dann m,ssen Sie die referenzielle Integrit!t definieren.
Beziehung definieren Die Definition von Beziehungen erfolgt im Dialog Beziehungen. Gehen Sie wie folgt vor, um den Dialog zu Dffnen: 1
Aktivieren Sie das Datenbankfenster, indem Sie die ?-Taste bet!tigen oder auf das Datenbank-Symbol klicken.
2
W!hlen Sie den Befehl Extras > Beziehungen aus der Men,leiste, Beziehungen aus dem Kontextmen, oder klicken Sie auf das gleichnamige Symbol.
Access Dffnet daraufhin das Fenster Beziehungen. Dieses Fenster zeigt das aktuelle Datenmodell Ihrer Datenbank an.
Datenmodell
Tabellen und Abfragen hinzufgen Wenn Sie das Beziehungsfenster in der aktuellen Datenbank vorher noch nicht aufgerufen und Ihre Einstellungen noch nicht gespeichert haben, ist das Datenmodell leer. Access Dffnet dann automatisch einen Dialog, mit dem Sie Tabellen oder Abfragen hinzuf,gen kDnnen. Der Dialog Tabelle anzeigen enth!lt standardm!ßig eine Auswahlliste mit allen Tabellen der aktuellen Datenbank. Pber die Register des Dialogs kDnnen Sie auch Abfragen oder sowohl Tabellen als auch Abfragen einsehen.
205
Tabellen
Abb. 4.11 Tabellen und Abfragen hinzuf gen
Das Hinzuf,gen von Tabellen und Abfragen erfolgt ,ber einen Doppelklick auf einen Dateinamen oder das Markieren eines oder mehrerer Dateinamen und einen Klick auf die Schaltfl!che Hinzuf1gen. Sobald das Datenmodell die Tabellen und Abfragen enth!lt, f,r die Sie Beziehungen definieren wollen, kDnnen Sie den Dialog mit einem Klick auf die gleichnamige Schaltfl!che schließen.
Tipp
Tabellen und Abfragen nachtr!glich hinzuf gen
206
Sie kDnnen dem Beziehungsfenster auch mehrere Tabellen oder Abfragen hinzuf,gen. Wenn Sie eine zusammenh!ngende Gruppe von Dateinamen markieren wollen, dann halten Sie die H-Taste gedr,ckt, w!hrend Sie mit der Maus klicken. Bei festgehaltener S-Taste kDnnen Sie einzelne Dateinamen aus der Gruppe der markierten Dateien entfernen oder hinzuf,gen. Klicken Sie dann auf die Schaltfl!che Hinzuf1gen, um die markierten Tabellen und Abfragen in das Beziehungsfenster zu ,bernehmen. Alternativ kDnnen Sie Tabellen und Abfragen auch direkt aus dem Datenbank- in das Beziehungsfenster ziehen. Sollten Sie bereits vorher ein Datenmodell in der aktuellen Datenbank gespeichert haben, dann zeigt Access den zuletzt gespeicherten Stand an. Sie kDnnen auch in diesem Fall weitere Tabellen oder Abfragen hinzuf,gen. W!hlen Sie dazu den Befehl Beziehungen > Tabelle anzeigen aus der Men,leiste oder aus dem Kontextmen, oder klicken Sie auf die gleichnamige Schaltfl!che in der Symbolleiste.
Beziehungen
Die Symbolleiste des Dialogs Beziehungen Tabelle 4.8 enth!lt eine Pbersicht der Symbolleiste des Fensters Beziehungen.
Die Symbolleiste des Beziehungsfensters
Symbol
Bedeutung Legt eine neue Datenbank an Rffnet eine Datenbank Speichert das Layout des Beziehungsfensters Druckt Daten (ist im Beziehungsfenster nicht verf,gbar) Aktiviert die Seitenansicht (ist im Beziehungsfenster nicht verf,gbar) Pr,ft die Rechtschreibung von Texten (ist im Beziehungsfenster nicht verf,gbar) Verschiebt das markierte Element in die Zwischenablage Kopiert das markierte Element in die Zwischenablage F,gt den Inhalt der Zwischenablage ein Pbertr!gt Formate (ist im Beziehungsfenster nicht verf,gbar) Rffnet den Dialog Tabelle anzeigen Zeigt alle Beziehungen einer Tabelle oder Abfrage an Zeigt alle Beziehungen einer Datenbank an LDscht das Layout des Beziehungsfensters Aktiviert das Datenbankfenster Entwirft ein neues Datenbankobjekt
207
Tabellen
Die Symbolleiste des Beziehungsfensters (Forts.)
Symbol
Bedeutung Startet den Office-Assistenten Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 4.8
Alle oder nur direkte Beziehungen anzeigen Alle Beziehungen anzeigen
Direkte Beziehungen anzeigen
Das Beziehungsfenster zeigt standardm!ßig nur das Layout des Datenmodells in der Form an, wie Sie es zuletzt gespeichert haben. Wenn Sie alle Beziehungen der Datenbank einsehen wollen, dann m,ssen Sie auf das Symbol Alle Beziehungen anzeigen klicken. Sie kDnnen diesen Befehl auch ,ber das Kontextmen, des Beziehungsfensters aufrufen. Wenn Sie alle Beziehungen zu einer bestimmten Tabelle oder Abfrage einsehen wollen, dann klicken Sie mit der rechten Maustaste auf eine beliebige Stelle der Feldliste. W!hlen Sie anschließend den Befehl Direkte Beziehungen anzeigen aus dem Kontextmen,. Access blendet dann alle Tabellen und Abfragen in das Beziehungsfenster ein, zu denen die aktuelle Tabelle oder Abfrage eine Beziehung hat. Wenn Sie vorher den Befehl Alle Beziehungen anzeigen ausgew!hlt haben, dann hat der Befehl Direkte Beziehungen anzeigen keine Wirkung. Er ist aber beispielsweise dann interessant, wenn Sie dem Beziehungsfenster eine neue Tabelle hinzugef,gt haben und deren Beziehungen einsehen wollen.
Tabellenentwurf ffnen
Im Kontextmen, einer Tabelle oder Abfrage des Beziehungsfensters finden Sie außerdem den Befehl Tabellenentwurf bzw. Abfrageentwurf. Mit diesem Befehl kDnnen Sie direkt die Entwurfsansicht der markierten Tabelle oder Abfrage Dffnen, um beispielsweise neue Indizes zu definieren.
Layout ver%ndern Sie kDnnen das Layout des Beziehungsfensters so ver!ndern, dass es nur die gerade interessanten Tabellen und Abfragen anzeigt. Sie kDnnen die Auswahllisten mit den Datenfeldern auf der Arbeitsfl!che verschieben, sie verkleinern oder vergrDßern.
Tabellen oder Abfragen entfernen
208
Sie haben sogar die MDglichkeit, Tabellen oder Abfragen wieder aus dem Layout zu entfernen. Markieren Sie dazu die entsprechende Feldauswahlliste und bet!tigen Sie die _-Taste. Alternativ kDnnen Sie auch den Befehl Tabelle ausblenden aus
Beziehungen
dem Men, Beziehungen oder dem Kontextmen, verwenden. Sie entfernen damit lediglich die Auswahlliste aus dem Layout. Sowohl die Tabelle bzw. Abfrage als auch die Beziehungen bleiben dabei weiterhin in der Datenbank erhalten.
Layout speichern Das Speichern des Layouts erfolgt ,ber das Symbol Speichern oder die Auswahl des Befehls Speichern aus dem Kontextmen, des Beziehungsfensters. Wenn Sie das Beziehungsfenster schließen, ohne das Layout vorher zu speichern, dann fragt Access, ob Sie dies nachholen wollen. Auch wenn Sie das Layout dann nicht speichern, gehen die 0nderungen an den Beziehungen nicht verloren. Access verwirft dann lediglich das Anzeige-Layout des Beziehungsfensters.
Layout l&schen Mit einem Klick auf das Symbol Layout l4schen entfernen Sie alle Tabellen, Abfragen und Beziehungen aus dem Beziehungsfenster, ohne die in der Datenbank gespeicherten Tabellen, Abfragen und Beziehungen zu beeinflussen. Nach dem LDschen kDnnen Sie das Layout des Beziehungsfensters neu gestalten.
Beziehung definieren Eine Beziehung wird stets zwischen den beiden Verkn,pfungsfeldern zweier Tabellen definiert. Sie m,ssen die beiden Tabellen daher zun!chst dem Layout hinzuf,gen. Ziehen Sie dann bei festgehaltener linker Maustaste eine Linie vom Verkn,pfungsfeld der Master-Tabelle zum Verkn,pfungsfeld der Detailtabelle. Sie sollten bereits vor der Definiton einer Beziehung wissen, welche der beiden Tabellen Master- und welche Detailtabelle sein soll. Entnehmen Sie diese Information gegebenenfalls Ihren Planungsunterlagen. Positionieren Sie dann den Mauszeiger auf das Verkn,pfungsfeld der Master-Tabelle und ziehen Sie die Linie zum Verkn,pfungsfeld der Detailtabelle. In dem Augenblick, in dem Sie die linke Maustaste loslassen, Dffnet Access automatisch den Dialog Beziehungen. Mit diesem Dialog kDnnen Sie weitere Einzelheiten der Beziehung wie beispielsweise die Verkn,pfungseigenschaften einstellen.
Hinweis
Der Dialog Beziehungen
Der obere Teil des Dialogs zeigt die beiden Verkn,pfungsfelder an. In der linken Auswahlliste finden Sie den Namen und das Verkn,pfungsfeld der Master-Tabelle oder -Abfrage. Die rechte Auswahlliste zeigt den Namen und das Verkn,pfungsfeld der Detailtabelle oder -abfrage an. Sollten Sie ein Datenfeld nicht richtig getroffen haben, dann kDnnen Sie die Feldauswahl noch korrigieren. Klicken Sie dazu auf den nach unten zeigenden Pfeil des Kombinationsfeldes und w!hlen Sie den Feldnamen aus der Liste.
Feldauswahl korrigieren
209
Tabellen
Abb. 4.12 Beziehung definieren
Restriktionen f r Beziehungen
Access f,hrt bei der Definition einer Beziehung keine weitergehenden Pr,fungen ,ber den Sinn der Beziehung durch. Sie kDnnen Beziehungen daher theoretisch willk,rlich festlegen. Sie brauchen vorher keine Schl,ssel zu definieren, die Verkn,pfungsfelder m,ssen nicht denselben Datentyp haben und auch sonst gibt es praktisch keine Restriktionen. Sie kDnnen Beziehungen sogar mit eingebundenen Tabellen fremder Datenbankformate wie beispielsweise dBASE oder FoxPro definieren. Wegen der mangelnden Restriktionen sollten Sie sich selbst um so besser ,berlegen, welche Beziehungen ,berhaupt sinnvoll f,r Ihre Datenbank sind und ob die definierten Schl,ssel und Felddatentypen den Erfordernissen Ihrer Anwendung gen,gen. Auch wenn dies von Access nicht erzwungen wird, sollten Sie bei der Definition von Beziehungen dieselben Restriktionen ber,cksichtigen wie bei der Definition der referenziellen Integrit!t. Das Verkn,pfungsfeld der Master-Tabelle sollte ein Prim!rschl,ssel oder ein eindeutiger Index sein. Access zeigt Prim!rschl,sselfelder in der Feldauswahlliste in Fettschrift an. Die Verkn,pfungsfelder beider Tabellen sollten denselben Datentyp und dieselbe FeldgrDße haben. Beachten Sie dabei, dass Access AutoWert-Felder intern genauso speichert wie Zahlenfelder der FeldgrDße Long Integer. Aus Gr,nden der Geschwindigkeit sollten Sie f,r das Verkn,pfungsfeld der Detailtabelle stets einen mehrdeutigen Sekund!rschl,ssel definieren.
Beziehung mit mehreren Verkn pfungsfeldern
210
Die Definition einer Beziehung mit mehreren Verkn,pfungsfeldern erfolgt ,ber die Feldauswahl im Dialog Beziehungen. W!hlen Sie ,ber die Kombinationsfelder alle Verkn,pfungsfelder aus der Master- und die korrespondierenden Verkn,pfungsfelder aus der Detailtabelle oder -abfrage aus.
Beziehungen
Das Kontrollk!stchen Mit referenzieller Integrit7t brauchen Sie nur dann anzukreuzen, wenn Sie gleichzeitig auch eine Eingabepr,fung definieren wollen. Sie finden die Beschreibung der referenziellen Integrit!t weiter unten in diesem Kapitel.
Referenzielle Integrit!t
Beziehung %ndern Zum 0ndern einer Beziehung zwischen zwei Tabellen markieren Sie die Verbindungslinie durch Anklicken mit der Maus. W!hlen Sie dann den Befehl Beziehungen > Beziehung bearbeiten aus der Men,leiste oder den Befehl Beziehung bearbeiten aus dem Kontextmen, oder f,hren Sie direkt einen Doppelklick auf die Verbindungslinie durch. Access Dffnet dann den Dialog Beziehungen, mit dem Sie die Beziehung bearbeiten kDnnen.
Beziehung l&schen Das LDschen einer Beziehung erfolgt ,ber den Befehl L4schen des Men,s Bearbeiten oder des Kontextmen,s der Verbindunglinie. Alternativ kDnnen Sie auch die Verbindungslinie markieren und die _-Taste bet!tigen.
Verknpfungseigenschaften Ein Klick auf die Schaltfl!che Verkn1pfungstyp im Beziehungsfenster Dffnet den Dialog Verkn1pfungseigenschaften. Hier bestimmen Sie, welche Datens!tze Access in der Beziehung ber,cksichtigen soll.
Abb. 4.13 Der Dialog Verkn3pfungseigenschaften
211
Tabellen
Verkn pfungseigenschaften im Beziehungsfenster
Verkn pfungseigenschaften im Abfragefenster
Verkn pfungseigenschaften ohne referenzielle Integrit!t Gleichheitsverkn pfung
Access verwendet die mit der Beziehung definierten Verkn,pfungseigenschaften als Standardeinstellung f,r den Abfrage-, Formular- und Berichtsentwurf. Die Verkn,pfungseigenschaften haben damit keine Auswirkung auf die Dateneingabe und -bearbeitung. Bei Bedarf kDnnen Sie die Verkn,pfungseigenschaften im Abfragefenster sogar abweichend von denen im Beziehungsfenster festlegen. Es erscheint dennoch sinnvoll, die Verkn,pfungseigenschaften bereits im Beziehungsfenster zu definieren. Sie brauchen sie dann beim Abfrageentwurf nur noch in Ausnahmef!llen zu !ndern. Bei einer Beziehung ohne referenzielle Integrit!t kann der Fall eintreten, dass im Verkn,pfungsfeld der einen Tabelle andere Werte auftreten als im Verkn,pfungsfeld der anderen Tabelle. Die Verkn,pfungseigenschaften bestimmen in diesem Fall, wie die beiden Verkn,pfungsfelder zusammengef,hrt werden sollen. Die erste Option des Dialogs entspricht der Standardeinstellung. Sie definiert eine Gleichheitsverkn,pfung. Bei der Gleichheitsverkn,pfung (englisch: equi join) werden nur diejenigen Datens!tze ber,cksichtigt, bei denen sich ,bereinstimmende Feldwerte in den Verkn,pfungsfeldern beider Tabellen befinden. Angenommen, Sie verkn,pfen eine Kunden- und eine Rechnungstabelle ,ber die Kundennummer und definieren eine Gleichheitsverkn,pfung. Das Ergebnis enth!lt dann nur die Rechnungen, deren Kundennummer auch in der Kundentabelle enthalten ist. Umgekehrt ber,cksichtigt Access nur diejenigen Kunden, f,r die auch Rechnungen angelegt wurden.
Beispiel fr eine Gleichheitsverknpfung
Kundentabelle
Rechnungstabelle
Ergebnistabelle
Kd Nr. 100
Rg Nr. 001, Kd Nr 100
Rg Nr. 001, Kd Nr. 100
Kd Nr. 105
Rg Nr. 002, Kd Nr. 105
Rg Nr. 002, Kd Nr. 105
Kd Nr. 200
Rg Nr. 003, Kd Nr. 999
Rg Nr. 005, Kd Nr. 100
Rg Nr. 004, Kd Nr. 102 Rg Nr. 005, Kd Nr. 100 Tabelle 4.9
Beispiel Kunden und Rechnungen
212
Tabelle 4.9 zeigt einige Beispieldaten f,r eine Kunden- und eine Rechnungstabelle. Der Prim!rschl,ssel der Kundentabelle ist die Kundennummer. Bei der Rechnungstabelle wird der Prim!rschl,ssel von der Rechnungsnummer gebildet. Hier ist die Kundennummer ein mehrdeutiger Sekund!rschl,ssel. Die Verkn,pfung beider Tabellen erfolgt ,ber die Kundennummer. Das Ergebnis wird in einer Abfrage mit allen Feldern aus beiden Tabellen ermittelt.
Beziehungen
Abb. 4.14 Beziehung mit Gleichheitsverkn pfung
Bei einer Beziehung mit Gleichheitsverkn,pfung tauchen die Rechnungen 003 und 004 in der Ergebnistabelle nicht auf, da sie sich auf nicht angelegte Kunden beziehen. Auch die Kundennummer 200 taucht im Ergebnis nicht auf, da f,r sie keine Rechnung gespeichert wurde. Das Gegenst,ck zur Gleichheitsverkn,pfung ist die Inklusionsverkn,pfung (englisch: outer join). Die Inklusionsverkn,pfung zeigt auf jeden Fall alle Datens!tze der ersten, aber nur die Datens!tze der zweiten Tabelle an, deren Verkn,pfungsfelder mit den Verkn,pfungsfeldern der ersten Tabelle ,bereinstimmen.
Inklusionsverkn pfung
Der Dialog Verkn1pfungseigenschaften enth!lt zwei Optionsfelder f,r die Inklusionsverkn,pfung. Die beiden Optionsfelder unterscheiden sich lediglich in der Richtung der Verkn,pfung. Die eine Option bewirkt, dass alle Datens!tze der ersten und nur einige Datens!tze der zweiten Tabelle angezeigt werden, die andere Option, dass alle Datens!tze der zweiten und nur einige Datens!tze der ersten Tabelle dargestellt werden. Um weitere Verwirrungen zu vermeiden, zeigt Access die Namen der beiden zu verkn,pfenden Tabellen im Dialog an. Sie sollten die Beschreibung der beiden Optionen daher aufmerksam lesen und schließlich die f,r Ihre Anwendung richtige Option anklicken. Best!tigen Sie Ihre Einstellung mit einem Klick auf OK. Angenommen, Sie definieren f,r das obige Beispiel eine Inklusionsverkn,pfung. Im ersten Fall zeigt das Abfrageergebnis alle Kunden und nur diejenigen Rechnungen an, die einen Bezug zu einer angelegten Kundennummer haben.
Inklusionsverkn pfung mit allen Kunden
213
Tabellen
Beispiel fr eine Inklusionsverknpfung mit allen Kunden
Kundentabelle Rechnungstabelle
Abfrageergebnis
Kd Nr. 100
Rg Nr. 001, Kd Nr. 100
Rgnr. 001, Kd Nr. 100
Kd Nr. 105
Rg Nr. 002, Kd Nr. 105
Rg Nr. 002, Kd Nr. 105
Kd Nr. 200
Rg Nr. 003, Kd Nr. 999
Rg Nr. 005, Kd Nr. 100
Rg Nr. 004, Kd Nr. 102
Keine Rechnungsdaten, Kd Nr. 200
Rg Nr. 005, Kd Nr. 100 Tabelle 4.10 Wenn Sie f,r die oben aufgef,hrten Beispieldaten eine Auswahlabfrage mit einer Inklusionsverkn,pfung mit allen Kunden definieren, dann enth!lt das Ergebnis einen Datensatz f,r jede Kundennummer. Wenn ein Kunde mehrere Rechnungen erhalten hat, wiederholt Access die Kundennummer so oft, wie Rechnungen f,r diesen Kunden gespeichert sind. Rechnungen ohne g,ltige Kundennummer tauchen im Ergebnis nicht auf. Kundennummern wie beispielsweise Kdnr. 200 ohne zugewiesene Rechnungen erscheinen zwar im Ergebnis, jedoch ohne die Angabe von Rechnungsdaten.
Abb. 4.15 Inklusionsverkn pfung mit allen Kunden
214
Beziehungen
Wenn Sie die Inklusionsverkn,pfung in der anderen Richtung definieren, zeigt das Abfrageergebnis alle Rechnungen und nur diejenigen Kunden an, deren Kundennummern in der Rechnungstabelle zu finden sind.
Inklusionsverkn pfung mit allen Rechnungen
Beispiel fr eine Inklusionsverknpfung mit allen Rechnungen
Kundentabelle Rechnungstabelle
Abfrageergebnis
Kd Nr. 100
Rg Nr. 001, Kd Nr 100
Rg Nr. 001, Kd Nr. 100
Kd Nr. 105
Rg Nr. 002, Kd Nr. 105
Rg Nr. 002, Kd Nr. 105
Kd Nr. 200
Rg Nr. 003, Kd Nr. 999
Rg Nr. 003, Keine Kundendaten
Rg Nr. 004, Kd Nr. 102
Rg Nr. 004, Keine Kundendaten
Rg Nr. 005, Kd Nr. 100
Rg Nr. 005, Kd Nr. 100 Tabelle 4.11
Bei der Inklusionsverkn,pfung mit allen Rechnungen zeigt das Abfrageergebnis alle Datens!tze der Rechnungstabelle an. Das Ergebnis enth!lt damit auch zu jeder Rechnungsnummer eine Kundennummer, da dieses Feld mit in der Rechnungstabelle enthalten ist. Bei den Rechnungsnummern 003 und 004 kann Access jedoch keinen zugeordneten Kundendatensatz finden und daher auch keine zus!tzlichen Kundendaten wie Name oder Anschrift anzeigen.
Abb. 4.16 Inklusionsverkn pfung mit allen Rechnungen
215
Tabellen
Access visualisiert die Verkn,pfungseigenschaften im Fenster Beziehungen. Gleichheitsverkn,pfungen werden stets durch eine Linie ohne Pfeilspitzen gekennzeichnet. Bei Inklusionsverkn,pfungen zeigt die Pfeilspitze von der Tabelle, aus der alle Datens!tze ber,cksichtigt werden, auf die Tabelle, bei der nur die Datens!tze mit ,bereinstimmenden Verkn,pfungsfeldern ,bernommen werden.
Beziehungstyp Bei Access ist eine Beziehung zwischen zwei Tabellen neben den Verkn,pfungseigenschaften zus!tzlich durch einen Beziehungstyp gekennzeichnet. Access unterscheidet hier zwischen einer 1:1- und einer 1:n-Beziehung. Alle im Abschnitt Verkn1pfungseigenschaften beschriebenen Beziehungen sind 1:N-Beziehungen.
Beziehungstyp !ndern
1:n-Beziehung
Achtung
n:m-Beziehung
Access zeigt den Beziehungstyp im Dialog Verkn1pfungseigenschaften lediglich an und Sie kDnnen ihn nicht direkt !ndern. Der Typ einer Beziehung ergibt sich implizit aus der Beschaffenheit der beiden Verkn,pfungsfelder einer Beziehung. Wenn Sie zwei eindeutige oder Prim!rschl,ssel miteinander verkn,pfen, ist dies automatisch eine 1:1-Beziehung. Wird hingegen ein eindeutiger oder Prim!rschl,ssel mit einem nicht eindeutigen Schl,sselfeld verkn,pft, handelt es sich automatisch um eine 1:n-Beziehung. Wenn Sie den Verkn,pfungstyp einer Beziehung !ndern wollen, m,ssen Sie die Beziehung zun!chst lDschen und dann neu definieren. Die 1:n-Beziehung ist weitaus h!ufiger als die 1:1-Beziehung zu finden. Bei diesem Beziehungstyp kDnnen jedem Datensatz der Master-Tabelle mehrere Datens!tze der Detailtabelle zugeordnet werden. Umgekehrt kann jeder Datensatz der Detailtabelle eindeutig einem Datensatz der Master-Tabelle zugeordnet werden. Die Beispiele f,r diesen Beziehungstyp sind zahllos: Kunden und Projekte, Rechnungsk4pfe und Rechnungspositionen, Kunden und Rechnungen, Konto und Buchungen usw. Bevor Sie die referenzielle Integrit!t definieren, m,ssen Sie sicherstellen, dass alle Werte des Verkn,pfungsfeldes der Detailtabelle auch im Verkn,pfungsfeld der Master-Tabelle angelegt sind. Ansonsten w!re schließlich eine der Bedingungen f,r die referenzielle Integrit!t bereits bei deren Definition verletzt. Wenn diese Bedingung nicht erf,llt ist, macht Access in einer Fehlermeldung darauf aufmerksam und verhindert die Definition. Auch die n:m-Beziehung kommt in der Praxis h!ufig vor. Bei diesem Beziehungstyp kDnnen jedem Datensatz der Master- mehrere Datens!tze der Detailtabelle zugeordnet werden. Umgekehrt kann jeder Datensatz der Detailtabelle mehreren Datens!tzen der Master-Tabelle zugeordnet werden. Ein typisches Beispiel f,r eine n:m-Beziehung ist die Verkn,pfung von Autoren und B,chern. Auf der einen Seite kann jeder Autor mehrere B,cher schreiben. Auf der anderen Seite kDnnen an jedem Buch mehrere Autoren mitgewirkt haben. Access unterst,tzt die n:m-Beziehung nicht direkt, sie l!sst sich aber ,ber zwei 1:n-Beziehungen und eine weitere Tabelle konstruieren. Eine detaillierte Beschreibung von n:m-Beziehungen w,rde den Rahmen dieses Buchs sprengen.
216
Referenzielle Integrit%t
Bei einer 1:1-Beziehung wird stets ein Datensatz der Master- mit dem korrespondierenden Datensatz der Detailtabelle verkn,pft. Die 1:1-Beziehung ließe sich auch durch das Zusammenf,hren beider Tabellen realisieren und ist aus diesem Grund recht uninteressant.
1:1-Beziehung
Eine 1:1-Beziehung l!sst sich nur zwischen den Prim!rschl,sseln oder den eindeutigen Indizes zweier Tabellen definieren. Sie m,ssen vor der Definition der Beziehung sicherstellen, dass die Werte beider Prim!rschl,ssel bzw. der eindeutigen Schl,ssel ,bereinstimmen. Access meldet sonst den Fehler, dass die Definition nicht durchgef,hrt werden kann. Da Prim!rschl,ssel immer eindeutig sind, setzt die 1:1-Beziehung voraus, dass auch die Anzahl der Datens!tze in beiden Tabellen gleich groß ist. Der Prim!rschl,ssel oder der eindeutige Schl,ssel der einen Tabelle muss folglich eine exakte Kopie des Prim!rschl,ssels der anderen Tabelle bilden. Erst wenn diese Bedingungen erf,llt sind, l!sst sich die Beziehung mit referenzieller Integrit!t definieren. Wenn Sie zwischen zwei Tabellen eine 1:1-Beziehung definieren, dann sollten Sie auf die referenzielle Integrit!t (siehe folgender Abschnitt) verzichten. Die Definition der referenziellen Integrit!t bewirkt n!mlich, dass Sie die Eingabe neuer Schl,ssel und damit – da die Schl,ssel eindeutig sein m,ssen – neuer Datens!tze nur noch in die Master-Tabelle vornehmen kDnnen. Die Eingabe in die Detailtabelle ist nur dann mDglich, wenn der Schl,sselwert in der Master-Tabelle bereits angelegt ist.
Achtung
Die einzige Ausnahme dieser Regel bildet der Fall, dass Sie die 1:1-Beziehung zwischen zwei eindeutigen Schl,sselfeldern definieren, die auch Nullwerte erlauben. In diesem Fall d,rfen sich die Nullwerte in den Schl,sselfeldern beider Tabellen auch wiederholen.
Referenzielle Integritt Mit der referenziellen Integrit!t definieren Sie zwei Dinge gleichzeitig: eine Beziehung und eine Eingabepr,fung. Sobald Sie f,r zwei Tabellen referenzielle Integrit!t festlegen, erkennt Access deren relationale Verkn,pfung (Beziehung) bei der Neuanlage von Abfragen, Formularen und Berichten automatisch. Die referenzielle Integrit!t geht jedoch weiter. Ist sie erst einmal definiert, gew!hrleistet Access die referenzielle Integrit!t ,berall dort, wo Daten bearbeitet werden kDnnen. Dies betrifft nicht nur die Dateneingabe in das Tabellen- und das Formularfenster, sondern beispielsweise auch Aktualisierungsabfragen. Mit der Definition einer Beziehung bestimmen Sie, welche der beiden Tabellen Master- und welche Detailtabelle sein soll. Die beiden Verkn,pfungsfelder m,ssen folgende Bedingungen erf,llen, damit Sie referenzielle Integrit!t definieren kDnnen: Das Verkn,pfungsfeld der Master-Tabelle muss ein Prim!rschl,ssel oder ein eindeutiger Index sein. Access zeigt Prim!rschl,sselfelder in der Feldauswahlliste in Fettschrift an.
Beziehung
Eingabepr fung
Voraussetzungen
217
Tabellen
Die Verkn,pfungsfelder beider Tabellen m,ssen denselben Datentyp und dieselbe FeldgrDße haben. Beachten Sie dabei, dass Access AutoWert-Felder intern genauso speichert wie Zahlenfelder der FeldgrDße Long Integer. Beide Tabellen m,ssen aus derselben Access-Datenbank stammen. Wenn sie aus einer anderen als der aktuellen Datenbank stammen, sollten Sie die Ursprungsdatenbank Dffnen und die referenzielle Integrit!t dort festlegen. Aus Gr,nden der Geschwindigkeit sollten Sie f,r das Verkn,pfungsfeld der Detailtabelle stets einen mehrdeutigen Sekund!rschl,ssel definieren. Zur Definition der referenziellen Integrit!t zwischen zwei Tabellen definieren Sie zun!chst eine Beziehung. Kreuzen Sie dann im Dialog Beziehungen das Kontrollk!stchen Mit referenzieller Integrit7t an.
Abb. 4.17 Beziehung mit referenzieller Integrit!t
Das Ankreuzen des Kontrollk!stchens f,hrt zur Freigabe weiterer Optionsfelder und Kontrollk!stchen, mit denen Sie den Verkn,pfungstyp, Aktualisierungsweitergabe und LDschweitergabe definieren kDnnen. Außerdem steht die Schaltfl!che Verkn1pfung weiterhin zur Bearbeitung der Verkn,pfungseigenschaften zur Verf,gung.
218
Referenzielle Integrit%t
Aktualisierungsweitergabe und L&schweitergabe Die referenzielle Integrit!t ist eine Pberpr,fung der Datenbearbeitung sowohl in der Master- als auch in der Detailtabelle. W!hrend der Dateneingabe in die Master-Tabelle kDnnen Sie standardm!ßig die Werte des Verkn,pfungsfeldes nicht bearbeiten, solange in der Detailtabelle noch Bez,ge existieren. Ansonsten w,rden n!mlich ung,ltige Bez,ge in der Detailtabelle entstehen.
Aktualisierungsweitergabe
Erst wenn Sie zus!tzlich das Kontrollk!stchen Aktualisierungsweitergabe an Detailfeld ankreuzen, dann !ndert Access alle Bez,ge in der Detailtabelle automatisch auf den neuen Wert des Verkn,pfungsfeldes in der Master-Tabelle. Wenn Sie beispielsweise in der Kundentabelle die Kundennummer 103 auf 210 !ndern, dann f,hrt Access diese 0nderung automatisch bei allen Rechnungen der Kundennummer 103 durch. Der Bezug zwischen Kunden und Rechnungen bleibt damit erhalten, die referenzielle Integrit!t gew!hrleistet. Analog zur Datenbearbeitung unterbindet Access standardm!ßig auch das LDschen von Datens!tzen in der Master-Tabelle, solange noch Bez,ge in der Detailtabelle existieren. Sie m,ssen in diesem Fall zun!chst alle verkn,pften Datens!tze aus der Detailtabelle lDschen, bevor Sie den Datensatz der Master-Tabelle lDschen kDnnen.
Lschweitergabe
Wenn Sie hingegen bei der Definition der referenziellen Integrit!t das Kontrollk!stchen L4schweitergabe an Detaildatensatz ankreuzen, kDnnen Sie Datens!tze der Master-Tabelle auch dann lDschen, wenn noch Bez,ge in der Detailtabelle existieren. Access lDscht die verkn,pften Datens!tze der Detailtabelle dann automatisch. Die Bearbeitung der Detailtabelle ist unabh!ng von den Einstellungen f,r Aktualisierungs- und LDschweitergabe. Hier stellt die referenzielle Integrit!t nur sicher, dass das Verkn,pfungsfeld bei der Neueingabe oder Bearbeitung eines Datensatzes einen Wert enth!lt, der in der Master-Tabelle bereits angelegt ist. Das LDschen von Datens!tzen aus der Detailtabelle wird von der referenziellen Integrit!t nicht beeinflusst. Die beiden folgenden Tabellen fassen die Regeln zur Bearbeitung der Master- und der Detailtabelle bei referenzieller Integrit!t zusammen.
Bearbeitung der Detailtabelle
(bersicht
219
Tabellen
Bearbeitung der Master-Tabelle, wenn in der Detailtabelle Bezge existieren
Definition fi Operation fl
Keine Weitergabe definiert
Aktualisierungsweitergabe an Detailfeld definiert
LDschweitergabe Beide Weitergaan Detaildatensatz ben definiert definiert
Einf,gen neuer Datens!tze
Erlaubt
Erlaubt
Erlaubt
Erlaubt
0ndern des Verkn,pfungsfeldes
Nicht erlaubt
F,hrt automatisch zur 0nderung der Verkn,pfungsfelder der verkn,pften Detaildatens!tze
Nicht erlaubt
Wie bei Aktualisierungsweitergabe
LDschen des Datensatzes
Nicht erlaubt
Nicht erlaubt
F,hrt automatisch zum LDschen der verkn,pften Detaildatens!tze
Wie bei LDschweitergabe
Tabelle 4.12
Bearbeitung einer Detailtabelle bei referenzieller Integrit%t
Operation
Durchf,hrbarkeit
Einf,gen neuer Datens!tze
Setzt immer voraus, dass der Wert des Verkn,pfungsfeldes auch in der Master-Tabelle angelegt ist
0ndern des Verkn,pfungsfeldes
Ist nie erlaubt
LDschen eines Datensatzes
Ist immer erlaubt Tabelle 4.13
Der Tabellen-Assistent Der Tabellen-Assistent von Access verf,gt ,ber mehr als 45 Mustertabellen f,r die g!ngigsten Anwendungsgebiete. Sie kDnnen die Mustertabellen in Ihre bereits bestehenden Datenbanken einf,gen. Der Assistent macht automatisch Vorschl!ge f,r Beziehungen zwischen den Tabellen, so dass Sie auch diese automatisch erstellen lassen kDnnen.
220
Der Tabellen-Assistent
Der Tabellen-Assistent kann damit eine Menge Arbeit einsparen. Es wird jedoch h!ufig so sein, dass die vom Assistenten erstellten Tabellen nicht hundertprozentig auf Ihre Anwendung passen. Sie werden die automatisch erstellten Tabellen daher in der Regel den Bed,rfnissen Ihrer Anwendung manuell anpassen.
Tabellen-Assistent starten Sie haben folgende MDglichkeiten, den Tabellen-Assistenten zu starten: Klicken Sie auf das Symbol Neues Objekt und w!hlen Sie den Eintrag Tabelle aus der Liste oder w!hlen Sie den Befehl Einf1gen > Tabelle aus der Men,leiste oder markieren Sie im Datenbankfenster das Register Tabellen und klicken Sie auf die Schaltfl!che Neu.
Abb. 4.18 Start des Tabellen-Assistenten
Diese drei Varianten Dffnen den Dialog Neue Tabelle. Ein Doppelklick auf den Eintrag Tabellen-Assistent startet schließlich den Tabellen-Assistenten.
Neue Tabelle
221
Tabellen
Beispieltabelle ausw%hlen Der erste Dialog des Assistenten enth!lt eine Auswahlliste mit Beispieltabellen. Pber die beiden Optionsfelder kDnnen Sie private oder gesch!ftliche Beispieltabellen einsehen.
Abb. 4.19 Beispieltabelle ausw!hlen
Wenn Sie eine der Beispieltabellen markieren, dann zeigt die zweite Auswahlliste die Beispielfelder dieser Tabelle an. Mithilfe der Schaltfl!chen kDnnen Sie einzelne oder alle Beispielfelder in die neue Tabelle ,bernehmen. Pber die Schaltfl!che Feld umbenennen kDnnen Sie den Namen eines Feldes f,r die neue Tabelle !ndern. Klicken Sie auf die Schaltfl!che Weiter, um die Auswahl zu beenden.
Tabellenname und Prim%rschlssel definieren Tabellenname eingeben
Prim!rschl ssel
Im zweiten Dialog des Tabellen-Assistenten kDnnen Sie einen Namen f,r die Tabelle eingeben. Der Assistent gibt standardm!ßig den Namen aus der Auswahlliste des ersten Dialogs vor. Wenn Sie wollen, dann kDnnen Sie den Namen auch !ndern. Markieren Sie die Option Assistent soll Prim7rschl1ssel festlegen, wenn der Assistent automatisch einen Prim!rschl,ssel f,r die neue Tabelle definieren soll. Wenn Sie selbst einen Prim!rschl,ssel definieren wollen, dann klicken Sie die Option Prim7rschl1ssel selbst festlegen an. Wenn Sie den Prim!rschl,ssel selbst definieren wollen, dann zeigt der Assistent einen weiteren Dialog an. Mit diesem Dialog kDnnen Sie das Prim!rschl,sselfeld ausw!hlen. Außerdem bestimmen Sie, ob es sich dabei um ein AutoWert-, ein Zahloder ein Text-Feld handeln soll.
222
Der Tabellen-Assistent
Abb. 4.20 Tabellennamen und Prim!rschl ssel
Beziehungen definieren Der n!chste Dialog des Tabellen-Assistenten zeigt Vorschl!ge f,r Beziehungen der Tabelle an. Der Assistent analysiert dazu die Definition aller bereits in der Datenbank enthaltenen Tabellen. Findet der Assistent Tabellen, deren Feld- und Schl,sseldefinitionen zu einer sinnvollen Beziehung f,hren kDnnen, dann zeigt er sie mit dem Text bezieht sich auf an. Alle anderen Tabellen werden mit dem Text bezieht sich nicht auf angezeigt.
Abb. 4.21 Beziehungen definieren
223
Tabellen
Sie kDnnen die vom Assistenten vorgeschlagenen Beziehungen auch manuell !ndern. Markieren Sie dazu einen Eintrag in der Liste, und klicken Sie auf die Schaltfl!che Beziehungen. Der Assistent Dffnet dann einen Dialog mit drei Optionsfeldern, mit denen Sie die Art der Beziehung bestimmen kDnnen. Die Optionsfelder haben die folgenden Bedeutungen: Mit der ersten Option bestimmen Sie, dass zwischen den beiden Tabellen keine Beziehung bestehen soll. Mit der zweiten Option definieren Sie eine 1:n-Beziehung mit der neuen Tabelle als Master-Tabelle. Mit der dritten Option definieren Sie eine 1:n-Beziehung mit der neuen Tabelle als Detailtabelle. Sie kDnnen mit dem Tabellen-Assistenten auch Beziehungen zu solchen Tabellen definieren, deren Datenfelder bisher nicht f,r eine Beziehung zu der neuen Tabelle geeignet sind. Der Assistent f,gt das erforderliche Verkn,pfungsfeld dann automatisch der bereits bestehenden Tabelle hinzu. Angenommen, Ihre Datenbank enth!lt bereits eine Projektetabelle. Nun kDnnen Sie der Datenbank mit dem Assistenten eine Adressentabelle hinzuf,gen. Der Assistent setzt den Prim!rschl,ssel f,r die Adressentabelle standardm!ßig auf das AutoWert-Feld AdressenlistenNr. Mit der Auswahl der Option Ein Datensatz der Tabelle ‘Adressenliste’ wird zu vielen Datens7tzen in der Tabelle ‘Projekte’ passen kDnnen Sie dann eine 1:n-Verkn,pfung zwischen den beiden Tabellen mit der Adressentabelle als Master-Tabelle definieren. Wenn die Projektetabelle das AutoWert-Feld AdressenlistenNr noch nicht enth!lt, dann weist der Text im unteren Teil des Dialogs Beziehungen darauf hin, dass der Assistent das Datenfeld AdressenlistenNr der Projektetabelle hinzuf,gen wird. Der Assistent erkennt dabei automatisch, dass er in der Projektetabelle kein AutoWert-, sondern ein Zahl-Feld der FeldgrDße Long Integer anlegen muss.
Ansicht ausw%hlen Mit dem letzten Dialog des Tabellen-Assistenten kDnnen Sie die Ansicht ausw!hlen, in der die neue Tabelle geDffnet werden soll. Sie haben die folgenden drei MDglichkeiten:
Entwurfsansicht
Die erste Option Dffnet die Entwurfsansicht der neuen Tabelle. Sie kDnnen die Tabellendefinition dann direkt Ihren Bed,rfnissen anpassen.
Datenblattansicht
Die zweite Option Dffnet die Datenblattansicht der neuen Tabelle, so dass Sie mit der Dateneingabe beginnen kDnnen.
Formularansicht
224
Die dritte Option startet den Assistenten AutoFormular, erstellt ein Standardformular f,r die neue Tabelle und Dffnet es in der Formularansicht. Auf Wunsch kDnnen Sie das neue Formular dann ,ber den Befehl Datei > Speichern speichern.
Der Tabellen-Assistent
Außerdem verf,gt dieser Dialog noch ,ber ein Kontrollk!stchen, mit dem Sie die Hilfe zu der ausgew!hlten Ansicht Dffnen kDnnen.
Abb. 4.22 Ansicht ausw!hlen
Bei einem Klick auf die Schaltfl!che Fertigstellen beginnt der Assistent mit seiner Arbeit. Er f,hrt folgende Arbeitsschritte durch: 1
Der Assistent f,gt die neue Tabellendefinition der aktuellen Datenbank hinzu.
2
Falls notwendig, erg!nzt der Assistent die benDtigten Verkn,pfungsfelder in den verkn,pften Tabellen.
3
Falls notwendig, definiert der Assistent eine oder mehrere Beziehungen.
4
Abschließend Dffnet der Assistent die neue Tabelle in der von Ihnen gew,nschten Ansicht.
Tabellen nachbearbeiten In der Regel werden Sie die vom Tabellen-Assistenten erstellten Beispieltabellen manuell nachbearbeiten und den Erfordernissen Ihrer Anwendung anpassen. Rffnen Sie die Tabelle dazu in der Entwurfsansicht und nehmen Sie die erforderlichen 0nderungen vor.
Tabellendefinition direkt !ndern
Sie sollten dies mDglichst vor der Eingabe von Daten erledigen. Ansonsten kDnnen bei umfangreichen 0nderungen an der Tabellendefinition Datenverluste entstehen. Weitere Hinweise zum nachtr!glichen 0ndern einer Tabellendefinition finden Sie weiter oben in diesem Kapitel.
Tabellendefinition nachtr!glich !ndern
225
Tabellen
Beziehungen
Referenzielle Integrit!t
Der Tabellen-Assistent erstellt auf Wunsch Beziehungen zu den Tabellen, die sich bereits in Ihrer Datenbank befinden. Falls es nicht bereits vorhanden ist, f,gt der Assistent das erforderliche Verkn,pfungsfeld hinzu und definiert dieses als mehrdeutigen Schl,ssel. Der Assistent definiert Beziehungen ohne referenzielle Integrit!t. Sofern es Ihre Anwendung erfordert, m,ssen Sie die Definition der referenziellen Integrit!t daher selbst nachholen. Dies ist in der Regel unproblematisch, solange die neue Tabelle noch keine Daten enth!lt. Gehen Sie wie folgt vor: 1
Definieren Sie die f,r die referenzielle Integrit!t erforderlichen Schl,ssel.
2
Stellen Sie sicher, dass keine Datens!tze die referenzielle Integrit!t verletzen.
3
Rffnen Sie das Beziehungsfenster und definieren Sie die referenzielle Integrit!t.
Ein Abschnitt weiter oben in diesem Kapitel beschreibt, was Sie bei der referenziellen Integrit!t beachten m,ssen.
Der Nachschlage-Assistent Der Nachschlage-Assistent von Access ist ein Hilfsmittel zur vereinfachten Verkn,pfung von Tabellen. Mit ihm kDnnen Sie im Tabellenentwurf f,r ein Datenfeld definieren, dass dessen Wert in einer anderen Tabelle oder Abfrage nachgeschlagen werden soll. Pber die Eigenschaften des Registers Nachschlagen kDnnen Sie festlegen, dass die Anzeige eines Nachschlagefeldes in Datenbl!ttern, Formularen und Berichten als Kombinations- oder Listenfeld erfolgt.
Nachschlage-Assistent starten Zum Start des Nachschlage-Assistenten gehen Sie wie folgt vor: 1
Rffnen Sie die Entwurfsansicht einer Tabelle.
2
Markieren Sie das Datenfeld, dessen Werte in einer anderen Tabelle oder Abfrage nachgeschlagen werden sollen.
3
W!hlen Sie Nachschlage-Assistent als Felddatentyp des Steuerelements.
Die Auswahl des Felddatentyps Nachschlage-Assistent f,hrt zum Start des Assistenten. Es handelt sich hierbei um eine kleine Inkonsistenz in der Benutzerf,hrung von Access. Der Nachschlage-Assistent ist n!mlich kein Felddatentyp, sondern ver!ndert einige Eigenschaften des aktuellen Datenfeldes und stellt ggf. eine Beziehung zu einer anderen Tabelle oder Abfrage her.
226
Der Nachschlage-Assistent
Abb. 4.23 Der Nachschlage-Assistent
Adresse nachschlagen Der Nachschlage-Assistent ist ein Hilfsmittel zum Herstellen von Beziehungen zwischen Tabellen und Abfragen. Wenn Sie die bisherigen Abschnitte dieses Kapitels aufmerksam durchgearbeitet haben, bietet der Nachschlage-Assistent inhaltlich nichts Neues. Er kann jedoch helfen, Zeit zu sparen. Es erscheint daher sinnvoll, die Benutzung des Nachschlage-Assistenten an einem Beispiel zu beschreiben. Das Beispiel geht von einer Adressen- und einer Projektetabelle aus, die relational verkn,pft sind. Die Projektetabelle ist die Master-Tabelle und hat den eindeutigen Prim!rschl,ssel Projekt-Nr. Die Adressentabelle ist die Detailtabelle und hat den Prim!rschl,ssel Adresse-Nr.
Datenmodell
Das Beispiel setzt voraus, dass die Tabellen zun!chst nicht miteinander verkn,pft sind. Damit die Beziehung zustande kommen kann, muss die Projektetabelle um ein weiteres Datenfeld erg!nzt werden. Dieses Datenfeld soll den Schl,sselwert der Adresse speichern, der das Projekt zugeordnet ist. Die Anlage dieses Datenfeldes erfolgt ,ber den Nachschlage-Assistenten. Gehen Sie wie folgt vor: 1
Rffnen Sie die Entwurfsansicht der Projektetabelle.
2
F,gen Sie ein neues Datenfeld mit dem Namen Adresse-Nr ein.
3
W!hlen Sie Nachschlage-Assistent als Felddatentyp f,r das Feld Adresse-Nr, so dass Access den Nachschlage-Assistenten startet. 227
Tabellen
4
Im ersten Dialog des Nachschlage-Assistenten stellen Sie ein, dass die Werte f,r das Nachschlagefeld aus einer Tabelle oder Abfrage stammen.
5
Im zweiten Dialog markieren Sie die Tabelle Adressen.
6
Im dritten Dialog w!hlen Sie die Felder Adresse-Nr, Name und PLZ und Ort als Spalten f,r das Nachschlagefeld aus.
7
Im vierten Dialog stellen Sie die Spaltenbreiten ein. Außerdem markieren Sie das Kontrollk!stchen, dass die Schl,sselspalte nicht als Spalte in der Liste erscheinen soll.
8
Im letzten Dialog geben Sie eine Beschriftung f,r das Nachschlagefeld ein und klicken auf die Schaltfl!che Fertig stellen.
Der Nachschlage-Assistent weist darauf hin, dass Sie den ge!nderten Tabellenentwurf speichern m,ssen, bevor er die erforderliche Beziehung zur Tabelle Adressen erstellen kann. Kurz nachdem Sie den Dialog mit einem Klick auf die Schaltfl!che Ja best!tigt haben, ist wieder das Tabellenentwurfsfenster aktiv.
Abb. 4.24 Ein Nachschlagefeld f r Adressdaten
Der Assistent hat den Datentyp des Nachschlagefeldes [Adresse-Nr] so gew!hlt, dass er mit dem Prim!rschl,ssel der Adressentabelle ,bereinstimmt. Da dieses Feld ein AutoWert-Feld ist, hat der Assistent den Datentyp Zahl mit der FeldgrDße Long Integer eingestellt. 228
Der Nachschlage-Assistent
Alle weiteren Einstellungen f,r dieses Datenfeld hat der Assistent an den Eigenschaften vorgenommen, die Sie mit einem Klick auf das Register Nachschlagen einsehen kDnnen. Tabelle 4.14 erl!utert die Eigenschaften im Einzelnen.
Typische Eigenschaften eines Nachschlagefeldes
Eigenschaft
Wert
Bedeutung
Steuerelement anzeigen
Kombinationsfeld
Das Nachschlagefeld wird standardm!ßig als Kombinationsfeld angezeigt
Herkunftstyp
Tabelle/Abfrage
Die Werte f,r das Kombinationsfeld stammen aus einer Tabelle oder Abfrage
Datensatzherkunft
SELECT DISTINCTROW[Adressen]. Diese SQL-Abfrage ermittelt die Spalten f,r das Kombinationsfeld [Adresse-Nr.],[Adressen].[Name] ,[Adressen].[PLZ und Ort] FROM [Adressen];
Gebundene Spalte
1
Der Wert der ersten Spalte der Datensatzherkunft, also des Feldes [Adresse-Nr] wird im Datenfeld gespeichert
Spaltenanzahl
3
Das Kombinationsfeld zeigt drei Spalten an
Spalten,berschriften Nein
Die Anzeige erfolgt ohne Spalten,berschriften
Spaltenbreiten
0cm;5,397cm;3,757 cm
Die erste Spalte ist ausgeblendet, die zweite und die dritte Spalte werden angezeigt
Zeilenanzahl
8
Das Kombinationsfeld zeigt eine Auswahlliste mit acht Datens!tzen an
Listenbreite
9,153 cm
Bestimmt die Breite der Auswahlliste des Kombinationsfeldes bei der Anzeige
Nur Listeneintr!ge
Ja
Das Kombinationsfeld speichert nur Werte aus der Adressentabelle. Die Eingabe anderer Adressennummern ist nicht erlaubt. Tabelle 4.14
Der Nachschlage-Assistent hat außerdem eine Beziehung zwischen der Projekteund der Adressentabelle in der Datenbank hinterlegt. Es handelt sich um eine 1:n-Beziehung mit der Adressentabelle als Master-Tabelle. Das bedeutet, dass jeder Adresse mehrere Projekte zugeordnet werden kDnnen. Umgekehrt kann jedem Projekt aber nur eine Adresse zugeordnet werden. Der Assistent definiert die Beziehung ohne referenzielle Integrit!t. 229
Tabellen
Nachschlagefeld mit Werteliste
Nachschlagefeld manuell definieren
Tipp
Im ersten Dialog des Nachschlage-Assistenten bestimmen Sie, ob das Nachschlagefeld eine Tabelle oder Abfrage oder alternativ eine Werteliste als Datenherkunft erhalten soll. Wenn Sie hier die Option Ich m4chte selbst Werte in die Liste eingeben markieren, kDnnen Sie im zweiten Dialog des Assistenten eine Werteliste mit einer oder mehreren Spalten eingeben. Die weitere Vorgehensweise ist dieselbe wie bei einer Tabelle oder Abfrage als Datenherkunft. Sie finden sp!ter in der Eigenschaft Datenherkunft allerdings die eingegebene Werteliste statt einer SQL-Abfrage. Außerdem wird in diesem Fall nat,rlich keine relationale Beziehung in der Datenbank gespeichert. Wie bereits gesagt, kDnnen Sie Nachschlagefelder auch selbst definieren. Markieren Sie dazu ein Datenfeld und w!hlen Sie einen Felddatentyp und eine FeldgrDße, die f,r eine Beziehung zum Schl,sselfeld einer anderen Tabelle oder Abfrage geeignet ist. Anschließend klicken Sie auf das Register Nachschlagen, und w!hlen Sie Listenfeld oder Kombinationsfeld f,r die Eigenschaft Steuerelement anzeigen. Stellen Sie dann die restlichen f,r Listen- und Kombinationsfelder ,blichen Eigenschaften ein. Weitere Hinweise zu den Eigenschaften von Listen- und Kombinationsfeldern finden Sie in Kapitel 6 Formulare dieses Buchs. Zus!tzliche Hinweise zur Anlage von Beziehungen finden Sie weiter oben in diesem Kapitel. Der Nachschlage-Assistent definiert zwar eine Beziehung zu einer anderen Tabelle oder Abfrage, er verzichtet jedoch auf das Indizieren des Nachschlagefeldes. Sie kDnnen die Ausf,hrungsgeschwindigkeit Ihrer Datenbank steigern, indem Sie die Schl,sseldefinition selbst ,bernehmen. 0ndern Sie dazu die Eigenschaft Indiziert des Nachschlagefeldes auf Ja (Duplikate m4glich).
Der Tabellenanalyse-Assistent Der Tabellenanalyse-Assistent ist ein gutes Hilfsmittel, um die Definiton von Tabellen zu optimieren. Er analysiert Ihre Tabelle im Hinblick auf Datenwiederholungen und macht Vorschl!ge, wie Sie diese entfernen kDnnen. Der Assistent eignet sich besonders in folgenden zwei F!llen: Wenn Sie sich nicht besonders viel M,he bei der Strukturierung Ihrer Tabellen gemacht haben, kDnnen Sie sie mit dem Tabellenanalyse-Assistenten automatisch aufsplitten lassen. Wenn Sie fremde Textdateien, Arbeitsbl!tter oder Tabellen importiert haben, kDnnen Sie diese mit dem Tabellenanalyse-Assistenten schnell und zuverl!ssig aufsplitten. Der Tabellenanalyse-Assistent untersucht die in Tabellen gespeicherten Daten auf Wiederholungen und eleminiert diese, indem er neue Tabellen anlegt. Im n!chsten Schritt stellt er eine Beziehung zwischen den aufgesplitteten Tabellen her und entwirft auf Wunsch eine Abfrage, die die beteiligten Tabellen wieder zusammenf,hrt. Als Ergebnis erhalten Sie also eine Abfrage mit denselben Daten wie die Ursprung-
230
Der Tabellenanalyse-Assistent
stabelle. Der Unterschied besteht allerdings darin, dass aufgesplittete Tabellen Datenduplikate sowie Inkonsistenzen und damit Fehler in der Datenhaltung vermeiden. Der Tabellenanalyse-Assistent ist damit ein sehr leistungsf!higes Tool, mit dem Sie zu einem besseren Datenmodell kommen. Die Dialoge des Assistenten beschreiben den Vorgang des Aufsplittens von Tabellen sehr plastisch. Es ist daher empfehlenswert, die Hilfetexte des Assistenten einmal in aller Ruhe durchzulesen. Sie kDnnen dabei viel ,ber den Aufbau und die Gestaltung einer Tabelle lernen. Der Tabellenanalyse-Assistent splittet Tabellen so auf, wie es f,r den Gebrauch mit Access optimal ist. Er h!lt sich dabei an keine aus der Datenbanktheorie gel!ufige Normalform, sondern erzeugt eine Mischung aus verschiedenen Normalformen.
Hinweis
Tabellenanalyse-Assistent starten Der Tabellenanalyse-Assistent kann nur solche Tabellen analysieren, die noch nicht geDffnet sind. Sie sollten daher vor dem Start des Assistenten alle geDffneten Tabellen, Abfragen, Formulare und Berichte schließen. Der Start des Assistenten erfolgt dann ,ber den Men,befehl Extras > Analyse > Tabelle.
Abb. 4.25 Der TabellenanalyseAssistent
Die ersten beiden Dialoge des Tabellenanalyse-Assistenten zeigen Informationen zu seinem Gebrauch an. Die Dialoge schildern die Vorgehensweise zum Einsatz des Assistenten anhand einiger Beispiele. Es ist empfehlenswert, diese Texte aufmerksam zu lesen.
231
Tabellen
Tabelle ausw!hlen
Auf der dritten Dialogseite zeigt der Assistent eine Auswahlliste der Tabellen der aktuellen Datenbank an. Markieren Sie hier die Tabellen, die Sie analysieren wollen. Es sollte sich dabei um Tabellen handeln, die sich wiederholende Informationen enthalten. Auf der vierten Dialogseite wird es dann spannend. Hier fragt der Assistent, ob er die Tabelle automatisch analysieren soll oder ob Sie das Aufsplitten der Tabelle selbst vornehmen wollen. Der Unterschied zwischen den beiden Vorgehensweisen l!sst sich am besten anhand eines Beispiels erl!utern.
Tabelle automatisch analysieren Bei der automatischen Analyse untersucht der Assistent die Tabelle und ermittelt diejenigen Datenfelder, die sich wiederholende Daten enthalten. Der Assistent kann die automatische Analyse nur durchf,hren, wenn eine Tabelle mindestens zwei Datens!tze hat. Dies ist auch sinnvoll, da die Tabellenanalyse ja nur anhand der Daten erfolgen kann. Wenn Sie beispielsweise eine Adressentabelle analysieren lassen, dann kann der Assistent vorschlagen, f,r die folgenden Felder eigene Tabellen anzulegen: Tnderungsdatum Bank Gruppe-Nr Die folgenden Abschnitte beschreiben, wie diese Vorschl!ge zu bewerten sind.
Abb. 4.26 Automatische Analyse
232
Der Tabellenanalyse-Assistent
Abbildung 4.26 zeigt ein Beispiel daf,r, was bei einer automatischen Analyse herauskommen kann. Es handelt sich um ein wahres Wirrwarr von neuen Tabellen, das auf den ersten Blick ziemlich unsinnig ist. Wie kommt das zustande? Der Assistent analysiert die Tabelle auf Felder mit gleichen Werten. Er findet dabei unter Umst!nden auch solche Felder, die Bestandteile logischer Beziehungen zu anderen Tabellen sind. Wenn Sie beispielsweise Ihre Adressentabelle mit einer weiteren Tabelle f,r Adressengruppen verkn,pft haben, dann enth!lt Ihre Adressentabelle wahrscheinlich das Feld [Gruppe-Nr]. Da dieses Feld als Nachschlagefeld verwendet wird und sich in jeder Gruppe mehrere Adressen befinden, wiederholen sich die Werte dieses Feldes. Der Tabellenanalyse-Assistent macht deshalb unter Umst!nden den Vorschlag, dieses Feld in eine weitere Tabelle auszulagern. Dies kann zumindest dann vorkommen, wenn Sie die Beziehung nicht in der Datenbank gespeichert haben und das Feld nicht als Nachschlagefeld definiert ist. Der Vorschlag des Assistenten ist jedoch hinf!llig, da die Auslagerung schon stattgefunden hat. Wenn Sie an einem Tag beispielsweise durch eine Aktualisierungsabfrage viele Datens!tze ge!ndert haben, enth!lt das Feld Tnderungsdatum ebensoviele Duplikate. Der Assistent schl!gt daher die Auslagerung dieses Feldes in eine eigene Tabelle vor. Diese w!re jedoch sinnlos, da sich der Zustand der Daten schon bald wieder !ndern kann. Nur wenige Tage sp!ter wiederholt sich das 0nderungsdatum vielleicht nur noch in ein paar Datens!tzen und die Auslagerung w!re hinf!llig. Unabh!ngig davon ist das 0nderungsdatum eine typische Eigenschaft jedes Datensatzes und sollte daher in der Adressentabelle gespeichert werden. Ein anderes Beispiel ist die Auslagerung der Bankverbindung einer Adresse. Wenn Sie beispielsweise die Bankleitzahl und den Banknamen in der Adressentabelle speichern, dann ist die Auslagerung durchaus sinnvoll. Hier tritt jedoch das Problem auf, dass die Werte von Bankleitzahl und Bank sich stets gleichermaßen in verschiedenen Datens!tzen wiederholen. Die Zuordnung von Bankleitzahl und Bank ist schließlich eindeutig. Der Assistent kann jedoch nicht wissen, dass die Auslagerung am besten ,ber die Bankleitzahl erfolgt, und macht unter Umst!nden den Vorschlag, das Feld Bank als Prim!rschl,ssel f,r die Nachschlagetabelle zu verwenden.
Beispiel: Gruppe-Nr
Beispiel: &nderungsdatum
Beispiel: Bankleitzahl
Sie haben nun die MDglichkeit, die Vorschl!ge des Assistenten zu !ndern und Ihren eigenen Vorstellungen anzupassen. Wenn Sie anschließend auf die Schaltfl!che Weiter klicken, nimmt der Assistent die 0nderungen an der Tabelle automatisch vor. Wie Sie die Vorschl!ge des Assistenten manuell ,berarbeiten, erfahren Sie im folgenden Abschnitt.
Tabelle manuell analysieren Im vorhergehenden Abschnitt haben Sie erfahren, dass die automatische Analyse einer Tabelle ihre Schwierigkeiten mit sich bringt. Selbst der leistungsf!hige Tabellenanalyse-Assistent !ndert daher nichts daran, dass Sie sich selbst einige Gedanken ,ber Ihr Datenmodell und den Entwurf Ihrer Tabelle machen m,ssen. Er ist jedoch ein gutes Hilfsmittel, um das Aufsplitten von Tabellen effektiver zu gestalten.
233
Tabellen
Sie sollten sich diese Gedanken prinzipiell vor der Dateneingabe machen. Sie haben weiter oben in diesem Kapitel bereits mehrfach erfahren, dass das nachtr!gliche 0ndern des Tabellenentwurfs zu Problemen f,hren kann. Wenn Sie bereits Daten eingegeben haben, dann kann Ihnen der Tabellenanalyse-Assistent jedoch ein wertvolles Hilfsmittel sein. Wenn Sie beispielsweise ,ber eine Adressentabelle verf,gen, die auch die Bankverbindungen jeder Person und jeder Firma speichert, dann enth!lt diese wahrscheinlich die Felder [BLZ], [Bank], [Kontonummer] und [Kontoinhaber]. Da die Zuordnung zwischen der Bankleitzahl und der Bank eindeutig ist, enth!lt die Adressentabelle zwangsl!ufig eine Redundanz, die Sie entfernen sollten. Es ist daher empfehlenswert, die Banken in einer eigenen Tabelle zu speichern. Um die Tabellen manuell aufzusplitten, w!ren folgende Schritte notwendig: 1
Sie entwerfen eine Tabellenerstellungsabfrage, die alle Bankleitzahlen und Banken in die neue Tabelle Banken kopiert.
2
Sie m,ssen sicherstellen, dass die Tabelle Banken keine doppelten Werte f,r die Bankleitzahl enth!lt. Hierf,r ist unter Umst!nden der Aufruf des Assistenten zur Duplikatsuche erforderlich. Weitere Hinweise zu diesem Assistenten finden Sie in Kapitel 5 Abfragen dieses Buchs.
3
Sie Dffnen die Tabelle Banken in der Entwurfsansicht.
4
Sie definieren das Feld BLZ als Prim!rschl,ssel.
5
Sie Dffnen die Tabelle Adressen in der Entwurfsansicht.
6
Sie lDschen das Feld Bank.
7
Sie !ndern das Feld BLZ in ein Nachschlagefeld, dessen Werte in der Tabelle Banken nachgeschlagen werden.
8
Sie speichern den Tabellenentwurf.
9
Sie benennen die Tabelle in Adressen ohne Banken um.
10
Sie entwerfen eine Abfrage, die die Daten aus den Tabellen Adressen ohne Banken und Banken wieder zusammenf,hrt.
11
Sie speichern die neue Abfrage unter dem Namen Adressen.
Tabelle manuell aufsplitten
Tabelle mit dem TabellenanalyseAssistenten aufsplitten
234
Sie sehen, dass das Aufsplitten einer Tabelle eine recht aufwendige und manchmal auch fehlertr!chtige Sache ist. Der Tabellenanalyse-Assistent kann die meisten der genannten Bearbeitungsschritte automatisch erledigen. Um das oben beschriebene Beispiel mit dem Assistenten durchzuf,hren, gehen Sie wie folgt vor:
Der Tabellenanalyse-Assistent
1
Starten Sie den Assistenten ,ber den Men,befehl Extras > Analyse > Tabelle.
2
Markieren Sie im dritten Dialog des Assistenten die Tabelle Adressen.
3
Markieren Sie im vierten Dialog des Assistenten die Option Selbst entscheiden.
Der f,nfte Dialog des Tabellenanalyse-Assistenten zeigt dann eine Auswahlliste aller Datenfelder der Adressentabelle an. Ziehen Sie als Erstes das Feld BLZ aus der Feldliste auf einen freien Arbeitsbereich. Der Assistent ordnet dann eine neue Feldauswahlliste an und fragt Sie nach einem Namen f,r die neue Tabelle. Geben Sie hier beispielsweise den Text “Banken“ ein.
Neue Tabelle entwerfen
Abb. 4.27 Aufsplitten einer Tabelle via Assistent
Der Assistent erg!nzt die neue Tabelle Banken automatisch mit einem neuen Prim!rschl,sselfeld, das er selbst anlegt. Es handelt sich hierbei um ein AutoWert-Feld, dessen Werte aufsteigend vergeben werden. Um diese zu !ndern, markieren Sie das Feld BLZ in der Liste, und klicken Sie auf das Symbol Eindeutigen Schl1ssel festlegen. Der Assistent lDscht dann das generierte Schl,sselfeld und markiert die Bankleitzahl als Prim!rschl,ssel.
Schl ssel festlegen
Wenn Sie sp!ter andere Tabellen mit Feldern anlegen, die nicht als eindeutiger Schl,ssel geeignet sind, dann ,bernehmen Sie einfach das generierte Schl,sselfeld. Wenn Sie bereits ein anderes Schl,sselfeld ausgew!hlt haben, dann klicken Sie auf das Symbol Erzeugten, eindeutigen Schl1ssel hinzuf1gen. Der Assistent generiert dann erneut ein Prim!rschl,sselfeld. 235
Tabellen
Felder verschieben
Da die neue Tabelle zus!tzlich den Namen einer Bank speichern soll, ziehen Sie auch dieses Feld aus der Adressentabelle in die Feldliste Banken. An dieser Stelle kDnnen Sie die aktuelle Tabelle durch einfaches Ziehen von Feldern mit der Maus in eine oder mehrere Tabellen aufsplitten. Wenn Sie ein Feld in eine andere Feldliste ziehen, wird es dorthin verschoben. Wenn Sie ein Feld hingegen auf einen leeren Arbeitsbereich ziehen, ordnet der Assistent eine neue Tabelle an. Das Aufsplitten der Tabelle gestaltet sich damit wirklich sehr komfortabel. Tabelle 4.15 enth!lt eine Pbersicht der Symbole, mit denen Sie der Tabellenanalyse-Assistent unterst,tzt.
Die Symbole des Tabellenanalyse-Assistenten
Symbol
Bedeutung Benennt die markierte Tabelle um Legt das markierte Feld als eindeutigen Schl,ssel fest Generiert ein AutoWert-Feld als eindeutigen Schl,ssel Macht die letzte 0nderung r,ckg!ngig Zeigt weitere Informationen zum aktuellen Dialog an Tabelle 4.15
Sie verf,gen nun ,ber zwei Tabellen. Die neue Tabelle Banken enth!lt die Felder BLZ und Bank. Beide Felder wurden aus der alten Adressentabelle entfernt. Diese erh!lt stattdessen ein Nachschlagefeld, das die Bankleitzahlen in der Bankentabelle nachschl!gt.
Tabelle umbenennen
236
Sie werden sich vielleicht dar,ber wundern, dass die ehemalige Adressentabelle nun Tabelle1 oder !hnlich heißt. Der Grund hierf,r besteht darin, dass der Tabellenanalyse-Assistent auf Wunsch sp!ter eine Abfrage anlegt, die die Adress- und die Bankdaten wieder zusammenf,hrt. Wenn diese Abfrage wiederum den Namen Adressen erh!lt, entf!llt das Anpassen eventuell vorhandener Formulare oder Berichte. Aus Gr,nden der Pbersichtlichkeit sollten Sie den Namen der Tabelle !ndern. Markieren Sie dazu die Feldliste f,r Tabelle1 und klicken Sie auf das Symbol Tabelle umbenennen. Geben Sie den Text “Adressen ohne Banken“ als neuen Namen ein.
Der Tabellenanalyse-Assistent
Abb. 4.28 Aufsplitten einer Tabelle
Abb. 4.29 Zusammenf hren von Tabellen
237
Tabellen
Wenn Sie alle erforderlichen 0nderungen vorgenommen haben, klicken Sie auf die Schaltfl!che Weiter. Im letzten Dialog des Assistenten kDnnen Sie ,ber eine Optionsgruppe einstellen, ob der Assistent die oben beschriebene Abfrage generieren soll. Wenn Sie bereits ,ber Formulare und Berichte verf,gen, die auf die Adressdaten zugreifen, dann sollten Sie dieses Angebot unbedingt wahrnehmen. Da die neue Abfrage denselben Namen erh!lt wie die alte Tabelle, kDnnen Sie Formulare und Berichte ohne 0nderungen weiterverwenden. Klicken Sie auf die Schaltfl!che Fertig stellen, damit der Assistent folgende Arbeitsschritte f,r Sie erledigt: 1
Er fertigt unter dem Namen Adressen_Alt eine Sicherheitskopie der Adressentabelle an.
2
Er erzeugt die neue Tabelle Banken mit dem Feld BLZ als Prim!rschl,ssel.
3
Er benennt die urspr,ngliche Tabelle von Adressen in Adressen ohne Banken um.
4
Er entfernt die Felder BLZ und Bank aus der Adressentabelle.
5
Er f,gt der Adressentabelle ein neues Feld zum Nachschlagen in der Tabelle Banken hinzu.
6
Er speichert eine 1:n-Beziehung zwischen den Tabellen Banken und Adressen ohne Banken in der Datenbank.
7
Er entwirft die Abfrage Adressen, die die Felder aus beiden Tabellen wieder zusammenf,hrt.
Nachdem er die 0nderungen durchgef,hrt hat, zeigt der Tabellenanalyse-Assistent noch einen Dialog mit weiteren Informationen an. Obwohl der Tabellenanalyse-Assistent umfangreiche 0nderungen vorgenommen hat, kDnnen Sie Ihre Formulare und Berichte weiterhin verwenden. Da die neue Abfrage Adressen dieselben Daten wie die ehemalige Tabelle Adressen liefert, funktioniert alles so wie vorher. Zumindest auf den ersten Blick. Hinter den Kulissen gibt es jedoch einige 0nderungen, die der Assistent nicht automatisch ber,cksichtigt hat.
Andere Sortierreihenfolge
Nicht bernommene Beziehungen
238
Ein leicht zu behebender Unterschied besteht darin, dass die Sortierreihenfolge der neuen Abfrage manchmal eine andere ist als die der alten Tabelle. Sie kDnnen dies leicht beheben, indem Sie die Abfrage in der Entwurfsansicht Dffnen und eine andere Sortierreihenfolge herstellen. Weitere Hinweise zu Abfragen finden Sie in Kapitel 5 Abfragen dieses Buchs. Ein weiterer Unterschied zwischen der alten Tabelle und der neuen Abfrage r,hrt daher, dass der Assistent die Beziehungen der Tabelle manchmal nicht ,bernimmt. Wenn Sie beispielsweise davon ausgehen, dass die urspr,ngliche Adressentabelle mit den Tabellen Adressengruppen und Projekte verkn,pft ist, dann bleibt sie das durch das einfache Umbenennen in Adressen_Alt auch weiterhin. Ein Blick in das
Der Tabellenanalyse-Assistent
Beziehungsfenster der Datenbank zeigt, dass der Assistent die relationalen Beziehungen allerdings nicht automatisch auf die neue Tabelle Adressen ohne Banken ,bertr!gt.
Abb. 4.30 Der TabellenanalyseAssistent bertr!gt keine Beziehungen
Der Assistent erstellt lediglich die gew,nschte Beziehung zwischen den Tabellen Adressen ohne Banken und Banken. Die Beziehungen zu den Tabellen Projekte und Adressengruppen m,ssen Sie selbst neu herstellen. Dies ist ein Schwachpunkt des Tabellenanalyse-Assistenten, der bei einer zuk,nftigen Version hoffentlich behoben wird. Sie kDnnen dieses Problem nur umgehen, indem Sie die oben beschriebene Vorgehensweise zum manuellen Aufsplitten einer Tabelle verwenden.
239
Tabellen
Hyperlinks in einer Tabelle speichern Access bietet seit der Version 97 die MDglichkeit, so genannte Hyperlinks in einer Tabelle zu speichern. Als Voraussetzung hierf,r m,ssen Sie der Tabelle eines oder mehrere Datenfelder mit dem Typ Hyperlink hinzuf,gen.
Was ist ein Hyperlink? Der Begriff Hyperlink tritt meistens im Zusammenhang mit dem Internet oder World Wide Web (kurz: WWW) auf. Dort verweist ein Hyperlink auf eine andere Webseite, eine Datei oder auf irgend etwas anderes, das innerhalb eines InternetBrowsers angezeigt werden kann. Ein Hyperlink l!sst sich daher als Querverweis oder Verkn,pfung verstehen.
Hyperlink und Verkn pfungen
0hnlich wie Hyperlinks im WWW spielen Verkn,pfungen bei Windows eine wichtige Rolle. Hier kDnnen Sie Verkn,pfungen zu Programmen, Dokumenten und Ordnern erstellen. Ein Doppelklick auf eine Verkn,pfung zu einem Dokument startet die Anwendung, mit derdieses Dokument erstellt wurde, und Dffnet das Dokument zur Bearbeitung. Pber andere Verkn,pfungen kDnnen Sie Programme starten oder Windows-Ordner Dffnen. Durch das Erstellen einer Verkn,pfung im Ordner SendTo ver!ndern Sie das Kontextmen, Senden an. Die Beispiele f,r Verkn,pfungen sind zu zahlreich, um sie alle aufzuz!hlen. So wichtig Verkn,pfungen f,r die Benutzung von Windows sind, so leicht lassen sie sich auch erstellen. Oft brauchen Sie ein Objekt nur mit der Maus an irgendeine Stelle zu ziehen, und schon erstellt Windows eine Verkn,pfung zu diesem Objekt. Manchmal ist es sinnvoll, das Objekt mit der rechten Maustaste zu ziehen, um anschließend den Befehl Verkn1pfung(en) hier erstellen aus dem Kontextmen, zu w!hlen.
Hyperlinks in Access
Hyperlinks in Access haben starke 0hnlichkeiten mit Hyperlinks im WWW und mit den Verkn,pfungen von Windows. Sie kDnnen in einem Hyperlink-Feld beispielsweise die Adresse einer WWW-Seite speichern. Ein Klick auf den Hyperlink startet dann Ihren Web-Browser und zeigt die entsprechende WWW-Seite an. Aber auch ohne Internet-Anschluss kDnnen Sie Hyperlinks nutzen. So kDnnen sie Verkn,pfungen zu einem Access-Formular, einem Excel-Arbeitsblatt, einer PowerPoint-Folie oder einem Word-Dokument speichern. Hyperlinks kommen in Access an mehreren Stellen vor: Mit dem Felddatentyp Hyperlink lassen sich Hyperlinks in Tabellen speichern. In Formularen und Berichten kDnnen Sie Steuerelemente an Hyperlink-Felder binden. Hier !ndert sich der Hyperlink mit jedem Datensatz der zugrunde liegenden Tabelle oder Abfrage.
240
Bezeichnungsfelder, Bilder und Befehlsschaltfl!chen von Formularen und Berichten kDnnen Hyperlinks enthalten. Hier bleibt der Hyperlink f,r alle Datens!tze der zugrunde liegenden Tabelle oder Abfrage gleich.
Hyperlinks in einer Tabelle speichern
Die folgenden Abschnitte beschreiben den Gebrauch von Hyperlink-Feldern in Tabellen. Die Verwendung von Hyperlinks in Abfragen ist damit identisch. In Kapitel 6 Formulare finden Sie weitere Hinweise zum Erstellen von gebundenen Textfeldern, Bezeichnungsfeldern, Bildern und Befehlsschaltfl!chen mit Hyperlinks.
Hyperlink-Felder anlegen Zur Anlage eines neuen Hyperlink-Feldes Dffnen Sie eine Tabelle in der Entwurfsansicht. Geben Sie einen neuen Feldnamen ein und w!hlen Sie Hyperlink als Felddatentyp. Wechseln Sie anschließend in die Datenblattansicht, um Werte in das Hyperlink-Feld einzugeben. Sie kDnnen Hyperlink-Felder auch direkt in der Datenblattansicht anlegen. Klicken Sie mit der rechten Maustaste auf eine Spalten,berschrift und w!hlen Sie den Befehl Spalte einf1gen aus dem Kontextmen,. Wenn Sie als Erstes die Adresse einer Webseite (z.B. http://www.fullAccess.de) in das neue Feld eingeben, !ndert Access den Felddatentyp automatisch auf Hyperlink.
Hyperlinks im Datenblatt anlegen
Hyperlinks einfgen Das Einf,gen eines Hyperlinks erfolgt ,ber die Auswahl des Men,befehls Einf1gen > Hyperlink, einen Klick auf das gleichnamige Symbol oder die Auswahl des Befehls Hyperlink > Hyperlink bearbeiten aus dem Kontextmen, eines Hyperlink-Feldes. Access Dffnet in jedem Fall den Dialog Hyperlink einf1gen, mit dem Sie die Einzelheiten des Hyperlinks bestimmen.
Hyperlink einf gen
Abb. 4.31 Dialog Hyperlink einf3gen
241
Tabellen
Sie kDnnen ,ber den Men,befehl Einf1gen > Hyperlinkspalte auch gleich eine ganze Spalte mit dem Datenformat Hyperlink einer Tabelle hinzuf,gen. Dazu muss noch nicht einmal in den Entwurfmodus gewechselt werden. Das Einf,gen von Hyperlinks ist seit Access 97 deutlich komfortabler geworden. Der Dialog Hyperlink einf1gen ist folgendermaßen aufgebaut: Auf der linken Seite befinden sich in einer senkrechten Spalte mit der Pberschrift Link Zu vier Symbole, ,ber die verschiedene Eingabemasken gew!hlt werden kDnnen. Mithilfe dieser Eingabemasken kDnnen Hyperlinks zu verschiedenen Objekten und deren Eigenschaften editiert werden. Soll ein Hyperlink zu einer Datei oder Webseite erstellt werden, w!hlt man das gleichnamige Symbol aus der Link zu-Leiste. In der Eingabemaske auf der rechten Seite des Hyperlink einf1gen-Dialogs stellt Ihnen Access mehrere MDglichkeiten zum Ausw!hlen einer Datei oder Webseite zur Verf,gung.
Adresse von Hand eingeben
In das Feld Dateityp oder Webseite kDnnen Sie den Dateinamen oder den Namen der Webseite von Hand eingeben. Die Angabe der Internet-Adresse erfolgt stets in Form einer URL (englisch: Uniform Resource Locator). Eine URL kann unter anderem eine Web-Adresse wie http://www.Microsoft.de oder eine FTP-Adresse wie ftp://ftp.microsoft.com/deskapps/access/ enthalten. Dar,ber hinaus gibt es im Internet zahlreiche weitere Formate f,r Adressen, die an dieser Stelle nicht alle aufgef,hrt werden kDnnen.
Datei als Adresse
Relativen oder absoluten Pfad verwenden
Statt einer URL kDnnen Sie auch einen Dateinamen eingeben oder ausw!hlen. Ein Klick auf die Schaltfl!che Durchsuchen Dffnet den Dialog Verkn1pfung zu Datei, mit dem Sie eine Datei von einem lokalen oder einem Netzwerk-Laufwerk ausw!hlen kDnnen. Ein Hyperlink kann den Pfad zu einer Datei relativ oder absolut speichern. Ein Beispiel f,r einen absoluten Pfad lautet wie folgt: C:\Eigene Dateien\Finanzen.xls Ein relativer Pfad bezieht sich im Unterschied zu einem absoluten Pfad stets auf eine so genannte Hyperlink-Basis. Solange Sie nichts anderes festlegen, ist dies der Ordner, in dem sich die aktuelle Datenbank befindet. Wenn Sie das Kontrollk!stchen Relativen Pfad f1r Hyperlink verwenden ankreuzen, zeigt Access den relativen Pfad im Feld Pfad an. Wenn sich bei obigem Beispiel die aktuelle Datenbank ebenfalls im Ordner C:\Eigene Dateien befindet, lautet der relative Pfad wie folgt: Finanzen.xls
242
Hyperlinks in einer Tabelle speichern
Verlagern Sie die Datenbank hingegen in den Ordner C:\Eigene Dateien\Projekte, lautet der relative Pfad folgendermaßen: ..\Finanzen.xls Die zwei Punkte bedeuten, dass Access im ,bergeordneten Ordner nach der Datei sucht. Die Verwendung relativer Pfade hat den Vorteil, dass Sie eine Datenbank und verkn,pfte Dateien leichter auf andere Laufwerke oder in andere Ordner verlagern kDnnen.
Hyperlink-Basis !ndern
Abb. 4.32 Hyperlink-Basis !ndern
Wenn Sie nur die Datenbank verlagern, m,ssen Sie allerdings die Hyperlink-Basis !ndern. W!hlen Sie hierzu den Befehl Datei > Datenbankeigenschaften aus der Men,leiste und geben Sie einen Pfad in das Feld Hyperlink-Basis des Registers Datei-Info ein. Wenn Sie beispielsweise den Pfad D:\Projekte\Arbeitsbl7tter als Hyperlink-Basis eingeben, dann verweist der relative Pfad ..\Finanzen.xls auf die Datei 243
Tabellen
D:\Projekte\Finanzen.xls und zwar unabh!ngig davon, in welchem Ordner sich die aktuelle Datenbank befindet.
UNC-Pfad
Sie kDnnen einen absoluten Pfad auch als UNC-Pfad (englisch: Universal Naming Convention) in der Form \\Server\Shared\Ordner\Dateiname angeben. Der folgende Pfad bezieht sich auf den Netzwerk-PC SNI-Notebook und dessen als Notebook_C freigegebene Festplatte: \\SNI-Notebook\Notebook_C\Eigene Dateien\Finanzen.xls
Auswahl von Dateien und WebAdressen
Neben der manuellen Eingabe von Dateinamen bzw. URLs kDnnen diese auch aus Listen ausgew!hlt werden. Sie kDnnen dabei auf die Auflistung der zuletzt verwendeten Dateien bzw. Dokumente bisher aufgerufener Webseiten und bisher eingef,gter Hyperlinks w!hlen. Dies kDnnen Sie mithilfe des Listenfeldes mit der Bezeichnung oder aus Liste ausw7hlen: tun. Durch Bet!tigen der gleichnamigen Symbolschaltfl!chen kDnnen Sie dabei zwischen den Rubriken Zuletzt verwendet, Besuchte Webseiten und Eingef1gte Hyperlinks w!hlen.
Suchen von Dateien und Web-Adressen
Als Letztes verbleibt die MDglichkeit, Dateien oder Webseiten selbst zu suchen und auszuw!hlen. Wenn Sie die Schaltfl!che Datei bet!tigen, Dffnet sich der Dialog Verkn1pfung zu Datei. Hier kDnnen Sie nach dem ,blichen Verfahren die gew,nschte Datei ausw!hlen. Pber die Schaltfl!che Webseite Dffnen Sie den Internet Explorer bzw. Ihren Standard-Browser. Mit dessen Hilfe kDnnen Sie im Internet nach der gew,nschten Seite suchen.
Textmarke definieren
Durch Bet!tigen der Schaltfl!che Textmarke kDnnen Sie eine bestimmte Stelle innerhalb des Dokuments markieren, auf das der Hyperlink verweisen soll. Diese Stelle wird auch als Unteradresse bezeichnet. Die Angabe der Unteradresse variiert mit der Anwendung, mit der Sie die Datei erstellt haben. Einige Beispiel lauten wie folgt: Bei einem Word-Dokument kDnnen Sie den Namen einer Textmarke (z.B. MeineMarke) angeben. Bei einem Excel-Arbeitsblatt kDnnen Sie einen Bereichs- oder Zellennamen (z.B. Tabelle1!B5) angeben. Bei einer PowerPoint-Pr!sentation kDnnen Sie eine Foliennummer angeben.
244
Hyperlinks in einer Tabelle speichern
Eine einfache MDglichkeit zum Einf,gen eines Hyperlinks besteht in der Anwendung der Technik des Ziehens. Diese Technik eignet sich vor allem f,r den Fall, dass der Hyperlink auf eine bestimmte Stelle innerhalb einer Datei verweisen soll. Wenn Sie beispielsweise eine Zelle aus einem Excel-Arbeitsblatt in ein Hyperlink-Feld ziehen, setzt Access automatisch die richtigen Werte f,r Adresse und Unteradresse ein. Ein Hyperlink kann nicht nur auf externe Dateien, sondern auch auf die Objekte der aktuellen Datenbank verweisen. Um einen solchen Hyperlink einzuf,gen, gibt es zwei MDglichkeiten. Lassen Sie das Feld Datei oder Webseite leer und klicken Sie direkt auf die Schaltfl!che Textmarke. Sinnvoller ist es jedoch, in der Spalte Link zu auf die Option Aktuelle Datenbank zu wechseln. Diese Option wird weiter unten in diesem Abschnitt behandelt. Im Textfeld Text anzeigen als kDnnen Sie – abweichend vom Datei- oder Webseitennamen – den Text bestimmen, der letztendlich in der Tabelle zur Benennung des Hyperlinks erscheinen soll.
Hyperlinks mit der Maus einf gen
Hyperlinks auf Objekte einer Datenbank einf gen
Text des HyperlinkFeldes
Abb. 4.33 Festlegen der HyperlinkQuickinfo
Durch einen Mausklick auf die Schaltfl!che Quickinfo... Dffnen Sie den Dialog Hyperlink-Quickinfo festlegen. Hier kDnnen Sie einen Hilfetext eingeben, der automatisch eingeblendet wird, sobald sich der Mauszeiger ,ber der Datenzelle befindet, die den Hyperlink beinhaltet. Per Mausklick auf das Symbol Aktuelle Datenbank kDnnen Sie Hyperlinks erstellen, die auf Objekte der momentan bearbeiteten Datenbank verweisen. Dazu w!hlen Sie zun!chst eine Objektgruppe (Tabellen, Abfragen, Formulare...) aus und bestimmen dann das gew,nschte Objekt aus der Liste.
Quickinfo
245
Tabellen
Es gibt auch hier die MDglichkeit, dem Hyperlink abweichend vom eigentlichen Objektnamen einen eigenen Namen zu geben und zus!tzliche Informationen zu diesem Hyperlink ,ber den Quickinfo-Dialog anzugeben.
Abb. 4.34 Hyperlinks zu Objekten der Datenbank
Wenn Sie die Schaltfl!che Neue Seite erstellen w!hlen, Dffnen Sie eine Eingabemaske, mit der Sie die Attribute eines Hyperlinks auf eine noch zu erstellende Seite festlegen kDnnen. W!hlen Sie diesen Hyperlink sp!ter an, wird eine neue, leere Seite geDffnet. Dabei gibt die Endung des Dateinamens die Art des Dokuments an.
Abb. 4.35 Einrichten eines Hyperlinks zum Erstellen einer neuen Seite
246
Hyperlinks in einer Tabelle speichern
Sie kDnnen auch Hyperlinks in Tabellen einf,gen, deren Ziel das Erstellen einer E-Mail ist. Beim Aufrufen des entsprechenden Hyperlinks wird Ihr E-Mail-Programm aufgerufen. Dabei wird automatisch die Adresse des Empf!ngers sowie – wenn gew,nscht – der Betreff der E-Mail eingef,gt. Die E-Mail-Adresse und den Betreff kDnnen Sie in die gleichnamigen Textfelder des Hyperlink bearbeiten-Dialogs eingeben. Dar,ber hinaus kann die E-Mail-Adresse aus der Liste der bereits benutzten Adressen ausgew!hlt werden.
Abb. 4.36 Einrichten einer E-MailAdresse als Hyperlink
Hyperlinks bearbeiten Das Anklicken eines Hyperlinks mit der Maus f,hrt stets zum Rffnen der Datei, auf die der Hyperlink verweist. Falls erforderlich, startet Access hierf,r den Internet Explorer, Excel, PowerPoint, Word oder ein anderes Anwendungsprogramm. Um einen Hyperlink zu bearbeiten, m,ssen Sie ihn deshalb mit der rechten Maustaste anklicken. Der Befehl Hyperlink des Kontextmen,s Dffnet dann eine Liste weiterer Befehle. Der Befehl Hyperlink bearbeiten Dffnet den Dialog zum Einf,gen von Hyperlinks. Mit dem Befehl Text anzeigen !ndern Sie den Anzeigetext des Hyperlinks. Geben Sie den neuen Text direkt in das Eingabefeld des Kontextmen,s ein. Weitere Befehle dienen dem Rffnen und Kopieren von Hyperlinks. Mit Zu Favoriten hinzuf1gen kopieren Sie den Hyperlink in den gleichnamigen Ordner im Windows-Verzeichnis. Um einen Hyperlink zu lDschen, w!hlen Sie den Befehl Hyperlink entfernen. Hyperlinks lschen
247
Tabellen
Abb. 4.37 Hyperlink bearbeiten
Hyperlinks vollst!ndig anzeigen
Access zeigt im Datenblatt nur den Anzeigetext des Hyperlinks an. Erst mit dem Bet!tigen der "-Taste oder einem Klick mit der rechten Maustaste auf das Hyperlink-Feld kDnnen Sie alle Elemente des Hyperlinks direkt im Datenblatt betrachten. Den gleichen Effekt erreichen Sie, indem Sie die Einf,gemarke in dieses Feld bewegen. Access trennt die drei Elemente des Hyperlinks dann durch Lattenkreuze (#). Ein Beispiel sieht folgendermaßen aus: Arbeitsblatt Finanzen#Finanzen.xls#Tabelle1!A1
Optionen fr Hyperlinks in Datenbl%ttern Access zeigt Hyperlinks in Datenbl!ttern mit blauer Schrift und unterstrichen an. Nachdem ein Hyperlink w!hrend einer Arbeitssitzung einmal erfolgreich ausgef,hrt wurde, gilt er als gesichteter Hyperlink. Access zeigt gesichtete Hyperlinks mit der Farbe Lila an. Um diese Optionen zu !ndern, gehen Sie wie folgt vor:
248
1
W!hlen Sie den Befehl Extras > Optionen aus der Men,leiste.
2
Klicken Sie im Dialog Optionen auf das Register Allgemein.
3
Bet!tigen Sie die Weboptionen-Schaltfl!che.
Hyperlinks in einer Tabelle speichern
Abb. 4.38 Optionen f r Hyperlinks
Mit den Einstellungen dieses Dialogs !ndern Sie die Farben f,r Hyperlinks und gesichtete Hyperlinks. Das Kontrollk!stchen bestimmt, ob Hyperlinks unterstrichen und ob Access Hyperlink-Adressen in der Statuszeile anzeigt werden. Wenn Sie die Optionen f,r die Anzeige von Hyperlinks !ndern, wirkt sich das nicht nur auf die Anzeige in Datenbl!ttern, sondern auch auf die Anzeige in Formularen aus.
Hinweis
249
Abfragen Abfrage manuell entwerfen Tabellen und Abfragen hinzufgen Spalten ausw%hlen und anordnen Abfrageeigenschaften Abfragekriterien definieren Abfrage sortieren Abfrage speichern und ausfhren Berechnete Felder Duplikate unterbinden Datens%tze gruppieren Kreuztabellenabfragen Wann kann ein Dynaset bearbeitet werden? Parameter in Abfragekriterien Aktionsabfragen Die SQL-Ansicht des Abfragefensters Abfrage dokumentieren Die PivotTable-Ansicht und die PivotChart-Ansicht
255 258 262 267 269 278 279 279 281 282 290 298 300 303 322 325 326
5
Abfragen
Mit Abfragen stellen Sie die in Ihrer Datenbank gespeicherten Daten so zusammen, wie Sie sie benDtigen. Mit einer Abfrage selektieren Sie beispielsweise nur die Umsatz- und Adressdaten aus Ihrer Datenbank, um sie in einem Diagramm darzustellen. Auf der einen Seite kDnnen Sie mit Abfragen nur ausgew!hlte Daten aus einer Tabelle selektieren, auf der anderen Seite aber auch Daten aus mehreren Tabellen zusammenstellen. Abfragen sind daher ein sehr m!chtiges Mittel zur Datenaufbereitung und dar,ber hinaus auch zur Datenbearbeitung. Zum Entwurf einer Abfrage gehen Sie wie folgt vor:
Abfragetypen
1
Sie w!hlen die Tabellen mit den Daten aus, die Sie benDtigen.
2
Wenn diese nicht schon in der Datenbank gespeichert sind, definieren Sie Beziehungen zwischen den Tabellen.
3
Sie w!hlen die Datenfelder bzw. Spalten aus den Tabellen aus, die Sie betrachten wollen.
4
Sie definieren Kriterien, um die Anzahl der Datens!tze einzuschr!nken.
5
Sie definieren mDglicherweise Gruppierungen und Berechnungen, um die Daten neu zusammenzustellen.
Das Ergebnis einer Abfrage ist in der Regel eine individuelle Sicht auf die in Tabellen gespeicherten Daten. Sie kDnnen das Abfrageergebnis direkt in der Datenblattansicht betrachten und oft auch bearbeiten. Dar,ber hinaus dienen Abfragen h!ufig als Datenherkunft f,r weitere Abfragen sowie Formulare und Berichte. Access unterscheidet verschiedene Typen von Abfragen: Auswahlabfragen w!hlen Zeilen und Spalten aus verschiedenen Tabellen aus. Kreuztabellenabfragen gruppieren den Datenbestand nach mindestens zwei Kriterien und stellen das Ergebnis in einer zweidimensionalen Tabelle dar. Mit Aktualisierungsabfragen lassen sich Datenfelder automatisch !ndern. Mit Einf,geabfragen lassen sich Datens!tze automatisch einf,gen. Mit LDschabfragen lassen sich Datens!tze automatisch lDschen. Bei Tabellenerstellungsabfragen erstellt Access eine neue Tabelle und speichert darin das Ergebnis der Abfrage. Mit der strukturierten Abfragesprache SQL kDnnen Sie einige besondere Abfragetypen (Union, Pass-Through und Datendefinition) realisieren.
252
Abfragen
Der h!ufigste Abfragetyp sind Auswahlabfragen, die wie auch die Kreuztabellenabfragen eine individuelle Ansicht von Daten liefern. Mit Aktualisierungs-, Einf,ge-, LDsch- und Tabellenerstellungsabfragen kDnnen Sie die in Tabellen gespeicherten Daten ver!ndern. Access bietet die MDglichkeit, in den Formular- und Berichts-Assistenten Daten aus mehreren Tabellen zusammenzustellen. Die Assistenten entwerfen automatisch eine geeignete SELECT-Anweisung, die als Datenherkunft des Formulars oder Berichts eingesetzt wird. Weitere Hinweis zu diesem Thema finden Sie in Kapitel 6 Formulare und Kapitel 7 Berichte dieses Buchs. Access unterst,tzt Sie beim Abfrageentwurf durch mehrere Assistenten. Alternativ besteht die MDglichkeit, Abfragen manuell zu entwerfen. Sie erhalten einen guten Pberblick der MDglichkeiten, indem Sie wie folgt vorgehen:
Tipp
Abfrage entwerfen
W!hlen Sie im Datenbankfenster das Register Abfragen, und klicken Sie auf die Schaltfl!che Neu, oder w!hlen Sie den Befehl Einf1gen > Abfrage aus der Men,leiste.
Abb. 5.1 Der Dialog Neue Abfrage
Access Dffnet in beiden F!llen den Dialog Neue Abfrage, der eine Pbersicht der MDglichkeiten zum Abfrageentwurf zeigt. Bei einem Doppelklick auf den Eintrag Auswahlabfrage-Assistent startet Access den gleichnamigen Assistenten. Sie finden die Beschreibung dieses Assistenten in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs.
Auswahlabfrageassistent
253
Abfragen
Kreuztabellenabfrage-Assistent
Pivottabellen-Assistent
Assistent zur Duplikatsuche
Assistent zur Inkonsistenzsuche
Entwurfsansicht
Hinweis
254
Der Kreuztabellenabfrage-Assistent eignet sich hervorragend, um Daten in Zeilen und Spalten zu gruppieren. Innerhalb der Tabelle kDnnen Sie dann verschiedene Berechnungen durchf,hren lassen und beispielsweise Ums!tze addieren. Weiter unten in diesem Kapitel erfahren Sie, was Kreuztabellen sind und wie Sie sie entwerfen. Die so genannten Pivot-Tabellen der Tabellenkalkulation Excel sind eine Weiterentwicklung der Kreuztabellentechnik. Sie bieten deshalb noch bessere MDglichkeiten zur Datenauswertung. Mit dem Pivot-Tabellen-Assistenten von Access kDnnen Sie den Pivot-Tabellen-Assistenten von Excel direkt auf die in der Access-Datenbank gespeicherten Daten anwenden. Das Einbinden der Pivot-Tabelle erfolgt dann ,ber ein neues OLE-Objekt eines Formulars. Weitere Hinweise zum Start des Assistenten finden Sie in Kapitel 6 Formulare dieses Buchs. Schauen Sie dort in der Beschreibung der Formular-Assistenten nach. Der Assistent zur Duplikatsuche eignet sich zum Auffinden von sich wiederholenden Werten in einem Datenfeld. Der Aufruf dieses Assistenten ist empfehlenswert, bevor Sie ein eindeutiges Schl,sselfeld definieren wollen. Sie finden die Beschreibung des Assistenten zur Duplikatsuche im gleichnamigen Abschnitt weiter unten in diesem Kapitel. Der Assistent zur Inkonsistenzsuche ermittelt Datens!tze, zu denen in einer anderen Tabelle keine Bez,ge existieren. Ein typisches Beispiel sind Projekte, die im Verkn,pfungsfeld eine Adressennummer enthalten, die in der Adressentabelle nicht angelegt ist. Der Aufruf dieses Assistenten ist empfehlenswert, bevor Sie referenzielle Integrit!t in einer Beziehung definieren wollen. Sie finden die Beschreibung dieses Assistenten ebenfalls weiter unten in diesem Kapitel. Mit einem Doppelklick auf den Eintrag Entwurfsansicht im Dialog Neue Abfrage Dffnet Access die Entwurfsansicht einer neuen Abfrage. Die folgenden Abschnitte dieses Kapitels beschreiben den so initiierten manuellen Entwurf einer Abfrage. W!hrend des manuellen Entwurfs von Abfragen lernen Sie viele Grundlagen kennen, die Ihnen letztendlich auch beim Gebrauch der Assistenten zugute kommen. Bei fr,heren Access-Versionen gibt es zus!tzlich zu den oben aufgef,hrten Assistenten noch den Assistenten zur Datenarchivierung. Seit Access 97 entf!llt dieser. Weiter unten in diesem Kapitel finden Sie eine Beschreibung, wie Sie auch ohne Assistent Daten mit Tabellenentwurfs-, Anf,ge- und LDschabfragen archivieren kDnnen.
Abfrage manuell entwerfen
Abfrage manuell entwerfen Der Entwurf einer Abfrage erfolgt in der Entwurfsansicht des Abfragefensters und geschieht meistens nach folgendem Schema: 1
Sie Dffnen die Entwurfsansicht einer neuen Auswahlabfrage.
2
Sie f,gen die Tabellen und Abfragen hinzu, auf denen Ihre Abfrage basiert.
3
Wenn diese in der Datenbank noch nicht gespeichert sind, definieren Sie relationale Beziehungen zwischen den Tabellen und Abfragen.
4
Sie ziehen die benDtigten Datenfelder in den Entwurfsbereich der Abfrage.
5
Sie definieren Kriterien, die die Sicht auf die Daten einschr!nken.
6
Sie bestimmen die Spalteneigenschaften, um die Anzeige des Abfrageergebnisses festzulegen.
7
Sie speichern die Abfrage.
Diese Vorgehensweise ist selbst bei den unterschiedlichen Abfragetypen stets die gleiche. Bevor Sie beispielsweise eine LDschabfrage entwerfen, gestalten Sie zun!chst eine Auswahlabfrage. Erst wenn die Auswahlabfrage, deren Funktionsweise Sie in der Datenblattansicht kontrollieren kDnnen, alle zu lDschenden Datens!tze ermittelt hat, wandeln Sie sie in eine LDschabfrage um. So kDnnen Sie den Abfrageentwurf testen, bevor Sie Datens!tze lDschen.
Vorgehensweise zum Abfrageentwurf
Tipp
Entwurfsansicht &ffnen Neben den oben beschriebenen MDglichkeiten kDnnen Sie folgende Variante anwenden, um eine im Datenbankfenster markierte Tabelle direkt in den Abfragenentwurf zu ,bernehmen: 1
Markieren Sie im Datenbankfenster das Register Tabellen.
2
Markieren Sie die Tabelle, auf der die Abfrage basieren soll.
3
W!hlen Sie den Eintrag Abfrage aus der Liste des Symbols Neues Objekt.
4
Doppelklicken Sie im Dialog Neue Abfrage auf den Eintrag Entwurfsansicht.
Access Dffnet das Abfragefenster und f,gt die markierte Tabelle automatisch hinzu. Wenn Sie nachtr!glich weitere Tabellen oder Abfragen hinzuf,gen wollen, dann w!hlen Sie den Befehl Abfrage > Tabelle anzeigen aus der Men,leiste oder Sie klicken auf das entsprechende Symbol.
Abfrageentwurf aus dem Datenbankfenster
Tabellen oder Abfragen hinzuf gen
255
Abfragen
Das Symbol Neues Objekt steht Ihnen nicht nur bei aktivem Datenbankfenster, sondern praktisch immer w!hrend der Arbeit mit Access zur Verf,gung. So kDnnnen Sie jederzeit den Entwurf einer neuen Abfrage oder eines anderen Datenbankobjekts beginnen. Beachten Sie, dass das Aussehen dieses Symbols sich nach der Auswahl einer der Optionen (z.B. AutoFormular, AutoBericht, Neue Tabelle usw.) dem Aussehen des Symbols der jeweiligen Option anpasst.
Eine bestehende Abfrage modifizieren Um eine bereits bestehende Abfrage zu modifizieren, gehen Sie wie folgt vor: 1
Markieren Sie im Datenbankfenster das Register Abfragen.
2
Markieren Sie den Abfragenamen.
3
Klicken Sie auf die Schaltfl!che Entwurf, oder w!hlen Sie den Befehl Entwurf aus dem Kontextmen, der Abfrage.
Das Abfragefenster Access zeigt im oberen Bereich des Abfragefensters alle geDffneten Tabellen, Abfragen und deren Beziehungen an. Der untere Bereich des Abfragefensters nennt sich Entwurfsraster.
Abb. 5.2 Das Abfragefenster
256
Abfrage manuell entwerfen
Sie benDtigen das Entwurfsraster, um die Zeilen bzw. Datens!tze und die Spalten bzw. Datenfelder des Abfrageergebnisses zu bestimmen. Sie definieren hier unter anderem Abfragekriterien, Sortierkriterien, Gruppierungen und Berechnungen.
Entwurfsraster
Die Symbolleiste des Abfragefensters Die Symbolleiste des Abfragefensters enth!lt einige Symbole, die Ihnen bereits bekannt sind. Dazu z!hlen beispielsweise die Symbole zum Wechseln zwischen der Entwurfs- und der Datenblattansicht einer Abfrage. Einige andere Symbole lernen Sie erst im Verlauf dieses Kapitels kennen. Tabelle 5.1 enth!lt eine Pbersicht der Symbole des Abfragefensters.
(bersicht der Symbole im Abfrageentwurf
Symbolleiste im Abfrageentwurf
Symbol
Bedeutung Aktiviert die Datenblattansicht Speichert den Abfrageentwurf Druckt Daten (ist im Abfrageentwurf nicht verf,gbar) Aktiviert die Seitenansicht (ist im Abfrageentwurf nicht verf,gbar) Pr,ft die Rechtschreibung von Texten (ist im Abfrageentwurf nicht verf,gbar) Verschiebt das markierte Element in die Zwischenablage Kopiert das markierte Element in die Zwischenablage F,gt den Inhalt der Zwischenablage ein Pbertr!gt Formate (ist im Abfrageentwurf nicht verf,gbar) Macht die letzte 0nderung r,ckg!ngig 0ndert den Abfragetyp F,hrt die Abfrage aus Rffnet den Dialog Tabelle anzeigen zum Hinzuf,gen weiterer Tabellen und Abfragen 257
Abfragen
Symbolleiste im Abfrageentwurf (Forts.)
Symbol
Bedeutung Blendet im Entwurfsratser die Zeile Funktionen ein 0ndert die Abfrageeigenschaft Spitzenwerte Blendet das Fenster Eigenschaften ein Startet den Ausdrucks-Editor Aktiviert das Datenbankfenster Entwirft ein neues Datenbankobjekt Startet den Office-Assistenten Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 5.1
Tabellen und Abfragen hinzuf/gen Abfragen speichern keine Daten. Sie dienen lediglich der Auswertung der Daten, die in Tabellen gespeichert sind. Access stellt das Ergebnis der Abfrage als so genanntes Dynaset zur Verf,gung. Diese Dynasets haben mit wenigen Unterschieden die gleichen Eigenschaften wie Tabellen.
Dynaset
Abfragen knnen als Datenherkunft f r andere Abfragen dienen
Sie m,ssen zu Beginn der Definition einer Abfrage bestimmen, woher die Abfrage ihre Daten beziehen soll. Das kDnnen sowohl Tabellen als auch die Ergebnisse anderer Abfragen, also Dynasets, sein. Wenn im folgenden Text nur noch von Tabellen gesprochen wird, dann dient das lediglich der Vermeidung von Verwirrungen. Pberall dort, wo Sie Tabellen als Basis f,r eine neue Abfrage verwenden, kDnnen Sie genauso gut auch bereits gespeicherte Abfragen einsetzen.
Tabellen und Abfragen hinzufgen Die Auswahl von Tabellen und Abfragen erfolgt im Dialog Tabelle anzeigen. Access zeigt den Dialog mit dem Rffnen des Abfragenentwurfsfensters an. Wird der Dialog nicht automatisch angezeigt, haben Sie das Abfragefenster so aufgerufen, dass Access automatisch eine Tabelle geDffnet hat. 258
Tabellen und Abfragen hinzufgen
Abb. 5.3 Tabellen und Abfragen ausw!hlen
Sie kDnnen den Dialog auch nachtr!glich ,ber den Befehl Abfrage > Tabelle anzeigen oder das gleichnamige Symbol aufrufen. Sie sind damit in der Lage, w!hrend des Erstellens einer Abfrage weitere Tabellen oder Abfragen hinzuzuf,gen. Eine weitere MDglichkeit zum Hinzuf,gen von Tabellen besteht in der Verwendung der Maus. Aktivieren Sie das Datenbankfenster und ziehen Sie einen Tabellennamen in das Abfragefenster.
Drag & Drop
Tabellennamen anzeigen Bei Abfragen, die auf mehreren Tabellen oder Abfragen basieren, treten manchmal doppelte Feldnamen auf. Der gleiche Feldname kommt sowohl in der einen als auch in der anderen Tabelle vor. Access stellt dem Feldnamen dann zur besseren Unterscheidung automatisch durch einen Punkt getrennt den Namen der Tabelle voran, aus der das Feld stammt.
Abfragen mit mehreren Tabellen
Das Entwurfsraster wird unter Umst!nden ,bersichtlicher, wenn Sie mit dem Befehl Ansicht > Tabellennamen die Zeile Tabelle einblenden. Access f,gt dem Entwurfsbereich dann eine weitere Zeile hinzu, in der es die Namen der Tabellen anzeigt, aus denen die Datenfelder stammen.
Feldlisten und ihre Eigenschaften Access zeigt die als Datenherkunft dienenden Tabellen im oberen Teil des Abfragefensters an. Jede Tabelle wird durch eine eigene Feldliste repr!sentiert. Die Titelzeile der Feldliste enth!lt den Tabellennamen und die Liste selbst die Feldnamen. Der Prim!rschl,ssel einer Tabelle wird in Fettschrift angezeigt. Access zeigt in der Titelleiste der Feldliste stets den Namen der Herkunftstabelle an. In einigen F!llen ist es erforderlich, dieselbe Tabelle mehrfach dem Abfrageentwurf hinzuzuf,gen. Dann ist es unter Umst!nden sinnvoll, die zweite Feldliste umzubenennen. Gehen Sie dazu wie folgt vor:
Feldliste umbenennen
259
Abfragen
1
Rffnen Sie das Eigenschaftenfenster durch einen Klick auf das gleichnamige Symbol.
2
Klicken Sie auf eine beliebige Stelle der Feldliste, um ihre Eigenschaften einzusehen.
3
Geben Sie den neuen Namen in die Eigenschaft Alias ein.
Sie !ndern damit nur den Namen der Feldliste im Abfragefenster und nicht den Tabellennamen.
Abb. 5.4 Feldliste umbenennen
Quelle-Eigenschaft
Das Eigenschaftenfenster einer Feldliste enth!lt außerdem das Eingabefeld Quelle. Sie benDtigen diese Eigenschaft, wenn Sie mit der Abfrage auf eine Tabelle zugreifen wollen, die weder in der aktuellen Datenbank enthalten noch verkn,pft bzw. eingebunden ist. So kDnnen Sie beispielsweise direkt auf eine FoxPro-Tabelle zugreifen, ohne diese zu verkn,pfen.
Tabellen und Abfragen entfernen
260
Wenn Sie w!hrend des Abfrageentwurfs feststellen, dass Sie eine der aufgef,hrten Tabellen oder Abfragen nicht benDtigen, dann klicken Sie in der Auswahlliste darauf, um sie zu markieren. Die Auswahl des Befehls Bearbeiten > L4schen, das Bet!tigen der _-Taste oder der Befehl Tabelle entfernen aus dem Kontextmen, lDscht die Tabelle. Alternativ kDnnen Sie auch den Befehl Abfrage > Tabelle > Abfrage entfernen aus der Men,leiste oder dem Kontextmen, verwenden.
Tabellen und Abfragen hinzufgen
Beziehungen festlegen Wenn Sie einer Abfrage mehrere Tabellen hinzugef,gt haben, dann pr,ft Access zun!chst, ob zwischen ihnen Beziehungen bestehen. Falls ja, ,bernimmt Access die Beziehungen und deren Verkn,pfungseigenschaften aus dem Beziehungsfenster. Wenn Sie nicht w,nschen, dass Access Beziehungen automatisch herstellt, dann gehen Sie wie folgt vor: 1
W!hlen Sie den Befehl Extras > Optionen aus der Men,leiste.
2
Aktivieren Sie das Register Tabelle > Abfrage.
3
Leeren Sie das Kontrollk!stchen AutoVerkn1pfung aktivieren.
Beziehungen
AutoVerkn3pfung deaktivieren
Ein erneutes Ankreuzen des Kontrollk!stchens AutoVerkn1pfung aktivieren f,hrt dazu, dass Access die Beziehungen von Tabellen im Abfragefenster wieder automatisch erkennt und anzeigt. Wenn Sie keine Beziehungen definiert haben, dann m,ssen Sie sie im Abfragefenster manuell herstellen. Access bildet aus nicht-verkn,pften Tabellen oder Abfragen n!mlich ein Kreuzprodukt, das jeden Datensatz der einen mit allen Datens!tzen der anderen Tabelle verkn,pft. Die Anzahl der Datens!tze eines solchen Kreuzprodukts ergibt sich durch die Multiplikation der Datensatzanzahl der einen mit der Datensatzanzahl der anderen Tabelle.
Kreuzprodukt
Da Kreuzprodukte zu wenig sinnvollen Ergebnissen f,hren, m,ssen Sie alle Tabellen und Abfragen einer Abfrage verkn,pfen. Gehen Sie wie folgt vor: 1
Ziehen Sie bei festgehaltener linker Maustaste eine Linie von dem Verkn,pfungsfeld der Master- auf das Verkn,pfungsfeld der Detailtabelle. Sie m,ssen bei dieser manuellen Verkn,pfung selbst darauf achten, dass die Datentypen, FeldgrDßen und Inhalte der beiden Verkn,pfungsfelder ,bereinstimmen.
2
F,hren Sie einen Doppelklick auf die Verbindungslinie durch, um den Dialog Verkn1pfungseigenschaften zu Dffnen. Alternativ kDnnen Sie auch das Kontextmen, verwenden.
3
Bestimmen Sie, ob es sich um eine Gleichheits- oder eine Inklusionsverkn,pfung handelt.
261
Abfragen
Abb. 5.5 Kreuzprodukt zweier Tabellen
Tipp
Access pr,ft die Richtigkeit von Verkn,pfungen erst bei der Ausf,hrung einer Abfrage. Um den Aufwand f,r die Fehlersuche mDglichst gering zu halten, sollten Sie daher unmittelbar nach der Definition einer Verkn,pfung irgendein Feld in den Entwurfsbereich ziehen und die Abfrage erst einmal ausf,hren lassen. Sie kDnnen aus einer eventuellen Fehlermeldung direkt auf einen formalen Fehler in der Verkn,pfung schließen. Beheben Sie den Fehler und f,hren Sie die Abfrage erneut aus. Wiederholen Sie den Vorgang, bis Access keine weiteren Fehler mehr meldet. Fahren Sie erst dann mit dem Abfrageentwurf fort. Kapitel 4 Tabellen dieses Buchs enth!lt weitere Informationen zu Beziehungen und Verkn,pfungseigenschaften.
Hinweis
Spalten auswhlen und anordnen Wenn Sie dem Abfrageentwurf alle als Datenherkunft benDtigten Tabellen und Abfragen hinzugef,gt und die Beziehungen definiert haben, kDnnen Sie die Datenfelder bzw. Spalten f,r das Abfrageergebnis ausw!hlen.
Spalten hinzufgen Drag & Drop
262
Das Entwurfsraster des Abfragefensters ist eine Tabelle, in deren Spalten Sie die Datenfelder anordnen, die Access sp!ter im Abfrageergebnis anzeigen soll. Wenn Sie ein Datenfeld in das Abfrageergebnis aufnehmen wollen, dann ziehen Sie den Feldnamen aus der Feldauswahlliste in den Entwurfsbereich.
Spalten ausw%hlen und anordnen
Als Alternative kDnnen Sie auch in der Feld-Zeile des Entwurfbereichs klicken und einen Feldnamen aus dem Kombinationsfeld w!hlen. Sofern Sie mehrere Tabellen geDffnet haben, stellt Access den Namen der Tabelle automatisch dem zugehDrigen Feldnamen voran. Das erleichtert die eindeutige Zuordnung eines Feldes zu einer Tabelle.
Feld-Zeile
Sie brauchen nicht jeden Feldnamen einzeln in den Entwurfsbereich zu ziehen. Wenn Sie alle Feldnamen einer Tabelle gleichzeitig markieren wollen, dann f,hren Sie einen Doppelklick auf die Titelzeile der Auswahlliste durch. Access markiert dann alle Feldnamen und Sie kDnnen sie gemeinsam in den Entwurfsbereich ziehen.
Mehrere Spalten gleichzeitig hinzuf gen
Wenn Sie eine zusammenh!ngende Gruppe von Feldern markieren wollen, dann klicken Sie zun!chst auf den ersten Feldnamen. Klicken Sie dann bei festgehaltener H-Taste auf den letzten Feldnamen, so dass Access alle dazwischen liegenden Feldnamen ebenfalls markiert.
Eine Gruppe von Datenfeldern markieren
Das Hinzuf,gen einzelner Feldnamen zu einer Gruppe markierter Felder ist bei festgehaltener S-Taste mDglich. Mithilfe dieser Taste kDnnen Sie auch einzelne Feldnamen aus einer Gruppe von markierten Feldern entfernen.
Einzelne Datenfelder einer markierten Gruppe hinzuf gen
Feldeigenschaften festlegen Access ,bernimmt die Eigenschaften einer Spalte des Entwurfsbereichs aus dem Datenfeld der Herkunftstabelle. Wenn Sie in der Tabelle beispielsweise den Felddatentyp W7hrung festgelegt haben, so gilt dieser auch f,r die entsprechende Spalte der Abfrage. Bei berechneten Feldern setzt Access die Eigenschaften ein, die am wahrscheinlichsten sind. Wenn das berechnete Feld beispielsweise zwei numerische Datenfelder multipliziert und eines dieser Zahlenfelder im W!hrungsformat formatiert ist, dann zeigt Access standardm!ßig auch das berechnete Feld im W!hrungsformat an. Die Feldeigenschaften Beschreibung, Format, Eingabeformat und Beschriftung kDnnen Sie im Abfrageentwurf individuell anpassen und damit die aus dem Tabellenentwurf ,bernommene Voreinstellung ,berschreiben. Rffnen Sie dazu das Eigenschaftenfenster und klicken Sie in der Feld-Zeile einer Spalte des Entwurfsbereichs. Die Beschreibung ist ein bis zu 255 Zeichen langer Text, mit dem Sie die Bedeutung der Spalte erl!utern kDnnen. Access zeigt die Beschreibung in der Statuszeile an, wenn das Feld in der Datenblattansicht aktiviert wird. Mit der Eigenschaft Format bestimmen Sie das Anzeigeformat f,r die Spalte. Format
Access ermDglicht die Datenbearbeitung oft auch im Dynaset einer Abfrage. In diesem Fall ist die Definition von Eingabeformaten sinnvoll. Pber das Editor-Symbol kDnnen Sie den Ausdrucks-Editor von Access aufrufen. Die Funktionsweise des Ausdrucks-Editors wird in Kapitel 13 Makroprogrammierung genauer erl!utert.
Eingabeformat
263
Abfragen
Abb. 5.6 Feldeigenschaften im Abfrageentwurf
Beschriftung
Access verwendet bei der Anzeige eines Dynasets als Datenblatt standardm!ßig die Feldnamen als Spalten,berschriften. Wenn Sie die Feldnamen sehr kurz gew!hlt und dabei auf aussagekr!ftige Namen verzichtet haben, wollen Sie die Spalten,berschriften vielleicht !ndern. Geben Sie die gew,nschte Spalten,berschrift in die Feldeigenschaft Beschriftung ein. Alternativ kDnnen Sie auch in der Feld-Zeile der betreffenden Spalte klicken und die Spalten,berschrift dem Feldnamen, durch einen Doppelpunkt getrennt, voranstellen. Wenn Sie beispielsweise die Spalten,berschrift des Feldes MWSt !ndern wollten, w,rde die neue Feld-Zeile folgendermaßen aussehen: Mehrwertsteuer: MWSt Die Feldeigenschaft Beschriftung hat Vorrang vor einer durch einen Doppelpunkt markierten Spalten,berschrift. Wenn Sie von beiden MDglichkeiten Gebrauch machen, dann zeigt Access im Datenblatt den Text aus der Feldeigenschaft Beschriftung an.
Nachschlagefelder
Pber das Register Nachschlagen der Feldeigenschaften kDnnen Sie im Abfrageentwurf Nachschlagefelder definieren. Wenn das Datenfeld bereits in der zugrunde liegenden Tabelle als Nachschlagefeld festgelegt wurde, dann ,bernimmt Access die entsprechenden Eigenschaften automatisch in den Abfrageentwurf. Das Feld wird dann in der Datenblattansicht der Abfrage beispielsweise als Kombinations- oder Listenfeld angezeigt. Wenn Sie in das Register Nachschlagen eines Datenfeldes Werte eintragen, dann ,berschreiben Sie damit die Standardwerte, die Access aus dem Tabellenentwurf ,bernommen hat. Gleichzeitig kDnnen Sie aber im Abfrageentwurf ein Feld als Nachschlagefeld definieren, das im Tabellenentwurf nicht als solches fungiert. Die
264
Spalten ausw%hlen und anordnen
Vorgehensweise hierzu ist dieselbe wie im Tabellenentwurf und braucht an dieser Stelle nicht weiter erl!utert zu werden. Im Abfrageentwurf m,ssen Sie allerdings auf den Nachschlage-Assistenten verzichten. Die Feldeigenschaften im Abfrageentwurf sind eine Untermenge der Feldeigenschaften im Tabellenentwurf. Die Feldeigenschaften im Tabellenentwurf und der Entwurf von Nachschlagefeldern werden ausf,hrlich in Kapitel 4 Tabellen dieses Buchs besprochen. Wenn Sie im Abfrageentwurf eine Feldeigenschaft !ndern, dann hat dies keine Auswirkung auf die Feldeigenschaften der zugrunde liegenden Tabelle. Umgekehrt gilt jedoch, dass – solange Sie die Feldeigenschaften im Abfrageentwurf nicht ge!ndert haben – Access ge!nderte Feldeigenschaften aus dem Tabellen- in den Abfrageentwurf ,bertr!gt. Die Verbindung zwischen den beiden Eigenschaften geht also erst dann verloren, wenn Sie im Abfrageentwurf Eigenschaften !ndern.
Hinweis
Feldeigenschaften !ndern
Spalten ausblenden Manchmal benDtigen Sie Spalten im Entwurfsraster nur, um Abfragekriterien oder eine Sortierreihenfolge zu definieren. Die betreffenden Spalten sollen im Dynaset jedoch nicht mit angezeigt werden. In diesem Fall ziehen Sie die Spalte in den Entwurfsbereich und leeren das Kontrollk!stchen in der Zeile Anzeigen der Spalte. Sie kDnnen f,r die Spalte dann Gruppierungen, Sortierungen oder Abfragekriterien definieren, ohne dass sie im Abfrageergebnis erscheint. Sie verstecken die Spalte sozusagen.
Spalten l&schen Wenn Sie eine Spalte aus dem Entwurfsbereich lDschen wollen, dann klicken Sie innerhalb der Spalte und w!hlen Sie den Befehl Bearbeiten > Spalten l4schen. Alternativ kDnnen Sie auch eine oder mehrere Spalten markieren und diese dann gleichzeitig lDschen. Klicken Sie dazu auf den Pberschriftenbereich der Spalte. Verwenden Sie gegebenenfalls die Maus, um mehrere Spalten gleichzeitig zu markieren. W!hlen Sie dann den Befehl Bearbeiten > L4schen oder bet!tigen die _-Taste, um die Spalten aus dem Entwurfsbereich zu lDschen. Der Befehl Bearbeiten > Alles l4schen lDscht den gesamten Entwurfsbereich. Mit der Auswahl dieses Befehls gehen alle Spalten, Abfragekriterien und anderen Einstellungen verloren. Da er nicht r,ckg!ngig gemacht werden kann, sollten Sie ihn mit Vorsicht anwenden.
Bearbeiten > Spalte l-schen Spalten markieren
Bearbeiten > Alles l-schen
265
Abfragen
Spalten anordnen Access zeigt die Spalten des Dynasets in der gleichen Reihenfolge an wie im Entwurfsbereich. Wenn Sie die Anordnung der Spalten !ndern wollen, dann markieren Sie eine oder mehrere Spalten und ziehen sie an die neue Position.
Das Sternchen Das Sternchen hat im Abfrageentwurf eine besondere Bedeutung. Es steht stellvertretend f,r alle Felder einer Tabelle. Wenn Sie das Sternchen in den Entwurfsbereich ziehen, zeigt Access im Dynaset alle Datenfelder der entsprechenden Tabelle an. Der Vorteil des Sternchens besteht darin, dass die Abfrage unabh!ngig von irgendwelchen 0nderungen an der Tabellenstruktur bleibt. Wenn Sie nachtr!glich Felder hinzuf,gen oder lDschen, ersetzt Access das Sternchen dennoch durch alle Felder der Tabelle.
Hinweis
Es ist jedoch nicht mDglich, Abfrage- oder Sortierkriterien f,r das Sternchen zu definieren. Wenn Sie das Sternchen verwenden und gleichzeitig Abfragekriterien bestimmen wollen, dann m,ssen Sie zus!tzlich die Felder in den Entwurfsbereich ziehen, f,r die Sie Abfragekriterien definieren wollen. Damit die betreffenden Spalten nicht doppelt angezeigt werden, sollten Sie sie ausblenden.
Abb. 5.7 Sortieren einer Abfrage mit Sternchen
266
Abfrageeigenschaften
Das Ziehen des Sternchens in das Entwurfsraster bewirkt, dass alle Datenfelder der betreffenden Tabelle im Dynaset angezeigt werden. Bei mehreren Tabellen m,ssen Sie das Sternchen aus den Auswahllisten jeder einzelnen Tabelle in den Entwurfsbereich ziehen. Access merkt sich n!mlich, welches Sternchen welche Tabelle repr!sentiert, und zeigt dies durch den vorangestellten Tabellennamen an.
Alle Datenfelder aller Spalten anzeigen
Wenn Sie eine Abfrage erstellen wollen, die alle Spalten aller zugrunde liegenden Tabellen und Abfragen anzeigt, geht es auch einfacher. W!hlen Sie den Befehl Ansicht > Eigenschaften zum Rffnen des Abfrageeigenschaftenfensters, und stellen Sie bei leerem Entwurfsraster die Eigenschaft Alle Felder ausgeben auf Ja ein.
Abfrageeigenschaft Alle Felder ausgeben
Access ,bernimmt dann automatisch alle Datenfelder aller Spalten in das Dynaset. Wenn Sie zus!tzlich Abfrage- oder Sortierkriterien festlegen wollen, dann ziehen Sie nur die benDtigten Spalten zus!tzlich in den Entwurfsbereich und definieren Sie die Kriterien. Leeren Sie f,r diese Spalten das Kontrollk!stchen Anzeigen.
Abfrageeigenschaften Mit den Abfrageeigenschaften von Access kDnnen Sie einige Parameter einstellen, die die Ausf,hrung der Abfrage steuern. Um die Abfrageeigenschaften einzusehen, gehen Sie wie folgt vor: 1
Falls nicht bereits geschehen, Dffnen Sie das Eigenschaftenfenster durch einen Klick auf das gleichnamige Symbol oder den Befehl Eigenschaften des Kontextmen,s.
2
Klicken Sie auf einen beliebigen Bereich des Abfragefensters, aber außerhalb einer Feldliste und außerhalb eines Datenfeldes des Entwurfsbereichs.
Abb. 5.8 Die Abfrageeigenschaften
267
Abfragen
Beschreibung Mit der Eigenschaft Beschreibung kDnnen Sie die Bedeutung und Funktionsweise der Abfrage dokumentieren.
Alle Felder ausgeben Die Abfrageeigenschaft Alle Felder ausgeben veranlasst Access, alle Datenfelder aller Herkunftstabellen und -abfragen in das Dynaset aufzunehmen.
Spitzenwerte Mit der Abfrageeigenschaft Spitzenwerte kDnnen Sie die Anzahl der Zeilen f,r das Dynaset beschr!nken. Wenn Sie beispielsweise den Wert 10 eingeben, zeigt Access nur die ersten zehn Datens!tze im Dynaset an. Auf diese Weise l!sst sich eine Art Top-Ten-Hitliste definieren. Alternativ kDnnen Sie auch eine Prozentzahl eingeben. Die Eingabe 10% bewirkt bei hundert Datens!tzen, dass nur die ersten zehn im Dynaset erscheinen.
Keine Duplikate und eindeutige Datens%tze Die Eigenschaften Keine Duplikate und Eindeutige Datens7tze werden im Abschnitt Duplikate unterbinden weiter unten in diesem Kapitel besprochen.
Ausfhrungsberechtigungen Die Eigenschaft Ausf1hrungsberechtigungen ist nur im Zusammenhang mit dem Sicherheitssystem von Access interessant und wird daher in Kapitel 9 Eine Datenbank verwalten dieses Buchs besprochen.
Datens%tze sperren Mit der Abfrageeigenschaft Datens7tze sperren legen Sie das Verhalten der Abfrage im Netzwerk fest. Die AuswahlmDglichkeiten des Kombinationsfeldes sind Keine Sperrungen, Alle Datens7tze und Bearbeiteter Datensatz. Kapitel 12 Access im Netzwerk dieses Buchs besch!ftigt sich mit dem Einsatz von Access im Netzwerk.
Datensatzgruppentyp
268
Die Eigenschaft Datensatzgruppentyp bestimmt, welche Datenfelder der Abfrage sich bearbeiten lassen. Bei der Voreinstellung Dynaset kDnnen Sie alle Felder einer Abfrage, die auf einer einzigen Tabelle oder auf mehreren per 1:1-Beziehung verkn,pften Tabellen basiert, bearbeiten. Basiert die Abfrage auf 1:n-verkn,pften Tabellen, so kDnnen Sie nur die Felder der 1-Seite bearbeiten, wenn Sie Aktualisierungsweitergabe definiert haben.
Abfragekriterien definieren
Bei der Einstellung Dynaset (Inkonsistente Aktualisierungen) kDnnen Sie alle Felder aller in der Abfrage enthaltenen Tabellen bearbeiten. Mit der Einstellung Snapshot erreichen Sie, dass sich keine Felder bearbeiten lassen.
ODBC-Wartezeit Die Eigenschaft ODBC-Wartezeit erwartet die Angabe einer Zeit in Sekunden. Sie bestimmen mit dieser Eigenschaft, wie lange Access versuchen soll, die Verbindung zu einer ,ber ODBC eingebundenen Datenbank herzustellen, bevor es einen Fehler meldet. In Kapitel 12 Access im Netzwerk dieses Buchs finden Sie mehr zum Thema ODBC.
Filter und Sortiert nach Die beiden Abfrageeigenschaften Filter und Sortiert nach haben die gleiche Bedeutung wie bei Tabellen. Weitere Hinweise zu diesen Eigenschaften finden Sie unter der Pberschrift Eigenschaften von Tabellen in Kapitel 4 Tabellen dieses Buchs.
Max Datens%tze Mit der Eigenschaft Max Datens7tze limitieren Sie die Anzahl der Datens!tze, die eine ODBC-Datenquelle zur,ckliefert. Dies kann beispielsweise dann erforderlich sein, wenn die Systemressourcen Ihres Computers nur eine begrenzte Anzahl Datens!tze zulassen. Geben Sie die gew,nschte Anzahl als Long Integer-Wert an. Die Eigenschaften Unterdatenblattname, Verkn1pfen von, Verkn1pfen nach, Unterdatenblatth4he und Unterdatenblatt erweitert sind identisch mit den gleichnamigen Eigenschaften von Tabellen. Informationen ,ber diese Eigenschaften finden Sie deshalb im Abschnitt Eigenschaften einer Tabelle in Kapitel 4 Tabellen.
Abfragekriterien definieren Neben der Auswahl von Spalten bzw. Datenfeldern spielt die Auswahl von Zeilen bzw. Datens!tzen eine wichtige Rolle in Abfragen. Mit der Definition von Abfragekriterien kDnnen Sie Ihren Datenbestand nach verschiedenen Gesichtspunkten untersuchen. So lassen sich beispielsweise nur die Kunden aus einem bestimmten Postleitzahlengebiet betrachten. Vielleicht interessieren Sie auch nur die Projekte mit einem Umsatz von mehr als 5.000 DM. Die Antwort dieser Fragen liegt in der Definition geeigneter Abfragekriterien.
Datens!tze ausw!hlen
Abfragekriterien schr!nken die Menge der Datens!tze im Dynaset ein. Access ,bernimmt nur diejenigen Datens!tze in das Dynaset, f,r die das Abfragekriterium erf,llt ist. Sie kDnnen f,r eine oder auch mehrere Spalten des Dynasets mehrere Abfragekriterien definieren und nach den logischen Gesetzm!ßigkeiten kombinieren. 269
Abfragen
Vergleiche Sie m,ssen Abfragekriterien als logische Ausdr,cke definieren. Einfache Kriterien bilden daher in aller Regel einen Vergleich. Wenn Sie beispielweise nur die Ums!tze von mehr als 5.000 DM interessieren, dann geben Sie f,r die Umsatzspalte das Kriterium > 5000 ein.
Hinweis
Vergleichsoperatoren
Abfragekriterien bestehen stets aus logischen Ausdr,cken. Die folgenden Abschnitte besch!ftigen sich nur mit den grundlegenden Regeln zur Bildung von Kriterien im Zusammenhang mit Abfragen. Wenn Sie weitergehende Informationen zu Ausdr,cken oder dem Ausdrucks-Editor benDtigen, dann lesen Sie in Kapitel 13 Makroprogrammierung nach. Dort erfahren Sie alles, was Sie ,ber die Bildung von Ausdr,cken wissen wollen. Die h!ufigsten Abfragekriterien sind Vergleiche. Ein Vergleich besteht stets aus einem Vergleichsoperator und einem Vergleichsargument. Tabelle 5.2 enth!lt die wichtigsten Vergleichsoperatoren von Access.
Die wichtigsten Vergleichsoperatoren
Operator
Bedeutung
=
gleich
>
grDßer als
>=
grDßer als oder gleich
<
kleiner als
<=
kleiner als oder gleich
<>
ungleich
Wie
Vergleich mit Platzhaltern
Ist
Vergleich mit Nullwerten
In
Vergleich mit einer Menge Tabelle 5.2
Die Standardeinstellung f,r den Vergleichsoperator ist das Gleichheitszeichen. Sie brauchen das Gleichheitszeichen daher in aller Regel nicht mit einzugeben. So kDnnen Sie statt des Kriteriums = "40211 D1sseldorf " genausogut auch das folgende Kriterium eingeben: 270
"40211 D1sseldorf "
Abfragekriterien definieren
Der Operator In vergleicht eine Spalte mit einer Menge von Vergleichsargumenten. Wenn Sie beispielsweise nur die Datens!tze mit einem Mehrwertsteuersatz von 7 und 16% interessieren, dann geben Sie das Kriterium
Mengen
In (0,07; 0,16) ein. Schachteln Sie die Menge der Vergleichsargumente stets in runde Klammern. Die Trennung der Vergleichsargumente erfolgt durch Semikola. Sie m,ssen zwischen dem Wert 0 und dem so genannten Nullwert unterscheiden. Wenn Sie beispielsweise eine 0 in ein Zahlenfeld eingeben, dann ist der Wert dieses Feldes 0. Solange Sie in das Zahlenfeld noch nichts eingegeben haben, ist es hingegen leer. Mit Access kDnnen Sie diese beiden Zust!nde unterscheiden. Geben Sie das Kriterium
Nullwerte
=0 ein, wenn Sie alle Datens!tze interessieren, bei denen die entsprechende Spalte den Wert 0 enth!lt. Das Kriterium Ist Null ermittelt hingegen alle Datens!tze, bei denen das entsprechende Datenfeld leer ist. Das Kriterium Ist Nicht Null ermittelt genau die Umkehrmenge. Dies sind alle Datens!tze, bei denen das entsprechende Feld Daten, also unter Umst!nden auch den Wert 0, enth!lt. Access ist mit einer recht komfortablen Eingabekontrolle ausgestattet. Es versucht, Ihre Eingabe zu verstehen und setzt sie in eine Standarddarstellung um. Das macht sich insbesondere bei der Verwendung von Platzhaltern bemerkbar. Sie kDnnen das Sternchen als Platzhalter f,r eine beliebige Folge beliebiger Zeichen einsetzen. Das Fragezeichen steht hingegen stellvertretend f,r ein einziges, aber beliebiges Zeichen. Geben Sie beispielsweise das Kriterium
Platzhalter verwenden
A* ein, wenn Sie alle Datens!tze interessieren, bei denen das entsprechende Feld mit dem Buchstaben A beginnt. In dem Augenblick, in dem Sie Ihre Eingabe mit der -Taste best!tigen, setzt sie Access in das Standardformat um und zeigt das Ergebnis wie folgt an: Wie "A*"
271
Abfragen
Der Wie-Operator
Der Vergleichsoperator lautet also Wie und das Vergleichsargument "A*". Der Vergleichsoperator Wie ist stets ein Hinweis darauf, dass Access im Vergleichsargument einen Platzhalter entdeckt und diesen auch als solchen interpretiert. Wenn Sie das Kriterium in = "M*" !ndern, dann zeigt Access nur noch diejenigen Datens!tze an, die den Wert M* in der betreffenden Spalte enthalten. Access unterscheidet bei der Verwendung von Platzhaltern nicht zwischen Großund Kleinschreibung. Das Kriterium = "M*" liefert folglich das gleiche Ergebnis wie das Kriterium = "m*" Sie kDnnen das Sternchen auch zweimal in einem Kriterium verwenden. So trifft beispielsweise das Kriterium = "*EI*" auf alle Feldwerte zu, die die Buchstabenkombination EI an einer beliebigen Stelle enthalten.
Abb. 5.9 Lagerprojekte, die noch nicht bezahlt sind
272
Abfragekriterien definieren
Ein Vergleich besteht nat,rlich nicht nur aus dem Operator, sondern zus!tzlich aus zwei Argumenten. Das eine Argument ist stets die Spalte, f,r die Sie das Abfragekriterium definieren. Das andere Argument ist das Vergleichsargument, das Sie eingeben. Das Dynaset einer Abfrage enth!lt nur diejenigen Datens!tze, bei denen das Vergleichsargument zutrifft. Vergleichsargumente kDnnen durch Literale und andere Ausdr,cke gebildet werden. Bei der Eingabe von Literalen m,ssen Sie einige Regeln beachten. Setzen Sie Textliterale, die Sonderzeichen enthalten, stets in Anf,hrungszeichen. Schreiben Sie nicht etwa
Vergleichsargumente
Textliterale
= A. Meier sondern = "A. Meier" Sie erleichtern Access damit das Erkennen Ihrer Eingabe als Textkonstante und vermeiden Missverst!ndnisse. Wie sollte Access sonst beispielsweise zwischen dem Gleichheitszeichen als Operator und als Element eines Textliterals unterscheiden? Literale sind Konstanten, die Sie selbst eingeben kDnnen. Das besondere Kennzeichen von Literalen und Konstanten ist, dass sie stets den gleichen Wert haben. Von den Literalen sind die vordefinierten Konstanten von Access zu unterscheiden. Einige Beispiele f,r Konstanten finden Sie weiter unten in diesem Abschnitt. Sie kDnnen Datumswerte in der ,blichen Form eingeben. So ermittelt das Kriterium
Hinweis
Datumswerte
= 15.10.1994 alle Datens!tze, bei denen die entsprechende Spalte das Datum 15.10.1994 enth!lt. Access setzt auch diese Eingabe automatisch in das korrekte Format = #15.10.1994# um. Die Lattenkreuze kennzeichnen die Eingabe als Datumskonstante. Sie sollten es sich auch hier zur Gewohnheit machen, die Lattenkreuze immer mit einzugeben. Geben Sie Zahlen stets ohne jede Formatierung ein. Wenn Sie beispielsweise ein Zahlenfeld als Prozentzahl formatiert haben und wollen alle Datens!tze mit 10% ermitteln, dann lautet das Abfragekriterium
Zahlen
= 0,1 und nicht etwa = 10 % 273
Abfragen
Wenn Sie Formatierungen mit eingeben, dann meldet Access einen Fehler.
Wertebereiche
Bei der Angabe von Wertebereichen pr,ft Access, ob die Werte eines Datenfeldes innerhalb eines bestimmten Bereichs liegen. Die Angabe solcher Bereiche erfolgt mit dem Zwischen-Operator. So ermittelt beispielsweise das Kriterium Zwischen 1 und 10 alle Werte zwischen 1 und 10. Der Zwischen-Operator bildet also lediglich eine Erleichterung bei der Formulierung von Kriterien. Sie kDnnen den Zwischen-Operator jederzeit auch durch die Verkn,pfung zweier Vergleiche mit Und ersetzen. So w,rde beispielsweise das Kriterium >= 1 Und <= 10 zu dem gleichen Ergebnis f,hren wie das obige Beispiel.
Abb. 5.10 Zahlungen 1998
Andere Kriterien Abfragekriterien bestehen immer aus logischen Ausdr,cken. Das muss aber nicht immer der Vergleich mit einem Literal sein. Access kennt noch viel mehr Ausdr,cke.
274
Abfragekriterien definieren
Statt des Vergleichs mit einem Literal eignet sich h!ufig auch der Vergleich mit einer vordefinierten Konstanten. Ein Beispiel hierf,r ist der Vergleich mit dem Systemdatum Ihres Rechners. Das Kriterium
Konstanten und Funktionen
<= Datum() ermittelt beispielsweise alle Datens!tze, bei denen das Datum der betreffenden Spalte kleiner oder gleich dem Systemdatum ist. Tats!chlich bildet der Ausdruck Datum() einen Aufruf der Datumsfunktion von Access. Diese Funktion liefert das Systemdatum als Konstante. In Tabelle 5.3 sind verwandte Funktionen aufgef,hrt, die Sie zur Bildung von Abfragekriterien heranziehen kDnnen.
Konstanten zur Bildung von Abfragekriterien
Funktion
Bedeutung
Datum()
Ermittelt das Systemdatum
Zeit()
Ermittelt die Systemzeit Tabelle 5.3
Das Argument eines Vergleichs braucht nicht immer ein Literal oder eine Konstante zu sein. Sie kDnnen statt dessen auch einen berechneten Ausdruck einsetzen. So ermittelt beispielsweise der Ausdruck
Berechnungen
>= Datum() - 30 alle Datens!tze, bei denen das Datum hDchstens 30 Tage zur,ckliegt. Der Ausdruck Datum() - 30 ermittelt das Systemdatum und zieht davon 30 Tage ab. Abfragekriterien kDnnen sich sogar auf andere Datenfelder beziehen. Der Soll-/IstVergleich bildet hierf,r eine typische Anwendung. Angenommen, Sie verwalten Projekte mit dem geplanten und dem tats!chlichen Abgabedatum. Wenn Sie die versp!tet abgegebenen Projekte interessierten, dann w,rden Sie das Kriterium
Bez ge auf andere Spalten
> [Plan Abgabe] in die Spalte f,r das tats!chliche Abgabedatum eintragen. Access w,rde dann alle Datens!tze ermitteln, bei denen das tats!chliche Abgabedatum grDßer als das geplante Abgabedatum desselben Datensatzes ist. Sie sollten Feldnamen in Ausdr,cken generell in eckige Klammern setzen. Sie sind so leichter zu erkennen und Ihre Ausdr,cke damit leichter lesbar. Wenn Sie Feldnamen mit Sonderzeichen (z.B. Leerzeichen) verwenden, m,ssen Sie diese sogar in eckige Klammern setzen. 275
Abfragen
Abb. 5.11 Versp!tet abgegebene Projekte
Sie kDnnen Funktionen, Konstanten, Operatoren und gemeinsame Ausdr,cke direkt ,ber den Ausdrucks-Editor abrufen. Um den Ausdrucks-Editor zu starten, markieren Sie eine Zelle in der Kriterien-Zeile des Abfrageentwurfs. Klicken Sie dann auf das Editor-Symbol.
Kriterien kombinieren Mehrere Vergleiche in einer Spalte
Vergleichsoperatoren
Nicht immer gen,gt die Angabe eines einzelnen Vergleichskriteriums. Viele Problemf!lle sind nur dadurch zu lDsen, dass mehrere Ausdr,cke miteinander kombiniert werden. Ein Beispiel f,r die versteckte Kombination von Ausdr,cken kennen Sie bereits. Das Kriterium Zwischen 1 Und 10 l!sst sich auch als >= 1 Und <= 10 formulieren. Die beiden Teilausdr,cke werden also Und-verkn,pft. Das bedeutet, dass beide Bedingungen erf,llt sein m,ssen, damit das Kriterium in Erf,llung geht. Der umgekehrte Fall liegt vor, wenn ein bestimmter Wertebereich ausgeschlossen werden soll. So ermittelt beispielsweise der Ausdruck
276
< 1 Oder > 10
Abfragekriterien definieren
alle Datens!tze, bei denen die entsprechende Spalte Werte enth!lt, die nicht zwischen 1 und 10 liegen. Sie kDnnten diesen Zusammenhang daher auch so formulieren: Nicht Zwischen 1 Und 10 Sie sehen, dass es meistens mehrere MDglichkeiten zum Ausdruck desselben Zusammenhangs gibt. Es ist Ihre Entscheidung, ob Sie eher die fast umgangssprachlichen Konstrukte von Access oder die streng logischen Ausdr,cke vorziehen. Tabelle 5.4 enth!lt noch einmal eine Pbersicht ,ber die logischen Operatoren von Access.
Logische Operatoren von Access
Operator
Bedeutung
Und
Und-Verkn,pfung
Oder
Oder-Verkn,pfung
Nicht
Negation
0qv
Logische 0quivalenz
ExOder
Logische Antivalenz (exklusives Oder)
Imp
Logische Implikation (Wenn-Dann-Beziehung) Tabelle 5.4
Mithilfe der logischen Operatoren kombinieren Sie mehrere Ausdr,cke f,r das Kriterium einer Spalte. Dar,ber hinaus haben Sie nat,rlich auch die MDglichkeit, die Kriterien mehrerer Spalten zu kombinieren. Genau genommen ist diese MDglichkeit implizit im Entwurfsbereich enthalten. Access bildet n!mlich eine Und-Verkn,pfung aller Eintr!ge einer Kriterien-Zeile. Man kDnnte auch sagen, dass die Spalten des Entwurfsbereichs Und-verkn,pft werden.
Und-Verkn pfung der Spalten
Sofern Ihnen das immer noch nicht ausreicht, kDnnen Sie weitere Kriterien-Zeilen Dffnen. Access verkn,pft die Zeilen einer Abfrage mit einem logischen Oder. Beachten Sie, dass beim erneuten Aufruf nach dem Speichern der Abfrage alle KriterienZeilen in einer Zeile dargestellt werden.
Oder-Verkn pfung der Zeilen
Wenn Sie die Und-Verkn,pfung, die Oder-Verkn,pfung und den Nicht-Operator richtig kombinieren, kDnnen Sie alle nur denkbaren Kriterien formulieren. Voraussetzung ist lediglich, dass Sie in Ihren Tabellen die richtigen Datenfelder ber,cksichtigt haben. 277
Abfragen
Abb. 5.12 Versp!tete und nicht abgegebene Projekte
Hinweis
Die CD-ROM zu diesem Buch enth!lt einige Beispiele f,r recht komplexe Abfragen. Als typisches Beispiel f,r die Kombination mehrerer Abfragekriterien wird in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs die Liste der geplanten Zahlungseing!nge beschrieben.
Abfrage sortieren Sortierreihenfolge f r ein Datenfeld ausw!hlen Nach mehreren Datenfeldern sortieren
Die Definition eines Sortierkriteriums ist denkbar einfach. Klicken Sie in die Sortierungs-Zeile der gew,nschten Spalte und w!hlen die Sortierreihenfolge aus dem Kombinationsfeld. Bei Bedarf kDnnen Sie das Sortierkriterium auch f,r mehrere Spalten definieren. Access sortiert dann zun!chst nach dem am weitesten links stehenden Sortierkriterium. Wenn die betreffende Spalte gleiche Werte enth!lt, kommt das n!chste rechts stehende Sortierkriterium zur Geltung usw. Ordnen Sie die Spalten daher gegebenenfalls in der Reihenfolge an, die Ihre Anwendung erfordert. Wenn Sie beispielsweise eine Adressentabelle nach Postleitzahlen und Namen sortieren wollen, dann verschieben Sie zun!chst die Spalte f,r die Postleitzahl an eine Position links von der Spalte f,r den Namen. W!hlen Sie anschließend f,r beide Spalten das geeignete Sortierkriterium aus.
278
Berechnete Felder
Abfrage speichern und ausf/hren Die Befehle Datei > Speichern und Datei > Exportieren speichern die Abfrage. Klicken Sie auf das Datenblatt- oder das Ausf1hren-Symbol, um die Abfrage zu starten. Mit dem Ausf,hren der Abfrage liest Access alle Datens!tze aus den Tabellen, auf denen die Abfrage basiert. Es f,hrt deren Verkn,pfung durch und pr,ft die Abfragekriterien. Access zeigt das Dynaset im Datenblatt an. Das Datenblatt hat Zeilen f,r alle Datens!tze, die die Abfragekriterien erf,llen. Die Spalten der Tabelle entsprechen den Spalten des Entwurfsrasters, f,r die das Anzeigekriterium angekreuzt wurde.
Abfrage ausf hren
Anzeige im Datenblatt
Sie kDnnen das Dynaset in der Datenblattansicht genauso bearbeiten wie Tabellen. Sie kDnnen Daten !ndern, einf,gen und lDschen. Selbst das Layout des Datenblatts l!sst sich !ndern und speichern. Ein Unterschied besteht lediglich darin, dass Sie im Datenblatt einer Abfrage keine neuen Spalten bzw. Datenfelder einf,gen kDnnen. Wenn Sie dies w,nschen, m,ssen Sie die Entwurfsansicht der zugrunde liegenden Tabelle Dffnen. Mehr zu diesem Thema finden Sie in Kapitel 4 Tabellen dieses Buchs. Beachten Sie, dass Access lediglich die Abfragedefinition und nicht die Daten des Dynasets speichert. Sobald Sie eine Abfrage schließen und zu einem sp!teren Zeitpunkt neu Dffnen, wird sie zun!chst neu ausgef,hrt. Dies kann bei großen Datenherkunftstabellen mitunter einige Zeit in Anspruch nehmen. So kDnnen zwischen dem Rffnen einer Abfrage und der Anzeige des Tabellenfensters schon mal einige Sekunden vergehen.
Hinweis
Berechnete Felder Berechnete Felder erlauben das Durchf,hren von Berechnungen mit den Daten des Dynasets. Access f,hrt die Berechnungen f,r jeden Datensatz neu aus. Berechnete Felder enthalten daher in aller Regel Ausdr,cke, die auf mindestens einer Spalte des Dynasets basieren. Zur Anlage eines berechneten Feldes klicken Sie auf die Feld-Zeile einer leeren Spalte des Entwurfsrasters. Geben Sie zun!chst den Namen des berechneten Feldes und durch einen Doppelpunkt getrennt die Berechnungsformel ein.
Berechnetes Feld anlegen
Sie kDnnen berechnete Felder auch mit dem Ausdrucks-Editor eingeben. Der Aufruf des Editors kann durch einen Klick auf das gleichnamige Symbol oder die Auswahl des Befehls Erstellen aus dem Kontextmen, erfolgen. Sie finden die Beschreibung des Ausdrucks-Editors in Kapitel 13 Makroprogrammierung dieses Buchs. Aus der Projektetabelle der diesem Buch beiliegenden CD lassen sich zahlreiche Beispiele f,r berechnete Felder ableiten. Die Datei enth!lt die vier Felder Plan Faktor 1 bis Plan Faktor 4, die Faktoren f,r den geplanten Wert eines Projekts enthalten. Der geplante Nettobetrag eines Projekts ermittelt sich aus der Multiplikation der vier Faktoren. Der Eintrag in die Feld-Zeile lautet daher folgendermaßen:
279
Abfragen
Plan Nettobetrag: [Plan Faktor 1]*[Plan Faktor 2]*[Plan Faktor 3]*[Plan Faktor 4] Das berechnete Feld heißt also Plan Nettobetrag. Durch einen Doppelpunkt getrennt folgt die Berechnungsformel. Die in der Berechnungsformel aufgef,hrten Feldnamen enthalten Leerzeichen. Es ist daher notwendig, die Feldnamen in eckige Klammern zu setzen. Sie kDnnen sich die Eingabe dieser recht langen Formel erleichtern, indem Sie zun!chst in das Eingabefeld klicken. Bet!tigen Sie anschließend die Tastenkombination H", um das Zoom-Fenster zu Dffnen. Best!tigen Sie Ihre Eingabe mit einem Klick auf OK.
Abb. 5.13 Berechnungsformel in das Zoom-Fenster eingeben
Eine Berechnungsformel kann sich auch auf andere berechnete Felder beziehen. Geben Sie einfach den Namen des berechneten Feldes ein. Damit ist selbstverst!ndlich auch die Kombination von berechneten Feldern, Datenfeldern, Konstanten und Funktionen in Berechnungsformeln mDglich. Als Beispiel soll neben dem geplanten Nettobetrag auch die Differenz zum tats!chlichen Nettobetrag berechnet werden. Die Berechnungsformel lautet dann: Differenz: [Ist Nettobetrag]-[Plan Nettobetrag] Die Differenz ergibt sich also aus der Subtraktion des geplanten vom tats!chlichen Nettobetrag. 280
Duplikate unterbinden
Mit der Ausf,hrung einer Abfrage mit berechneten Feldern f,hrt Access die Berechnung automatisch durch. Mit Ausnahme der berechneten Felder kDnnen Sie alle Spalten des Dynasets editieren. Sobald Sie einen Feldwert !ndern, der in einer berechneten Spalte verwendet wird, aktualisiert Access den berechneten Ausdruck automatisch. Berechnete Werte sind also stets aktuell.
Duplikate unterbinden Access zeigt im Dynaset standardm!ßig alle Datens!tze an, die den Abfragekriterien entsprechen. Es kann dabei vorkommen, dass einige Zeilen identische Werte enthalten, sich also wiederholen. Sie kDnnen dies unterbinden, indem Sie die Abfrageeigenschaft Keine Duplikate auf Ja einstellen. Wenn Sie beispielsweise nur das Feld [PLZ und Ort] der diesem Buch beiliegenden Adressentabelle in das Entwurfsraster ,bernehmen und die Abfrage ausf,hren, enth!lt das Dynaset unter Umst!nden Wiederholungen von Datens!tzen. So kDnnen beispielsweise zwei Adressen aus 40211 D,sseldorf stammen. Dieser Wert wird dann zweimal im Dynaset wiederholt. Manchmal ist aber ein Dynaset mit eindeutigen Datens!tzen erdorderlich. Sie erreichen dies, indem Sie wie folgt vorgehen: 1
Aktivieren Sie die Entwurfsansicht der Abfrage.
2
Rffnen Sie das Eigenschaftenfenster.
3
Klicken Sie auf einen leeren Bereich des Abfrageentwurfsfensters, so dass das Eigenschaftenfenster die Abfrageeigenschaften anzeigt.
4
W!hlen Sie aus dem Kombinationsfeld Keine Duplikate den Eintrag Ja.
Wenn Sie die Abfrageeigenschaft Keine Duplikate auf Ja einstellen, dann zeigt Access im Dynaset nur solche Datens!tze an, bei denen sich die Werte aller in das Dynaset aufgenommenen Datenfelder unterscheiden. Diese Eigenschaft entspricht damit dem Distinct-Pr!dikat von Access-SQL. Das Einstellen von Keine Duplikate auf Ja veranlasst Access, die Abfrageeigenschaft Eindeutige Datens7tze auf Nein einzustellen.
Abfrageeigenschaft Keine Duplikate
Beispiel
Dynaset ohne Duplikate
Keine Duplikate und Eindeutige Datens(tze
Das Einstellen der Abfrageeigenschaft Eindeutige Datens7tze auf Ja bewirkt, dass Access im Dynasat nur solche Datens!tze anzeigt, bei denen sich die Werte aller Datenfelder der zugrunde liegenden Tabelle unterscheiden. F,r obiges Beispiel bedeutet das, dass das Dynaset durchaus Wiederholungen des Feldes [PLZ und Ort] anzeigt. Da die Adressentabelle einen Prim!rschl,ssel enth!lt, unterscheiden sich n!mlich alle Datens!tze der Abfrage-Datenquelle. Die Eigenschaft Eindeutige Datens7tze entspricht damit dem DistinctRow-Pr!dikat von Access-SQL. Wenn Eindeutige Datens7tze auf Ja eingestellt wird, setzt Access die Eigenschaft Keine Duplikate automatisch auf Nein. 281
Abfragen
Abb. 5.14 Die Abfrageeigenschaft Keine Duplikate vermeidet Wiederholungen
Sie kDnnen die Eigenschaften Keine Duplikate und Eindeutige Datens7tze nicht gleichzeitig auf Ja einstellen. Wenn Sie beide Eigenschaften auf Nein einstellen, dann zeigt das Datenblatt alle Datens!tze an.
Datenstze gruppieren Weniger kann mehr sein. Dieses Sprichwort gilt auch f,r Abfragen. H!ufig bedeutet das Zuviel an Einzelinformation ein Zuwenig an Durchblick. Mit dem Gruppieren von Datens!tzen kDnnen Sie zu recht interessanten Ansichten Ihres Datenbestandes kommen. Pber die in diesem Kapitel beschriebenen MDglichkeiten zur Datengruppierung in Abfragen hinaus kDnnen Sie Daten auch in Berichten und in Pivot-Tabellen gruppieren. Weitere Hinweise zu Berichten finden Sie in Kapitel 7 Berichte dieses Buchs. Den Pivot-Tabellen-Assistent kDnnen Sie nur dann nutzen, wenn Sie die Tabellenkalkulation Excel auf Ihrem PC installiert haben. Dann bietet dieser aber in einigen Bereichen mehr MDglichkeiten als Gruppierungsabfragen. Weitere Hinweise zum Pivot-Tabellen-Assistenten finden Sie in Kapitel 6 Formulare dieses Buchs.
282
Datens%tze gruppieren
Abfragefunktionen Mit Abfragen haben Sie die MDglichkeit, den Datenbestand zun!chst nach einem oder mehreren Kriterien zu gruppieren, um anschließend Berechnungen durchf,hren zu lassen. Access verf,gt n!mlich ,ber eine ganze Reihe von Funktionen, die interessante statistische Werte f,r eine Gruppe von Datens!tzen automatisch ermitteln. Tabelle 5.5 enth!lt einen Pberblick ,ber diese Abfragefunktionen.
Die Abfragefunktionen von Access
Funktion
Bedeutung
Anzahl
Ermittelt die Anzahl
ErsterWert
Ermittelt den ersten Wert
LetzterWert
Ermittelt den letzten Wert
Max
Ermittelt das Maximum
Min
Ermittelt das Minimum
Mittelwert
Berechnet den Mittelwert
StdAbw
Berechnet die Standardabweichung f,r eine Gesamtmenge
StdAbwG
Berechnet die Standardabweichung f,r eine Stichprobe
Summe
berechnet die Summe
Varianz
berechnet die Varianz Tabelle 5.5
Wenn Sie diese Abfragefunktionen nutzen wollen, dann w!hlen Sie den Befehl Ansicht > Funktionen aus der Men,leiste, oder klicken Sie auf das Funktionen-Symbol. Access f,gt dem Entwurfsbereich eine neue Zeile hinzu, die mit Funktion beschriftet ist.
Funktionen einblenden
Ziehen Sie eine Spalte in den Entwurfsbereich, und klicken Sie in der FunktionenZeile. W!hlen Sie eine der Abfragefunktionen aus dem Kombinationsfeld und lassen die Abfrage ausf,hren. Das Ergebnis ist ern,chternd. Access zeigt im Dynaset ein einziges Feld mit dem berechneten Wert. Das liegt daran, dass Access die Berechnung standardm!ßig f,r alle Datens!tze des Dynasets durchf,hrt. Es entsteht ein einziges Ergebnis, das in der Datenblattansicht angezeigt wird.
283
Abfragen
Abb. 5.15 Summe aller Nettobetr!ge
Wenn Sie zur,ck in die Entwurfsansicht wechseln, kDnnen Sie noch weitere Berechnungen definieren. Ziehen Sie alle benDtigten Datenfelder in den Entwurfsbereich und w!hlen f,r jede Spalte eine Abfragefunktion aus dem Kombinationsfeld.
Mehrere Berechnungen
Sie kDnnen ein Datenfeld auch mehrfach im Entwurfsbereich anordnen. So l!sst sich beispielsweise f,r ein Datenfeld gleichzeitig die Summe, der Mittelwert und die Standardabweichung berechnen. Access ber,cksichtigt bei der Berechnung statistischer Werte nur solche Datenfelder, die keine Nullwerte enthalten. Dies spielt insbesondere bei der Berechnung der Anzahl, des Mittelwerts und der Varianz eine Rolle. Eine Besonderheit bei der Verwendung von Abfragefunktionen besteht darin, dass Sie f,r alle Spalten des Entwurfsbereichs eine Funktion ausw!hlen m,ssen. Dies kDnnen neben den Abfragefunktionen auch Funktionen zur Bildung von Gruppen, Ausdr,cken und Bedingungen sein. Diese Funktionen werden weiter unten in diesem Abschnitt besprochen.
Tipp
284
Sobald Sie Abfragefunktionen verwenden, geht der Bezug des Dynasets zu den Datens!tzen der zugrunde liegenden Tabellen verloren. Access verhindert daher das Bearbeiten von Feldern im Dynaset.
Datens%tze gruppieren
Daten gruppieren Access f,hrt Berechnungen standardm!ßig f,r alle Datens!tze des Dynasets durch. H!ufig interessieren jedoch Ergebnisse f,r eine oder mehrere Gruppen von Daten. Das Gruppieren von Daten macht nat,rlich nur dann Sinn, wenn eine Spalte der Tabelle f,r mehrere Datens!tze den gleichen Wert aufweist. Nur so lassen sich mehrere Datens!tze zu einer Gruppe zusammenfassen. Ein typisches Beispiel f,r die Gruppierung von Daten ist die Projektetabelle. Die Adressennummer der Projektetabelle bildet die Zuordnung zu der Adressentabelle. Da sich mehrere Projekte einer Adresse zuordnen lassen, ist die Wiederholung der Adressennummer in der Projektetabelle die Regel. Zur Definition einer Abfrage mit den Ums!tzen je Adressennummer gehen Sie wie folgt vor: 1
Rffnen Sie einen neuen Abfrageentwurf.
2
F,gen Sie die Projektetabelle hinzu.
3
Ziehen Sie die Felder Adresse-Nr und Ist Nettobetrag in den Entwurfsbereich.
4
Klicken Sie auf das Funktionen-Symbol, so dass Access die gleichnamige Zeile anzeigt.
5
Access setzt f,r alle Spalten des Dynasets standardm!ßig die Gruppenfunktion ein. Sie brauchen daher nur noch die Summenfunktion f,r das Feld Ist Nettobetrag aus dem Kombinationsfeld zu w!hlen.
6
Lassen Sie die Abfrage ausf,hren.
Projekte gruppieren
Abb. 5.16 Abfrage mit Gruppensummen
285
Abfragen
Dynaset mit Gruppensummen
Access zeigt ein Dynaset an, in dessen erster Spalte jede Adressennummer nur einmal angezeigt wird. Die zweite Spalte wird von den kumulierten Nettobetr!gen je Adressennummer gebildet.
Das Dynaset kann nicht bearbeitet werden
Da auch bei der Gruppenbildung der Bezug zu den Datens!tzen der zugrunde liegenden Tabellen verloren geht, kDnnen Sie auch in diesem Dynaset keine 0nderungen vornehmen. Access kommentiert jeden dahingehenden Versuch mit der Meldung, dass die Datensatzgruppe schreibgesch,tzt ist.
Mehrere Gruppenkriterien Access erlaubt die Gruppierung eines Dynasets nach mehreren Kriterien. W!hlen Sie einfach f,r alle gew,nschten Datenfelder das Gruppenkriterium aus. Wie die Sortierkriterien wertet Access auch die Gruppenkriterien von links nach rechts aus. Es kann daher vorkommen, dass Sie die Spalten des Dynasets neu anordnen m,ssen.
Mehrere Abfragefunktionen
Sie kDnnen mehrere Gruppenkriterien auch mit mehreren Abfragefunktionen kombinieren. So lassen sich beispielsweise der durchschnittliche und der maximale Umsatz je Kundennummer und Rechnungsjahr ermitteln. Access fordert bei der Verwendung von Funktionen in Abfragen, dass Sie f,r alle Spalten des Dynasets eine Funktion ausw!hlen. Es ist daher in einer Abfrage leider nicht mDglich, neben den aggregierten Werten auch die einzelnen Datens!tze aufzulisten. Die Kombination aggregierter Werte mit einer Auflistung einzelner Datens!tze der zugrunde liegenden Tabelle oder Abfrage ist in Formularen und Berichten mDglich (siehe Kapitel 6 Formulare und Kapitel 7 Berichte).
Abfragekriterien bei Gruppenbildung Wenn Sie neben der Gruppenbildung auch Abfragekriterien definieren wollen, m,ssen Sie zwei verschiedene F!lle unterscheiden. Im ersten Fall pr,ft Access das Kriterium, bevor es den Datensatz in die Gruppenbildung und damit in die Berechnung einbezieht. Im zweiten Fall f,hrt Access zun!chst die Berechnung durch und entscheidet dann anhand der Ergebnisse, ob der Datensatz im Dynaset erscheint oder nicht.
Datens!tze nach der Berechnung ausw!hlen
286
Wenn Sie ein Kriterium in die Kriterien-Zeile eintragen, dann f,hrt Access die Berechnung zun!chst auf der Basis aller Datens!tze der zugrunde liegenden Tabelle oder Abfrage durch. Das Ergebnis der Berechnung wird dann anhand des Kriteriums gepr,ft und in das Dynaset kommen nur solche Datens!tze, die das Kriterium erf,llen.
Datens%tze gruppieren
Abb. 5.17 Diese Abfrage zeigt nur die Summen ber 10.000 DM an
Angenommen, Sie definieren eine Abfrage, die Projektdaten nach Adressennummern gruppiert und die Nettoums!tze je Adressennummer kumuliert. Im Dynaset sollen jedoch nur diejenigen Summen erscheinen, die ,ber 10.000 DM liegen. In diesem Fall w,rden Sie einfach das Abfragekriterium
Beispiel
> 10000 f,r die Spalte mit den Nettoums!tzen definieren. Neben der Definition von Kriterien f,r die berechneten Werte kDnnen Sie auch Kriterien definieren, die die Datens!tze vor der Berechnung ausschließen. Sie verhindern damit, dass die entsprechenden Datens!tze in der Berechnung ,berhaupt ber,cksichtigt werden.
Datens!tze vor der Berechnung ausw!hlen
Ziehen Sie zun!chst die gew,nschte Spalte in den Entwurfsbereich. W!hlen Sie dann den Eintrag Bedingung aus dem Kombinationsfeld der Funktionen-Zeile. Tragen Sie das Kriterium schließlich in die Kriterien-Zeile ein. Als Beispiel f,r dieses Verfahren soll erneut eine Abfrage auf der Basis der Projektetabelle betrachtet werden. Rffnen Sie ein neues Abfragefenster und f,gen Sie die Projektetabelle hinzu. Ziehen Sie dann die beiden Felder Adresse-Nr und Ist Nettobetrag in den Entwurfsbereich. Die Adressennummer soll erneut der Gruppierung der Projektdaten dienen. W!hlen Sie den Eintrag Gruppierung aus dem Kombinationsfeld. Auch diese Abfrage soll die Nettoums!tze je Adressennummer kumulieren. W!hlen Sie daher die Summenfunktion f,r das Feld Ist Nettobetrag.
287
Abfragen
Da die Abfrage nur die Nettoums!tze ,ber 1.000 DM ber,cksichtigen soll, ist die Definition einer Bedingung erforderlich. Ziehen Sie dazu das Feld Ist Nettobetrag erneut in den Entwurfsbereich. Access zeigt jetzt zweimal das gleiche Feld nebeneinander an.
Abb. 5.18 Bei der Berechnung der Summe werden nur die Ums!tze ber 1.000 DM ber cksichtigt
W!hlen Sie f,r die zweite Spalte den Eintrag Bedingung aus dem Kombinationsfeld. Geben Sie dann das Kriterium > 1000 f,r diese Spalte ein und lassen Sie die Abfrage ausf,hren. Das Dynaset zeigt alle Adressennummern mit den kumulierten Nettoums!tzen an. Access ber,cksichtigt f,r die Summenbildung jedoch nur die Ums!tze von mehr als 1.000 DM. Man kDnnte auch sagen, dass zun!chst alle Ums!tze von bis zu 1.000 DM ausgeblendet werden, bevor die Berechnung der Abfragefunktionen erfolgt.
Tipp
288
Vielleicht ist Ihnen aufgefallen, dass Access mit der Auswahl der Bedingungsfunktion automatisch das Kontrollk!stchen Anzeige lDscht. Das liegt daran, dass Sie Spalten mit Bedingungsfunktionen generell ausblenden m,ssen. Sollten Sie einmal versuchen, das Kontrollk!stchen dennoch anzukreuzen, meldet Access einen Fehler bei der Ausf,hrung der Abfrage.
Datens%tze gruppieren
Sie kDnnen die beiden beschriebenen Verfahren zur Einschr!nkung der Datens!tze vor und nach der Berechnung auch kombinieren. Erweitern Sie dazu das zuletzt beschriebene Beispiel, indem Sie zus!tzlich das Kriterium
Datens!tze vor und nach der Berechnung ausw!hlen
> 10000 f,r das erste Feld Ist Nettobetrag eintragen. Die Abfrage enth!lt damit eine Bedingung, die vor der Durchf,hrung der Berechnung alle Datens!tze mit Ums!tzen ,ber 1.000 DM ausfiltert. Anschließend wird die Berechnung durchgef,hrt. Das zus!tzliche Kriterium bewirkt jedoch, dass nur die Summen ,ber 10.000 DM im Dynaset erscheinen.
Abb. 5.19 Datens!tze vor und nach der Berechnung ausw!hlen
Sie sehen in Abbildung 5.19, dass die Spalte Ist Nettobetrag zweimal im Entwurfsbereich enthalten ist. F,r beide Spalten wurde ein Kriterium definiert. Der Unterschied, ob das Kriterium vor oder nach der Berechnung ber,cksichtigt wird, liegt lediglich in der Auswahl der Funktion. Bei der Auswahl einer Abfragefunktion wird das Abfragekriterium erst nach der Berechnung ber,cksichtigt. Außerdem sollten Sie das Anzeigekriterium f,r diese Spalten ankreuzen.
Zusammenfassung
Die Auswahl der Bedingungsfunktion bewirkt hingegen, dass das Abfragekriterium bereits vor der Berechnung ber,cksichtigt wird. Datens!tze, f,r die das Kriterium nicht zutrifft, fließen erst gar nicht in die Berechnung ein. Sie m,ssen das Anzeigekriterium f,r die Spalten mit Bedingungsfunktion lDschen. 289
Abfragen
Kreuztabellenabfragen Kreuztabellenabfragen ermDglichen eine bessere Darstellung von berechneten Ergebnissen. Mit Kreuztabellenabfragen lassen sich die Ergebnisse in einer zweidimensionalen Tabelle anordnen. Der folgende Abschnitt erl!utert zun!chst, wie Sie eine Kreuztabellen- aus einer Auswahlabfrage entwickeln kDnnen. Sie erfahren dabei die wichtigsten Grundlagen ,ber Kreuztabellen. Im n!chsten Abschnitt lernen Sie dann den Kreuztabellenabfrage-Assistenten von Access kennen, der den Entwurf von Kreuztabellenabfragen beschleunigen kann. Weitere Abschnitte besch!ftigen sich mit einigen Besonderheiten beim Entwurf von Kreuztabellenabfragen.
Kreuztabellenabfragen aus Auswahlabfragen entwickeln Sie benDtigen Kreuztabellenabfragen nur, wenn Sie den Datenbestand nach mindestens zwei Kriterien gruppieren wollen. Die Kreuztabellenabfrage stellt die Werte des einen Gruppenkriteriums als Pberschriften der Spalten und die Werte des anderen Gruppenkriteriums als Pberschriften der Zeilen einer Tabelle dar. Die Zellen der Tabelle werden dann von berechneten Werten gebildet. Die Ergebnisse einer Kreuztabellenabfrage lassen sich stets auch mit einer normalen Abfrage erzielen. Der Unterschied besteht lediglich in der verbesserten Pr!sentation in einer zweidimensionalen Kreuztabelle. Solange Sie Kreuztabellenabfragen noch nicht so gut kennen, sollten Sie zun!chst eine normale Abfrage erstellen und diese dann in eine Kreuztabellenabfrage umwandeln. Genau diese Vorgehensweise soll am Beispiel der Projektetabelle nachvollzogen werden.
Adressennummer
Rechnungsjahr und -monat
Ziel der Abfrage ist die Berechnung der kumulierten Ums!tze je Adressennummer, Rechnungsjahr und Rechnungsmonat. Das erste Gruppenkriterium ist also die Adressennummer. Ziehen Sie das gleichnamige Feld in den Entwurfsbereich. Das zweite und das dritte Gruppenkriterium bedarf der Anwendung eines kleinen Tricks. Die Projektetabelle enth!lt n!mlich weder ein Feld f,r das Rechnungsjahr noch ein Feld f,r den Rechnungsmonat. Sie m,ssen daher zwei berechnete Felder definieren, die das Rechnungsjahr und den Rechnungsmonat aus dem Feld Ist Rechnung extrahieren. Klicken Sie dazu in die Feld-Zeile einer leeren Spalte und geben Sie den folgenden Ausdruck ein: Format([Ist Rechnung];"jjjj") Der Name des berechneten Feldes ist also Rechnungsjahr. Die Format()-Funktion ermittelt aus dem Rechnungsdatum das Rechnungsjahr. Sie erreichen dies durch die Angabe des Parameters "jjjj". Er bestimmt, dass das Rechnungsjahr als vierstellige Zahl extrahiert werden soll. Die Formel f,r den Rechnungsmonat sieht ganz !hnlich aus:
290
Rechnungsmonat: Format([Ist Rechnung];"mmmm")
Kreuztabellenabfragen
Hier bestimmt der Parameter "mmmm", dass der Monat ausgeschrieben werden soll. Wenn das Feld Ist Rechnung etwa den Wert 1.10.1997 enth!lt, dann liefert die Format()-Funktion das Ergebnis Oktober. Wenn Ihnen der Entwurfsbereich zur Eingabe der berechneten Felder zu un,bersichtlich ist, dann sollten Sie mit der Tastenkombination H" oder der Auswahl des Befehls Zoom aus dem Kontextmen, das Zoom-Fenster Dffnen. Es bietet mehr Platz zur Eingabe langer Formeln. Achten Sie bei der Eingabe darauf, dass das Feld Ist Rechnung in eckige Klammern geschachtelt werden muss. Das Trennzeichen zwischen dem Feldnamen und dem Formatparameter ist ein Semikolon.
Tipp
Syntax
Abb. 5.20 Rechnungsjahr und -monat ermitteln
Als vierte Spalte benDtigen Sie das Feld f,r den Umsatz. Ziehen Sie daher das Feld Ist Nettobetrag in den Entwurfsbereich. Bevor Sie mit dem Erstellen der Abfrage fortfahren, sollten Sie den bisherigen Stand der Dinge erst einmal testen. Klicken Sie auf das Ausf1hren-Symbol und pr,fen Sie, ob die berechneten Felder zu den gew,nschten Ergebnissen f,hren. Wechseln Sie gegebenenfalls zur,ck in die Entwurfsansicht, um etwaige Fehler zu beheben. Der n!chste Schritt besteht in der Gruppierung der Daten. Klicken Sie auf das Funktionen-Symbol oder w!hlen den Befehl Ansicht > Funktionen aus der Men,leiste. W!hlen Sie f,r die Adressennummer, das Rechnungsjahr und den Rechnungsmonat die Gruppenfunktion aus dem Kombinationsfeld. Sie gruppieren Ihren Datenbestand damit nach insgesamt drei Kriterien. Lediglich der Nettobetrag soll kumuliert werden. W!hlen Sie daher die Summenfunktion f,r diese Spalte aus.
Ist Nettobetrag
Abfrage testen
Daten gruppieren
Funktionen ausw!hlen
291
Abfragen
Abfrage ausf hren
Wenn Sie die Abfrage ausf,hren lassen, erhalten Sie eine recht aussagekr!ftige Tabelle. Access gruppiert die Daten erwartungsgem!ß nach Adressennummer, Rechnungsjahr und Rechnungsmonat. Die rechte Spalte enth!lt den kumulierten Nettobetrag je Gruppe. Ein kleiner Makel der Tabelle besteht darin, dass Access auch Nullwerte anzeigt. Sie sollten probeweise einmal die Reihenfolge der Gruppierung !ndern. Wechseln Sie zur,ck in die Entwurfsansicht und verschieben die Spalten f,r das Rechnungsjahr und den Rechnungsmonat ganz nach links. Gleichzeitig kDnnen Sie die Anzeige von Nullwerten unterbinden. Ziehen Sie die Spalten Ist Nettobetrag und Ist Rechnung ein zweites Mal in den Entwurfsbereich und w!hlen Sie f,r beide Spalten den Eintrag Bedingung aus der Funktionen-Zeile. Tragen Sie in der Kriterien-Zeile jeweils den Ausdruck Ist Nicht Null ein. Die Bedingung bewirkt, dass die Datens!tze ohne Nettobetrag oder ohne Rechnungsdatum erst gar nicht in die Gruppenbildung einfließen und daher auch im Dynaset nicht erscheinen. Damit die Ist Nettobetrag und Ist Rechnung-Spalten nicht im Datenblatt erscheinen, m,ssen Sie noch die Kontrollk!stchen in der Zeile Anzeigen der Spalten leeren.
Abb. 5.21 Kumulierte Nettobetr!ge nach Rechnungsjahr, Rechnungsmonat und Adressennummer
292
Kreuztabellenabfragen
Wenn Sie die Abfrage erneut ausf,hren lassen, zeigt Access das Dynaset an. Das oberste Gruppenkriterium ist das Rechnungsjahr. Bei zwei gleichen Rechnungsjahren entscheidet der Rechnungsmonat ,ber die Bildung weiterer Gruppen. Erst bei gleichen Rechnungsmonaten bildet die Adressennummer ein weiteres Gruppenkriterium. Speichern Sie die Abfrage unter dem Namen Kumulierte Nettobetr7ge nach Jahren, Monaten und Adressennummern.
Abfrage speichern
Bevor Sie die Auswahlabfrage in eine Kreuztabellenabfrage umwandeln kDnnen, m,ssen Sie die Anordnung der Spalten erneut !ndern. Wechseln Sie in die Entwurfsansicht und ziehen die Spalte f,r die Adressennummer ganz nach links.
Kreuztabellenabfrage bilden
W!hlen Sie dann den Befehl Abfrage > Kreuztabellenabfrage aus der Men,leiste oder klicken Sie auf das gleichnamige Symbol. Die Auswahl des Befehls veranlaßt Access, dem Entwurfsbereich die Zeile Kreuztabelle hinzuzuf,gen. Mithilfe dieser Zeile bestimmen Sie den Aufbau der Kreuztabelle. Außerdem zeigt Access in der Titelzeile des Abfragefensters jetzt den Text Kreuztabellenabfrage an. Klicken Sie in der Spalte Adresse-Nr der Kreuztabellen-Zeile, und w!hlen Sie den Eintrag Spalten1berschrift aus dem Kombinationsfeld. Diese Einstellung bewirkt, dass Access die Adressennummern in den Spalten,berschriften der Kreuztabelle anzeigt. W!hlen Sie anschließend f,r die Felder Rechnungsjahr und Rechnungsmonat den Eintrag Zeilen1berschrift aus dem Kombinationsfeld. Diese Einstellung bewirkt, dass Access die Werte dieser beiden Gruppenkriterien als Zeilen,berschriften anzeigt. Neben den Pberschriften m,ssen Sie zus!tzlich noch festlegen, welche Daten in den Zellen der Kreuztabelle angezeigt werden sollen. W!hlen Sie dazu f,r die Spalte Ist Nettobetrag den Eintrag Wert aus dem Kombinationsfeld. Klicken Sie auf das Ausf1hren-Symbol, um die Abfrage zu starten. Die Spalten,berschriften der entstehenden Kreuztabelle entsprechen den Adressennummern. Die Zeilen der Kreuztabelle werden von Rechnungsjahren und -monaten gebildet. Die Zellen enthalten die kumulierten Nettobetr!ge je Gruppe.
Spalten berschrift
Zeilen berschrift
Wert
Funktionsweise der Kreuztabelle
Die Kreuztabelle enth!lt damit die gleichen Daten wie die weiter oben besprochene Auswahlabfrage. Der wichtige Unterschied besteht jedoch darin, dass die Kreuztabelle viel ,bersichtlicher ist. Das Beispiel zeigt, dass Sie f,r eine Kreuztabelle durchaus mehrere Zeilen,berschriften definieren kDnnen. Dies wird immer dann erforderlich, wenn Sie Ihre Daten nach mehr als zwei Kriterien gruppieren wollen. Eine Kreuztabelle erlaubt jedoch jeweils nur ein Feld f,r die Spalten,berschriften und die Tabelleneintr!ge.
293
Abfragen
Abb. 5.22 Die Spalten der Kreuztabelle werden mit Adressennummern beschriftet
Da die Kreuztabelle auf jeden Fall Rechnungsjahre und -monate anzeigen sollte, war bereits festgelegt, dass die entsprechenden Felder die Zeilen,berschriften bilden w,rden. In den Spalten,berschriften l!sst sich schließlich nur ein einzelnes Datenfeld anzeigen.
Beispiel verfeinern
Sie kDnnen die Kreuztabelle aus Abbildung 5.22 verfeinern, indem Sie statt der Adressennummern die Namen aus der Adressentabelle anzeigen lassen. F,gen Sie der Abfrage die Tabelle Adressen hinzu und lassen Sie Access die Beziehung zwischen beiden Tabellen automatisch erkennen. 0ndern Sie dann die Spalte Adressennummer in Name um, indem Sie wie folgt vorgehen: 1
W!hlen Sie aus dem Kombinationsfeld Tabelle der Spalte Adressenummer den Eintrag Adresse.
2
W!hlen Sie aus dem Kombinationsfeld Feld der Spalte Adressennummer den Eintrag Name.
3
Lassen Sie die Abfrage ausf,hren.
Access zeigt in der Datenblattansicht der Abfrage jetzt Namen statt der Adressennummern an. Dabei f!llt auf, dass sich die Reihenfolge der Spalten ge!ndert hat. Die Ursache hierf,r besteht darin, dass Access die Spalten jetzt aufsteigend nach Namen sortiert, statt wie vorher nach Adressennummern.
294
Kreuztabellenabfragen
Abb. 5.23 Kreuztabelle mit Adressen und Projekten
Kreuztabellenabfrage direkt entwerfen Der vorige Abschnitt besch!ftigte sich mit der Entwicklung einer Kreuztabellenaus einer Auswahlabfrage. In diesem Abschnitt lernen Sie Vorgehensweisen kennen, bei denen Sie Abfragen von vorneherein als Kreuztabelle konzipieren. Der Kreuztabellenabfrage-Assistent von Access erleichtert den Entwurf einfacher Kreuztabellen. Sie starten den Assistenten ,ber den Dialog Neue Abfrage. Mit den grafisch animierten Dialogen des Assistenten bestimmen Sie die Spalten,berschriften, die Zeilen,berschriften und den Tabelleneintrag f,r die Kreuztabelle. Der Assistent erstellt die Kreuztabelle dann automatisch.
Kreuztabellenabfrage-Assistent
Der Assistent eignet sich lediglich zur Definition einfacher Kreuztabellenabfragen. Die weiter oben beschriebene Definition von Abfragekriterien kDnnen Sie mit dem Assistenten nicht realisieren. Es ist daher in der Regel erforderlich, vor dem Aufruf des Assistenten eine Auswahlabfrage zu entwerfen, die die benDtigten Daten zusammenstellt. Erst wenn das geschehen ist, kDnnen Sie auf der Basis der Auswahl- eine Kreuztabellenabfrage entwerfen. Oft ist es auch erforderlich, die vom Assistenten erstellten Kreuztabellen manuell zu ,berarbeiten. Die folgenden Abschnitte beschreiben den manuellen Entwurf von Kreuztabellen.
295
Abfragen
Abb. 5.24 Der Kreuztabellenabfrage-Assistent
Zum manuellen Entwurf einer Kreuztabelle gehen Sie wie folgt vor: Kreuztabelle manuell entwerfen
1
Erstellen Sie eine neue Abfrage und f,gen Sie alle benDtigten Tabellen hinzu.
2
W!hlen Sie den Befehl Abfrage > Kreuztabelle aus der Men,leiste, um aus der Auswahlabfrage eine Kreuztabellenabfrage zu erstellen.
3
Ziehen Sie als Erstes das Datenfeld in den Entwurfsbereich, das Access als Spalten,berschrift verwenden soll.
4
W!hlen Sie f,r die Spalte den Eintrag Gruppierung aus der Funktionen-Zeile und den Eintrag Spalten1berschrift aus der Kreuztabellen-Zeile. Beachten Sie, dass Access nur ein Feld als Spalten,berschrift erlaubt.
5
Ziehen Sie die Datenfelder in den Entwurfsbereich, die Access als Zeilen,berschriften verwenden soll.
6
Ordnen Sie die Felder in der gew,nschten Reihenfolge von links nach rechts an.
7
W!hlen Sie f,r die entsprechenden Spalten den Eintrag Gruppierung aus der Funktionen-Zeile und den Eintrag Zeilen1berschrift aus der Kreuztabellen-Zeile. Zur Bildung der Zeilen,berschriften kDnnen Sie auch mehrere Felder ausw!hlen.
Spalten berschrift
Zeilen berschriften
296
Kreuztabellenabfragen
8
9
Ziehen Sie ein weiteres Feld in den Entwurfsbereich und w!hlen aus der Funktionen-Zeile die Abfragefunktion.
Tabelleneintrag
W!hlen Sie f,r dieses Feld den Eintrag Wert aus der Kreuztabellen-Zeile.
Sie kDnnen nun f,r alle Spalten der Kreuztabelle Kriterien definieren. Tragen Sie die Abfragekriterien einfach in die Kriterien-Zeile ein. Eine Sonderstellung nimmt die Spalte f,r den Tabelleneintrag ein. Wie bei der weiter oben beschriebenen Gruppenbildung kDnnen Sie die Datens!tze auch hier filtern, bevor sie in die Berechnung einfließen.
Abfragekriterien definieren
Ziehen Sie bei Bedarf das Datenfeld f,r den Tabelleneintrag erneut in den Entwurfsbereich und w!hlen die Bedingungsfunktion. W!hlen Sie f,r diese Spalte zus!tzlich den Eintrag nicht angezeigt aus der Kreuztabellen-Zeile.
Spaltenberschriften fixieren Access bildet die Spalten,berschriften ,blicherweise aus den Werten der Spalte, f,r die Sie den gleichnamigen Eintrag aus der Kreuztabellen-Zeile ausw!hlen. Die Zusammenstellung der Spalten,berschriften richtet sich damit nach den Inhalten der Tabelle. Sie kDnnen die Spalten,berschriften jedoch auch fixieren. Das gibt Ihnen die MDglichkeit, die Auswahl und die Reihenfolge der Spalten,berschriften festzulegen. Außerdem werden fixierte Spalten,berschriften immer angezeigt und beschleunigen die Ausf,hrung der Kreuztabellenabfrage. Wenn Sie die Spalten,berschriften fixieren wollen, dann w!hlen Sie den Befehl Ansicht > Eigenschaften aus der Men,leiste oder klicken auf das Eigenschaften-Symbol, so dass Access den gleichnamigen Dialog anzeigt. Tragen Sie die Liste der Spalten,berschriften in die Eigenschaft Fixierte Spalten1berschriften ein.
Abb. 5.25 Spalten berschriften fixieren
297
Abfragen
Wenn Ihre Spalten,berschriften irgendwelche Sonderzeichen (z.B. das Leerzeichen) enthalten, dann m,ssen Sie die Pberschriften in Anf,hrungszeichen setzen. Trennen Sie die einzelnen Eintr!ge der Liste durch das Listentrennzeichen. Access erwartet das Listentrennzeichen, das in den L7ndereinstellungen der Systemsteuerung von Windows festgelegt ist.
Hinweis
Beachten Sie, dass Access bei fixierten Spalten,berschriften nur diejenigen Spalten anzeigt, deren Werte in der Liste der Spalten,berschriften aufgef,hrt sind. Sollte das entsprechende Datenfeld Werte enthalten, die Access in der Liste der Spalten,berschriften nicht finden kann, dann fallen diese Werte aus der Kreuztabellenabfrage heraus. Das Fixieren von Spalten,berschriften hat also eine !hnliche Wirkung wie ein Abfragekriterium. Wenn Sie beispielsweise den Monatsnamen als Spalten,berschrift ausgew!hlt haben, dann m,ssen Sie die Monatsnamen in der Liste der Spalten,berschriften in der gleichen Formatierung angeben, wie sie aus der Tabelle extrahiert werden. Wenn die entsprechende Spalte den Wert Dezember liefert, d,rfen Sie als Spalten,berschrift nicht etwa den Wert Dez. angeben. Wenn Sie diese Regel nicht beachten, zeigt Access die Werte der entsprechende Spalte nicht in der Kreuztabelle an.
Wann kann ein Dynaset bearbeitet werden? Access stellt Abfrageergebnisse standardm!ßig im Datenblatt dar. Dar,ber hinaus basieren die meisten Formulare und Berichte auf Abfragen. Da sich die Datenblattund die Formularansicht auch zur Datenbearbeitung eignen, stellt sich die Frage, wann das Dynaset einer Abfrage bearbeitet werden kann.
Hinweis
Allgemeine Regel
Abfragen mit nur einer Tabelle
298
Wenn Sie die Abfrageeigenschaft Datensatzgruppentyp auf Snapshot eingestellt haben, kDnnen Sie die Abfragedaten generell nicht bearbeiten. Das Bearbeiten ist nur dann mDglich, wenn Sie den Typ Dynaset oder Dynaset (Inkonsistente Aktualisierungen) ausgew!hlt haben. Weitere Hinweise zu diesem Thema finden Sie weiter oben in diesem Kapitel unter der Pberschrift Abfrageeigenschaften. Allgemein gesagt kDnnen Sie ein Abfrageergebnis bzw. ein Dynaset stets dann bearbeiten, wenn Access einen Datensatz des Dynasets direkt einem Datensatz der zugrunde liegenden Tabelle oder Abfrage zuordnen kann. Die im Folgenden aufgef,hrten Regeln sind Schlussfolgerungen aus diesem Zusammenhang. Wenn Sie Abfragen mit nur einer zugrunde liegenden Tabelle erstellen, kDnnen Sie das Dynaset generell editieren. Die einzige Ausnahme bilden nat,rlich berechnete Felder und Gruppierungsfunktionen. Berechnete Felder lassen sich generell nicht bearbeiten. Sobald Sie in einer Abfrage Gruppierungs- oder Abfragefunktionen verwenden, l!sst sich das Dynaset ebenfalls nicht bearbeiten.
Wann kann ein Dynaset bearbeitet werden?
Dynasets, die auf 1:1-verkn,pften Tabellen basieren, lassen sich ebenfalls bearbeiten. F,r sie gilt prinzipiell das Gleiche wie f,r Dynasets, die auf nur einer Tabelle basieren. Der Bezug zu den zugrunde liegenden Tabellen geht selbst dann nicht verloren, wenn Sie eine 1:n-Beziehung definiert haben. Bei einer 1:n-Beziehung kDnnen bekanntlich mehrere Datens!tze der Detailtabelle einem Datensatz der Master-Tabelle zugeordnet werden.
1:1-Beziehung
1:n-Beziehung
Bei der Anzeige des Dynasets ist Access daher gezwungen, den Datensatz der Master-Tabelle f,r jeden Datensatz der Detailtabelle zu wiederholen. Wenn Sie einen Datensatz der Master-Tabelle !ndern, dann aktualisiert Access automatisch die Anzeige dieses Datensatzes f,r alle zugeordneten Datens!tze der Detailtabelle.
Abb. 5.26 Bei einer 1:n-Verkn pfung lassen sich die Datens!tze der Masterund der Detailtabelle bearbeiten
Berechnete Werte lassen sich in Dynasets generell nicht bearbeiten. Aus dieser Regel folgt, dass sich die Dynasets aller Abfragen, die Daten gruppieren, nicht bearbeiten lassen. Dazu z!hlen unter anderem auch die Kreuztabellenabfragen. Sofern sich das Dynaset einer Abfrage prinzipiell bearbeiten l!sst, !ndert auch ein berechnetes Feld nichts an diesem Zusammenhang. Access unterbindet in diesem Fall lediglich das Bearbeiten dieses einen Datenfeldes. Das Dynaset einer Abfrage, f,r die Sie die Eigenschaft Keine Duplikate auf Ja eingestellt haben, kDnnen Sie generell nicht bearbeiten.
Berechnete Felder
Keine Duplikate
299
Abfragen
Parameter in Abfragekriterien Abfragen variabel gestalten
Parameter
Parameter definieren
Datentypen
Abfragen, die h!ufig mit nur geringf,gig abweichenden Abfragekriterien ausgef,hrt werden, lassen sich parametrisieren. Access fragt beim Start der Abfrage einen oder mehrere Parameter ab, die es dann bei der Durchf,hrung der Abfrage an der von Ihnen vorgesehenen Stelle einsetzt. Parameter sind in Abfragen, auf denen Formulare oder Berichte basieren, besonders beliebt. Angenommen, Sie verf,gen ,ber einen Bericht, der alle Rechnungen nach Monaten und Jahren gruppiert und ausdruckt. Normalerweise m,ssen Sie die Abfrage, auf der der Bericht basiert, jedesmal !ndern, wenn nur die Werte eines bestimmten Monats oder eines bestimmten Jahres gedruckt werden sollen. Abhilfe schaffen einige Parameter, die den zu druckenden Bereich einschr!nken. Der geschickte Einsatz von Parametern kann also eine Menge Zeit bei der Arbeit mit Abfragen einsparen. Die Definition von Parametern ist denkbar einfach. Klicken Sie in die Kriterien-Zeile einer Spalte und geben Sie in eckigen Klammern einen Text ein. Access zeigt diesen Text bei der Ausf,hrung der Abfrage an und fordert Sie zur Eingabe des Parameters auf. Sie sollten den Text daher mit der notwendigen Sorgfalt gestalten. Access weist Parametern standardm!ßig den Datentyp Text zu. Wenn Sie Parameter eines anderen Datentyps benDtigen oder mehrere Parameter definieren wollen, dann m,ssen Sie die Parameter explizit definieren. W!hlen Sie dazu den Befehl Abfrage > Parameter aus der Men,leiste oder dem Kontextmen,, so dass Access den gleichnamigen Dialog anzeigt. Sie m,ssen in die Spalte Parameter den gleichen Text ohne eckige Klammern eingeben wie im Abfragekriterium. W!hlen Sie f,r jeden Parameter einen Datentyp aus dem Kombinationsfeld. Wenn Sie mehrere Abfrageparameter definieren, bestimmt der Dialog automatisch die Reihenfolge der Abfrage der Parameter.
Adressen eines Postleitzahlengebiets oder Ortes
Als Beispiel soll eine Abfrage erstellt werden, die die Adressen eines bestimmten Postleitzahlengebiets oder Ortes anzeigt. Erstellen Sie eine neue Abfrage, und f,gen Sie die Adressentabelle hinzu. Ziehen Sie das Sternchen in den Entwurfsbereich, so dass die Abfrage alle Felder der Adressentabelle anzeigt. F,r die Definition des Abfragekriteriums m,ssen Sie zus!tzlich das Feld PLZ und Ort in den Entwurfsbereich ziehen. Da Sie dieses Feld ausschließlich zur Definition des Abfragekriteriums benDtigen, kDnnen Sie das Anzeigekritierium ausschalten. Geben Sie folgendes Abfragekriterium ein: Wie "*" & [Welche PLZ oder welcher Ort?] & "*" Der Ausdruck [Welche PLZ oder welcher Ort?] bildet den Parameter des Abfragekriteriums. Er f,hrt bei der Ausf,hrung der Abfrage zur Anzeige eines Dialogs, in den Sie eine Postleitzahl oder einen Ortsnamen eingeben kDnnen.
300
Parameter in Abfragekriterien
Die beiden &-Operatoren erg!nzen zwei Sternchen, so dass Access das Datenfeld PLZ und Ort nach dem Vorkommen des Parameters durchsucht. Da Sie nur einen Parameter definiert haben und dieser vom Datentyp Text ist, brauchen Sie den Dialog zur Definition der Abfrageparameter nicht aufzurufen. Speichern Sie die Abfrage unter dem Namen Adressen eines Postleitzahlengebiets oder Ortes und lassen sie ausf,hren. Access zeigt zun!chst den Dialog zur Eingabe des Parameters an.
Abb. 5.27 Parameter eingeben
Wenn Sie beispielsweise den Wert 40 eingeben, enth!lt das Dynaset alle Adressen, bei denen der Wert 40 an einer beliebigen Stelle im Datenfeld PLZ und Ort vorkommt. Das sind beispielsweise die beiden Postleitzahlen 40211 und 84032. Ein weiteres Beispiel soll die Verwendung zweier Parameter zur Eingabe von Datumswerten zeigen. Ziel der Abfrage ist das Auflisten aller Projekte, die zwischen zwei einzugebenden Datumswerten liegen.
Datumswerte f r Projekte angeben
Erstellen Sie eine neue Abfrage und f,gen Sie die Projektetabelle hinzu. Da die Abfrage alle Datenfelder der Projektetabelle enthalten soll, ziehen Sie das Sternchen in den Entwurfsbereich. Zur Festlegung eines Abfragekriteriums ziehen Sie zus!tzlich das Feld Ist Rechnung in den Entwurfsbereich. LDschen Sie das Anzeigekriterium f,r die entsprechende Spalte und geben folgendes Abfragekriterium ein: Zwischen [Projekte von Rechnungsdatum] Und [Bis Rechnungsdatum] Dieses Abfragekriterium definiert zwei Parameter. Da es sich um Datumswerte handelt, m,ssen Sie die Parametereigenschaften explizit festlegen. W!hlen Sie den Befehl Abfrage > Parameter aus der Men,leiste oder dem Kontextmen, und geben Sie die beiden Parameter ein. Achten Sie darauf, dass Sie den gleichen Text wie im Abfragekriterium eingeben. W!hlen Sie f,r beide Parameter den Datentyp Datum/ Uhrzeit.
Parametereigenschaften festlegen
301
Abfragen
Abb. 5.28 Abfrage mit zwei Parametern
Abfrage speichern und ausf hren
Speichern Sie die Abfrage unter dem Namen Projekte nach Rechnungsdatum und lassen sie ausf,hren. Access fragt die beiden Parameter nacheinander ab. Das Abfrageergebnis enth!lt schließlich nur die Projekte, deren Rechnungsdaten innerhalb des spezifizierten Bereichs liegen. Wenn Sie auf der Basis dieser Abfrage einen Bericht erstellen, fragt Access beim Rffnen des Berichts automatisch nach den beiden Parametern. Der Bericht druckt dann nur diejenigen Projekte aus, die innerhalb des spezifizierten Bereichs liegen. Dieses Beispiel zeigt, dass sich mit Parametern nicht nur Abfragen, sondern auch Berichte und Formulare sehr flexibel gestalten lassen.
Parameter ber Dialoge eingeben
Access zeigt f,r jeden Parameter einer Abfrage jeweils einen eigenen Dialog an. Wenn Sie alle Parameter gleichzeitig in einen Dialog eingeben wollen, dann m,ssen Sie ein geeignetes Formular entwerfen und sich in der Abfrage auf die Steuerelemente des Formulars beziehen. Wenn Sie die Eingabe der Parameter beispielsweise in die Steuerelemente [VonDatum] und [BisDatum] des Formulars Ums7tze drucken erfolgt, geben Sie folgenden Ausdruck in die Kriterien-Zeile der Abfrage ein: Zwischen Formulare![UmsBtze drucken]![VonDatum] Und Formulare![UmsBtze drucken]![BisDatum] Die Einbindung eines entsprechenden Dialogs erfordert den Einsatz von Makros oder VBA. Außerdem ist es erforderlich, dass das Dialogformular geDffnet ist, w!hrend die Abfrage ausgef,hrt wird.
302
Aktionsabfragen
Aktionsabfragen Abfragen dienen vorwiegend der Auswertung von Datenbest!nden. Sie vermitteln verschiedene Ansichten einer oder mehrerer Tabellen und bilden damit ein wichtiges Instrument, um die Aussagekraft der Daten zu erhDhen. Mit Abfragen lassen sich aber auch Datenbest!nde ver!ndern. Man nennt diesen speziellen Typ Aktionsabfragen. Wenn Sie an sehr vielen Datens!tzen !hnliche Bearbeitungsschritte durchf,hren wollen, kDnnen Sie sich die Arbeit mit Aktionsabfragen h!ufig erleichtern. Aktionsabfragen kDnnen Datens!tze automatisch aktualisieren, lDschen oder anf,gen. Abh!ngig von der spezifischen Anwendung d,rfen Aktionsabfragen manchmal nur zu bestimmten Zeitpunkten ausgef,hrt werden. So sollte beispielsweise eine Abfrage zum LDschen aller Rechnungen aus dem Vorjahr erst dann ausgef,hrt werden, wenn diese Rechnungen zuvor gesichert wurden. Access kennzeichnet die verschiedenen Typen von Aktionsabfragen im Datenbankfenster durch Symbole. Tabelle 5.6 enth!lt eine Pbersicht der Symbole.
Abfragetypen
Symbol
Abfragetyp Auswahlabfrage Kreuztabellenabfrage Tabellenerstellungsabfrage Aktualisierungsabfrage Anf,geabfrage LDschabfrage Tabelle 5.6
Aktions- unterscheiden sich von Auswahlabfragen dadurch, dass es hier eine Differenz zwischen dem Ausf,hren der Abfrage und der Datenblattansicht gibt. Bei Auswahlabfragen zeigt Access das Abfrageergebnis in der Datenblattansicht an, w!hrend Aktionsabfragen die Daten der zugrunde liegenden Tabellen ver!ndern. Deshalb gibt es hier kein Abfrageergebnis im eigentlichen Sinne.
Aktionsabfrage testen
303
Abfragen
Bei einem Wechsel in die Datenblattansicht zeigt Access eine Vorschau auf die zu ver!ndernden Daten an. Die Datenblattansicht eignet sich daher gut f,r den Test einer Aktionsabfrage vor deren Ausf,hrung. In der Datenblattansicht kDnnen Sie die Ausdr,cke und Kriterien Ihrer Abfrage testen, bevor die Daten der zugrunde liegenden Tabelle ver!ndert werden.
Aktionsabfrage starten
Wenn Sie einen Doppelklick auf eine Aktionsabfrage durchf,hren oder auf die Schaltfl!che ffnen klicken, zeigt Access zun!chst eine Warnung an, dass diese Abfrage Ihren Datenbestand ver!ndert. Access verhindert so das versehentliche Starten von Aktionsabfragen. Wenn Sie die Warnung mit OK best!tigen, zeigt Access in aller Regel weitere Dialoge an. Sie weisen darauf hin, ob und wie viele Datens!tze ver!ndert oder gelDscht werden. Bevor eine Aktionsabfrage bereits bestehende Tabellen ,berschreiben kann, zeigt Access ebenfalls zun!chst einen Dialog an. Access f,hrt eine Aktionsabfrage erst dann aus, wenn Sie alle Warnungen und Hinweise best!tigt haben.
Abb. 5.29 (ber diese Option schalten Sie das Best!tigen von Aktionsabfragen aus
Wenn Sie die Anzeige der Warnung unterbinden wollen, dann w!hlen Sie den Befehl Extras > Optionen aus der Men,leiste. Markieren Sie im Optionen-Dialog das Register Bearbeiten > Suchen und leeren Sie in der Optionsgruppe Best7tigen das Kontrollk!stchen Aktionsabfragen
304
Aktionsabfragen
Tabellenerstellungsabfrage Mit einer Tabellenerstellungsabfrage kDnnen Sie Daten aus einer oder mehreren Tabellen und Abfragen zusammenstellen, Daten gruppieren und Datens!tze selektieren. Im Unterschied zu einer Auswahlabfrage speichert Access das Ergebnis einer Tabellenerstellungsabfrage in einer neuen Tabelle, deren Daten Sie nat,rlich bearbeiten kDnnen. Tabellenerstellungsabfragen eignen sich daher unter anderem f,r folgende Zwecke: Zusammenstellen von Daten in einer Tabelle, die sp!ter weitergegeben werden soll Speichern von gruppierten und berechneten Daten in einer Tabelle. So kDnnen Sie die Daten beispielsweise vor der Aufbereitung mit einem Pr!sentationsprogramm bearbeiten. Ausw!hlen nur bestimmter Daten zwecks Weitergabe an Dritte Selektives Archivieren von Daten Sofern Sie den gesamten Inhalt einer Tabelle ohne die Angabe von Abfragekriterien kopieren wollen, benDtigen Sie keine Tabellenerstellungsabfrage. Aktivieren Sie stattdessen mit der ?-Taste das Datenbankfenster und verwenden die Befehle Bearbeiten > Kopieren und Bearbeiten > Einf1gen, um eine bestehende Tabelle zu kopieren. Die Definition einer Tabellenerstellungsabfrage erfolgt in genau der gleichen Weise wie eine Auswahlabfrage. Der einzige Unterschied besteht darin, dass Access das Abfrageergebnis nicht als Dynaset, sondern als neue Tabelle zur Verf,gung stellt. Weiter unten in diesem Abschnitt finden Sie ein Beispiel, das diesen Umstand zur selektiven Archivierung von Datens!tzen nutzt.
Tipp
Tabellenerstellungsabfrage definieren
Der erste Schritt zu einer Tabellenerstellungsabfrage sollte immer eine Auswahlabfrage sein. F,gen Sie alle benDtigten Tabellen hinzu und definieren die Abfragekriterien. Sie kDnnen sogar Gruppierungen definieren und die Abfragefunktionen verwenden. Lassen Sie die Auswahlabfrage ausf,hren, um die Ergebnisse zu ,berpr,fen. F,hren Sie gegebenenfalls erforderliche Korrekturen durch. W!hlen Sie den Befehl Abfrage > Neue Tabelle erstellen erst aus, wenn die Auswahlabfrage einwandfrei funktioniert. Der Befehl wandelt sie in eine Tabellenerstellungsabfrage um. Access Dffnet dabei automatisch den Dialog zur Eingabe von Abfrageeigenschaften. Geben Sie zun!chst den Namen der zu erstellenden Tabelle ein. Wenn Sie eine bereits bestehende Tabelle ,berschreiben wollen, kDnnen Sie auch einen Namen aus dem Kombinationsfeld w!hlen. Access markiert standardm!ßig das Optionsfeld aktuelle Datenbank. Sie kDnnen alternativ auch das Optionsfeld andere Datenbank ausw!hlen und den Namen der Datenbank eingeben, in der Access die neue Tabelle erstellen soll.
Zieltabelle
Zieldatenbank
305
Abfragen
Klicken Sie auf OK, wenn Sie alle Einstellungen vorgenommen haben. Access schließt das Eigenschaftenfenster und f,hrt die Abfrage aus.
Abfrageeigenschaften
Abfrage ausf hren
Sie kDnnen die Abfrageeigenschaften sp!ter ,ber den Befehl Ansicht > Eigenschaften oder das Eigenschaften-Symbol einsehen. Sie haben so die MDglichkeit, die Zieltabelle und die Zieldatenbank nachtr!glich zu !ndern. Außerdem zeigt Access beim sp!teren Rffnen des Eigenschaftenfensters weitere Abfrageeigenschaften wie beispielsweise Spitzenwerte, Keine Duplikate und Ausf1hrungsberechtigungen an. Sofern Sie in den Abfrageeigenschaften eine Zieltabelle angegeben haben, die bereits existiert, zeigt Access eine Warnung an. Wenn Sie die Warnung mit Ja best!tigen, wird die Zieltabelle ,berschrieben. Mit Nein kDnnen Sie den Vorgang abbrechen. Access legt die neue Tabelle mit den Datenfeldern an, die das Abfrageergebnis beinhaltet. Außerdem f,gt es der Tabelle diejenigen Datens!tze hinzu, die den Abfragekriterien entsprechen. Sie kDnnen das Ergebnis kontrollieren, indem Sie die neue Tabelle in der Datenblattansicht Dffnen.
Hinweis
Access erstellt die neue Tabelle mit den gleichen Feldnamen, Felddatentypen und FeldgrDßen, wie sie auch f,r die Felder der Herkunftstabellen definiert sind. Weitere Eigenschaften, wie etwa Prim!r- und Sekund!rindizes, Anzeigeformate oder Feldbeschreibungen, werden jedoch nicht ,bernommen. Sie m,ssen diese Feldeigenschaften f,r die Zieltabelle erneut festlegen. Wenn Ihnen dieses Verfahren zu umst!ndlich ist, kDnnen Sie im Datenbankfenster zun!chst die Tabellenstruktur kopieren. Access stattet das Duplikat mit allen Eigenschaften der Ursprungstabelle aus. Verwenden Sie anschließend eine Anf,geabfrage (siehe unten), um die neue Tabelle mit Daten zu f,llen.
Beispiel: Projekte archivieren
Abfrage f r die Projektetabelle
Eine beliebte Anwendung f,r Tabellenerstellungsabfragen ist das Archivieren alter Datenbest!nde. Als Beispiel f,r diese Anwendung soll eine Abfrage erstellt werden, die alle Projekte des Vorjahres in eine Archivtabelle kopiert. Im Verlauf dieses Kapitels folgen weitere Beispielabfragen, mit denen Sie die archivierten Datens!tze lDschen, die Archivdateien erweitern und die archivierten Daten wieder in die Originaldatei zur,ckholen kDnnen. Erstellen Sie eine neue Abfrage und f,gen Sie die Projektetabelle hinzu. Um alle Datenfelder zu archivieren, ziehen Sie das Sternchen aus der Feldliste in das Entwurfsraster. Die Entscheidung, ob ein Projekt archiviert werden kann, soll anhand des Zahlungsdatums gef!llt werden. Sobald n!mlich der Zahlungseingang verbucht wurde, kann das Projekt als abgeschlossen eingestuft werden. Die Abfrage soll jedoch nur die Projekte archivieren, die !lter als ein Jahr sind.
306
Aktionsabfragen
Sie benDtigen f,r diese Abfrage eine Spalte, die nur die Jahreszahl des Zahlungsdatums enth!lt. Die LDsung des Problems liegt in einer neuen Spalte, f,r die Sie den folgenden Ausdruck eingeben:
Zahlungsjahr
Zahlungsjahr: Jahr([Ist Zahlung]) Der Name der neuen Spalte lautet also Zahlungsjahr. Der Ausdruck ermittelt die Jahreszahl aus dem Zahlungsdatum. Sie kDnnen dies leicht pr,fen, indem Sie die Abfrage einmal ausf,hren lassen. Das Kriterium f,r das Zahlungsjahr lautet: <=Jahr(Datum())-1 Dieser Ausdruck ermittelt die Jahreszahl aus dem Systemdatum und subtrahiert den Wert 1. Wenn das Systemdatum also beispielsweise 12.05.2001 lautet, so erscheinen im Abfrageergebnis nur die Projekte, die bis einschließlich 31.12.2000 abgeschlossen wurden. Sie kDnnen dies ,berpr,fen, indem Sie die Abfrage ausf,hren lassen. Da die Spalte Zahlungsjahr lediglich der Definition eines Abfragekriteriums dient und nicht mit archiviert werden muss, sollten Sie das Anzeigekriterium f,r diese Spalte lDschen. W!hlen Sie dann den Befehl Abfrage > Tabellenerstellungsabfrage aus der Men,leiste, um die Auswahl- in eine Aktualisierungsabfrage umzuwandeln. Klicken Sie auf das Eigenschaften-Symbol und geben Sie Projekte - Archivdatei als Tabellennamen ein.
Abb. 5.30 Projekte archivieren
307
Abfragen
Wenn Sie die Abfrage ausf,hren lassen, zeigt ein Dialog an, wie viele Datens!tze in die neue Tabelle kopiert werden. Best!tigen Sie die Meldung mit OK, so dass Access die Aktion startet. Als Ergebnis erhalten Sie die Tabelle Projekte – Archivdatei, die Sie zwecks Kontrolle einmal in der Datenblattansicht Dffnen sollten.
Hinweis
Das hier beschriebene Beispiel zur Datensicherung ist unvollst!ndig. Die beschriebene Abfrage ,berschreibt n!mlich eine mDglicherweise bereits existierende Archivdatei. Weiter unten in diesem Kapitel finden Sie eine Abfrage, mit der Sie die Archivdatei erweitern kDnnen. Außerdem finden Sie dort auch eine Abfrage, die die archivierten Projekte aus der urspr,nglichen Datei lDscht. Beachten Sie, dass das Beispiel auch mit diesen zus!tzlichen Abfragen noch nicht ganz vollst!ndig ist. Sie sollten die Archivdateien n!mlich zus!tzlich auf Diskette sichern. Kopieren Sie dazu entweder die gesamte Datenbank oder die Archivtabellen.
Tipp
Projekte und Adressen zusammenf hren
Bei Access 2.0 konnten Sie Tabellenerstellungsabfragen zur Datenarchivierung einfach und schnell mit dem Archivierungs-Assistenten entwerfen. Seit Access 97 fehlt dieser Assistent. Mit den Beispielen in diesem Kapitel kDnnen Sie sich jedoch selbst Abfragen zur Datenarchivierung entwerfen. Das zweite Beispiel soll die Verwendung einer Tabellenerstellungsabfrage zum Mischen von Tabellen zeigen. Das Mischen von Tabellen ist immer dann sinnvoll, wenn Sie die Daten mehrere Tabellen zusammenzuf,hren, um diese in Programmen weiterzuverwenden, die Tabellen nicht relational verkn,pfen kDnnen. Im konkreten Beispiel kDnnte die Anwendung so aussehen, dass Sie eine Kopie der Projekt- und der Adressdaten f,r den Export in ein anderes Datenformat benDtigen. Da Sie die Kopie der Daten vor dem Export mit den MDglichkeiten von Access auf die Bed,rfnisse der Zielanwendung zuschneiden wollen (z.B. indem Sie Umlaute entfernen), reicht in diesem Fall eine Auswahlabfrage nicht aus. Eine Auswahlabfrage w,rde n!mlich die Bearbeitung der Daten in den Ursprungstabellen erfordern und das ist nicht gew,nscht.
Beispiel
Zum Entwurf der Abfrage gehen Sie wie folgt vor:
308
1
Entwerfen Sie eine neue Auswahlabfrage.
2
F,gen Sie die Tabellen Adressen und Projekte hinzu.
3
Definieren Sie je nach den Erfordernissen Ihrer Anwendung eine Gleichheitsoder eine Inklusionsverkn,pfung zwischen den beiden Tabellen.
4
Ziehen Sie aus den Feldlisten beider Tabellen jeweils das Sternchen in das Entwurfsraster.
Aktionsabfragen
5
W!hlen Sie den Eintrag Tabellenerstellungsabfrage aus der Liste des Symbols Abfragetyp.
6
Geben Sie AdrUProj als Namen der neuen Tabelle ein.
7
Speichern Sie die Abfrage unter dem Namen Adressen und Projekte zusammenf1hren.
Pber einen Wechsel in die Datenblattansicht kDnnen Sie die Funktionsweise der Abfrage testen, bevor Sie sie ausf,hren. Im Fall einer Gleichheitsverkn,pfung enth!lt die Abfrage nur die Datens!tze, bei denen die verkn,pften Felder beider Tabellen gleich sind. Wenn Sie stattdessen alle Datens!tze der Adressen- oder der Projektetabelle benDtigen, sollten Sie zur,ck in die Entwurfsansicht wechseln und die Beziehung in eine Inklusionsverkn,pfung !ndern. Wenn Sie mit dem in der Datenblattansicht angezeigten Ergebnis zufrieden sind, kDnnen Sie die Abfrage starten. Wechseln Sie zur,ck in den Entwurfsansicht und klicken Sie dann auf das Symbol Ausf1hren. Access meldet daraufhin den Fehler, dass eine Tabelle nur ein AutoWert-Feld enthalten darf. Die Ursache f,r die Fehlermeldung besteht darin, dass sowohl die Adressen- als auch die Projektetabelle ein AutoWert-Feld enthalten. Um den Fehler zu beheben, m,ssen Sie eines der beiden AutoWert-Felder in ein Zahlenfeld umwandeln. Um beispielsweise das Feld [Projekt-Nr] in ein AutoWert-Feld zu !ndern, gehen Sie wie folgt vor: 1
Entfernen Sie die Spalte mit dem Sternchen aus der Projektetabelle.
2
F,hren Sie einen Doppelklick auf die Feldliste der Projektetabelle durch, um alle Felder zu markieren.
3
Ziehen Sie alle Felder in das Entwurfsraster.
4
0ndern Sie den Ausdruck in der Feld-Zeile f,r die Projektnummer von [ProjektNr] auf:
5
Projektnummer: ZLong([Projekt-Nr])
6
Da das Entwurfsraster bereits das Feld Adresse-Nr aus der Adressentabelle enth!lt, kDnnen Sie bei dieser Gelegenheit das aus der Projektetabelle stammende Feld Adresse-Nr aus dem Entwurfsraster entfernen.
7
Speichern Sie die ge!nderte Abfrage.
8
Starten Sie die Abfrage erneut.
Abfrage testen
Abfrage ausf hren
Fehler beheben
309
Abfragen
Jetzt f,hrt Access die Abfrage ohne Fehlermeldung aus. Der unter Punkt 4 genannte Ausdruck definiert ein berechnetes Feld namens Projektnummer. Mit der ZLong-Funktion wandeln Sie einen beliebigen Datentyp, hier also das AutoWertFeld, in ein Zahlenfeld der FeldgrDße Long Integer um. Mit einem Blick in die Entwurfsansicht der neuen Tabelle kDnnen Sie leicht feststellen, dass die neue Tabelle AdressenUndProjekte nur noch das eine AutoWert-Feld namens Adresse-Nr enth!lt. Nachdem Sie die neue Tabelle wunschgem!ß erstellt haben, kDnnen Sie die Daten unabh!ngig von der urspr,nglichen Adressen- und Projektetabelle bearbeiten, bevor Sie sie exportieren.
Aktualisierungsabfragen Tabellen automatisch aktualisieren
Mit Aktualisierungsabfragen kDnnen Sie 0nderungen an einer Gruppe von Datens!tzen vornehmen. Aktualisierungsabfragen eignen sich damit insbesondere f,r die Durchf,hrung gleichartiger 0nderungen an Datens!tzen, die sich ,ber eine Abfrage selektieren lassen.
Aktualisierungsabfrage entwerfen
Erstellen Sie zun!chst eine neue Abfrage und f,gen Sie die benDtigten Tabellen hinzu. W!hlen Sie dann den Befehl Abfrage > Aktualisierungsabfrage, oder klicken Sie auf das gleichnamige Symbol, um die Auswahlabfrage in eine Aktualisierungsabfrage umzuwandeln. Access f,gt dem Entwurfsbereich eine neue Zeile mit der Bezeichnung Aktualisieren hinzu. Ziehen Sie nun alle Datenfelder, deren Werte Sie !ndern wollen, in den Entwurfsbereich. Tragen Sie dann in die Aktualisieren-Zeile die neuen Werte f,r die Datenfelder ein. Definieren Sie gegebenenfalls Abfragekriterien, um die Menge der zu aktualisierenden Datenfelder einzuschr!nken. Wenn Sie die Aktualisierungsabfrage ausf,hren lassen, ersetzt Access die Felder des Entwurfsbereichs durch die neuen Werte aus der Aktualisieren-Zeile. Sie kDnnen in die Aktualisieren-Zeile beliebige Ausdr,cke eintragen. Besonders interessant sind nat,rlich Bez,ge auf Datenfelder derselben oder einer anderen Tabelle. H!ufig werden Sie in Aktualisierungsabfragen auch Funktionen wie Datum() und Zeit() verwenden. Die folgende Abbildung zeigt eine Aktualisierungsabfrage, die im Feld [Plan Faktor 1] der Projektetabelle f,r alle Datens!tze den Text Stunden durch Anzahl Stunden ersetzt. Gleichzeitig wird bei den ge!nderten Datens!tzen das 0nderungsdatum auf das aktuelle Tagesdatum gesetzt. Sie sollten beachten, dass sich bei Aktualisierungsabfragen in der Regel nachtr!glich nicht mehr feststellen l!sst, welche Datens!tze aktualisiert wurden und welche nicht. Sie sollten daher vorsichtshalber zun!chst in die Datenblattansicht wechseln, um die Wirkung der Aktualisierungsabfrage zu ,berpr,fen.
310
Aktionsabfragen
Abb. 5.31 Aktualisierungsabfrage
Access pr,ft beim Aktualisieren von Tabellen automatisch, ob die neuen Daten den Tabelleneigenschaften entsprechen. Sollte eine Aktualisierungsabfrage gegen bestehende Regeln verstoßen, zeigt Access eine Fehlermeldung an. Wenn Sie den Fehler mit OK best!tigen, f,hrt Access die Aktualisierung soweit wie mDglich durch. Sie m,ssen in diesem Fall jedoch davon ausgehen, dass nicht alle Datens!tze aktualisiert worden sind. Access unterbindet doppelte Werte in Datenfeldern, die als eindeutiger Schl,ssel definiert wurden. Außerdem werden in Prim!rschl,sselfeldern generell keine Nullwerte akzeptiert. Wenn eine Aktualisierungsabfrage gegen diese Regeln verstDßt, zeigt Access eine Fehlermeldung mit der Anzahl der Datens!tze an, die aufgrund doppelter Schl,ssel oder Nullwerten nicht ge!ndert werden. Die Ausdr,cke in der Aktualisieren-Zeile m,ssen den gleichen Felddatentyp haben wie die Datenfelder, in denen die Werte gespeichert werden sollen. So d,rfen Sie in Zahlenfelder nur Zahlenwerte einf,gen. Access f,hrt bei der Ausf,hrung von Aktualisierungsabfragen – anders als beim 0ndern von Tabellenstrukturen – keine automatische Datenkonvertierung durch. Wenn beim Aktualisieren Werte auftreten, die dem Datentyp eines Feldes nicht entsprechen, setzt Access automatisch Nullwerte ein. Die Fehlermeldung zu Beginn der Aktualisierung weist darauf hin, in wie viele Datenfelder Nullwerte eingef,gt werden.
Fehlerquellen bei Aktualisierungsabfragen
Schl sselfelder
Felddatentyp
Datenkonvertierung
Die einzige Ausnahme von dieser Regel bildet die Konvertierung zwischen Textund Memo-Feldern. Sie sollten jedoch bedenken, dass Access beim Einf,gen eines Memo-Textes in ein Textfeld ,bersch,ssige Zeichen abschneidet. Access zeigt keine Fehlermeldung an, die auf diesen Umstand hinweisen w,rde.
311
Abfragen
Abb. 5.32 Fehler in einer Aktualisierungsabfrage
G ltigkeitsregeln
Gesperrte Datens!tze
Beispiel: Tagesdatum einsetzen
Beim Aktualisieren einer Tabelle kontrolliert Access automatisch alle Eigenschaften. Dies betrifft insbesondere die G,ltigkeitsregeln. Sollten die einzuf,genden Daten den G,ltigkeitsregeln nicht entsprechen, unterbindet Access die 0nderung. Da dieser Fehler von den Inhalten der Herkunftstabelle abh!ngig ist, tritt er erst w!hrend der Aktualisierung auf. Sie sollten die Daten daher vor der Aktualisierung eingehend pr,fen. Definieren Sie gegebenenfalls ein Abfragekriterium, das der G,ltigkeitsregel entspricht. Eine weitere Ursache f,r das Misslingen einer Aktualisierung ist, dass Datens!tze von anderen Anwendern oder Applikationen gesperrt wurden. Wenn Access eine dahingehende Meldung anzeigt, sollten Sie die Aktualisierung abbrechen. Sie sollten die Tabelle dann vor der Aktualisierung sperren. Weitere Hinweise zum Sperren von Datens!tzen und Tabellen finden Sie in Kapitel 12 Access im Netzwerk dieses Buchs. Als erstes Beispiel entwerfen Sie eine Aktualisierungsabfrage, die das Anlagedatum aller Datens!tze der Adressentabelle auf das Tagesdatum initialisiert. Gehen Sie wie folgt vor: 1
Erstellen Sie eine neue Abfrage.
2
F,gen Sie die Adressentabelle hinzu.
3
W!hlen Sie den Befehl Abfrage > Aktualisierungsabfrage aus der Men,leiste, um die Auswahl- in eine Aktualisierungsabfrage umzuwandeln.
4
Ziehen Sie das Feld Anlagedatum in den Entwurfsbereich.
5
Geben Sie das Kriterium Ist Null f,r die Spalte Anlagedatum ein.
6
Tragen Sie in die Aktualisieren-Zeile der Spalte den Ausdruck Datum() als neuen Wert f,r die Datens!tze ein, deren Anlagedatum noch leer ist.
7
Speichern Sie die Abfrage unter dem Namen Anlagedatum setzen.
Bei einem probeweisen Wechsel in die Datenblattansicht zeigt Access alle Datens!tze an, bei denen das Anlagedatum noch leer ist. Das sind genau diejenigen Datens!tze, die aktualisiert werden sollen. 312
Aktionsabfragen
Wenn Sie die Abfrage ausf,hren lassen, zeigt Access zun!chst in einem Dialog an, wie viele Datens!tze aktualisiert werden. Best!tigen Sie den Dialog mit einem Klick auf die Schaltfl!che Ja, um die Aktualisierung durchf,hren zu lassen.
Abfrage ausf hren
Wenn Sie das Ergebnis kontrollieren wollen, dann Dffnen Sie die Adressentabelle in der Datenblattansicht, und betrachten Sie das Feld Anlagedatum. Sie werden feststellen, dass Access wie erwartet alle noch nicht gesetzten 0nderungsdaten auf das Systemdatum ge!ndert hat. Sie kDnnen die Abfrage probeweise erneut ausf,hren lassen. Access zeigt dann in einem Dialog an, dass keine Datens!tze ge!ndert werden. Das ist ein weiterer Hinweis darauf, dass Access das Abfragekritierium bei Aktualisierungsabfragen tats!chlich ber,cksichtigt. Als zweites Beispiel entwerfen Sie eine Abfrage, die mehrere Datenfelder aktualisiert. Diese Abfrage enth!lt die Besonderheit, dass hier zwei Kriterien Oder-verkn,pft werden. Zum Entwurf der Abfrage gehen Sie wie folgt vor: 1
Entwerfen Sie eine neue Abfrage.
2
F,gen Sie die Projektetabelle hinzu.
3
W!hlen Sie den Befehl Abfrage > Aktualisierungsabfrage aus der Men,leiste, um die Auswahl- in eine Aktualisierungsabfrage umzuwandeln.
4
Pbernehmen Sie die Felder Plan Faktor 1 Bezeichnung, Plan Faktor 2 Bezeichnung und Tnderungsdatum per Doppelklick aus der Feldliste in das Entwurfsraster.
5
Gestalten Sie das Entwurfsraster der Abfrage gem!ß Abbildung 5.33.
Mehrere Felder aktualisieren
Abb. 5.33 Diese Abfrage aktualisiert mehrere Datenfelder
Die Abfrage enth!lt das Kriterium Stunden f,r das Datenfeld Plan Faktor 1 Bezeichnung und zus!tzlich eine Oder-Verkn,pfung mit dem Kriterium Honorar f,r das Feld Plan Faktor 2 Bezeichnung.
Oder-Verkn pfung
313
Abfragen
Datenblattansicht
Mit einem Wechsel in die Datenblattansicht (siehe Abbildung 5.34) kDnnen Sie leicht feststellen, dass das Abfrageergebnis daher auch solche Datens!tze enthalten kann, bei denen das Feld Plan Faktor 1 Bezeichnung einen anderen Text enth!lt, als Sie in der Kriterium-Zeile angegeben haben. Dies funktioniert aber nur, wenn in dem jeweiligen Datensatz das Feld Plan Faktor 2 Bezeichnung den Text Honorar enth!lt. Dieser Zusammenhang gilt wegen der Oder-Verkn,pfung analog f,r das Feld Plan Faktor 1 Bezeichnung.
Abb. 5.34 Datenblattansicht der Abfrage aus Abbildung 5.33
Abfrage ausf hren
Und-Verkn pfung
Wenn Sie die Abfrage nun ausf,hren, aktualisiert Access alle Datens!tze, die eines der beiden angegebenen Kriterien erf,llen. Bei den Daten aus Abbildung 5.34 bedeutet dies, dass auch der Text Stunde in Stundensatz und der Text Honorarsatz in Honorar und das 0nderungsdatum auf das Tagesdatum ge!ndert wird. Bei der Oder-Verkn,pfung von Kriterien in Aktualisierungsabfragen m,ssen Sie daher damit rechnen, dass unter Umst!nden mehr Datens!tze ge!ndert werden, als dies bei der Angabe nur eines Kriteriums der Fall ist. Wenn Sie nur solche Datens!tze aktualisieren wollen, die beide Kriterien gleichzeitig erf,llen, m,ssen Sie die beiden Kriterien in eine Zeile eintragen. Die Und-Verkn,pfung bewirkt bei den Daten aus Abbildung 5.34, dass nur drei Datens!tze aktualisiert werden.
Anfgeabfragen Mit einer Anf,geabfrage kDnnen Sie Daten aus einer oder mehreren Tabellen extrahieren und diese an bereits existierende Tabellen anf,gen. Der wesentliche Unterschied zur Aktualisierungsabfrage besteht darin, dass eine Anf,geabfrage f,r jeden Datensatz aus dem Abfrageergebnis in der Zieltabelle einen neuen Datensatz anlegt. Anf,geabfragen eignen sich daher nicht, um bereits bestehende Datens!tze zu !ndern.
Hinweis
314
Wenn Sie Datens!tze an eine Tabelle anf,gen wollen und keine Abfragekriterien benDtigen, sollten Sie dazu das Datenbankfenster verwenden. Markieren Sie zun!chst die Tabelle, aus der die Daten gelesen werden sollen. W!hlen Sie dann nacheinander die Befehle Bearbeiten > Kopieren und Bearbeiten > Einf1gen, so dass
Aktionsabfragen
Access den Dialog Tabelle einf1gen als anzeigt. Geben Sie den Namen der Tabelle ein, an die die Daten angef,gt werden sollen, und markieren die Option Daten an vorhandene Tabelle anf1gen, bevor Sie mit OK best!tigen. Zum Entwurf einer Anf,geabfrage gehen Sie wie folgt vor: 1
Entwerfen Sie eine neue Auswahlabfrage.
2
F,gen Sie die Tabellen hinzu, aus denen Access Daten lesen soll.
3
W!hlen Sie den Befehl Abfrage > Anf1geabfrage aus der Men,leiste oder klicken Sie auf das gleichnamige Symbol.
Anf geabfrage entwerfen
Abb. 5.35 Geben Sie die Tabelle an, an der die Datens!tze hinzugef gt werden sollen
Access Dffnet dann automatisch den Dialog Anf1gen. W!hlen Sie aus dem Kombinationsfeld die Tabelle aus, der Datens!tze hinzugef,gt werden sollen. Sofern es sich um eine Tabelle in einer anderen Datenbank handelt, geben Sie zus!tzlich den Namen dieser Datenbank ein. Best!tigen Sie den Dialog mit OK. Im Entwurfsraster einer Anf,geabfrage finden Sie die Zeile Anf1gen an. Mithilfe dieser Zeile bestimmen Sie f,r jedes in der Feld-Zeile genanntes Herkunfts-Datenfeld das zugehDrige Ziel-Datenfeld. Mit der Kriterien-Zeile kDnnen Sie zus!tzlich Kriterien zur Selektion von Datens!tzen aus der Herkunftstabelle definieren.
Feld-, Anf3gen- und Kriterien-Zeile
Die Zellen der Anf1gen-Zeile sind Kombinationsfelder mit jeweils einer Auswahlliste der Datenfelder der Zieltabelle. Sofern die Bezeichnung der Herkunftsdatenfelder mit den Feldnamen der Zieltabelle ,bereinstimmt, ,bernimmt Access die Zuordnung automatisch. In diesem Fall finden Sie in der Feld- und in der Anf1gen-Zeile die gleichen Feldnamen. Beachten Sie jedoch, dass die Felder der Feld-Zeile aus der Herkunftstabelle und die Felder der Anf1gen-Zeile aus der Zieltabelle stammen. Sie kDnnen die Abfrageeigenschaften und damit die Zieltabelle auch nachtr!glich !ndern. W!hlen Sie einfach den Befehl Ansicht > Eigenschaften aus der Men,leiste oder klicken Sie auf das Eigenschaften-Symbol. Klicken Sie anschließend auf einen leeren Bereich des Abfragefensters.
Abfrageeigenschaften
315
Abfragen
Datenblattansicht
Bevor Sie eine Anf,geabfrage starten, sollten Sie zun!chst in die Datenblattansicht wechseln. Access zeigt hier die Datens!tze mit den Datenfeldern an, wie sie der Zieltabelle hinzugef,gt werden.
Abb. 5.36 Eigenschaften einer Anf geabfrage
Abb. 5.37 Anf geabfrage starten
Anf geabfrage starten
Alle Datenfelder
bertragen
Besonderheiten bei AutoWert-Feldern
316
Wenn Sie mit dem Ergebnis der Datenblattansicht zufrieden sind, kDnnen Sie die Anf,geabfrage durch einen Klick auf das gleichnamige Symbol starten. Access zeigt in einem Dialog an, wie viele Datens!tze angef,gt werden. Klicken Sie auf Ja, um die Aktion durchf,hren zu lassen. Mit einem Klick auf Nein kDnnen Sie den Vorgang auch abbrechen. Access ,bertr!gt die Datens!tze der Herkunfts- in die Zieltabelle, die Sie selektiert haben. Beachten Sie, dass dabei aber nur die Werte der Datenfelder ,bertragen werden, die Sie einem Zieldatenfeld zugeordnet haben. Wenn Sie alle Datenfelder einer Herkunftstabelle in die Zieltabelle ,bertragen wollen, dann verwenden Sie das Sternchen. Wenn sowohl die Herkunfts- als auch die Zieltabelle ein AutoWert-Feld enth!lt, m,ssen Sie beim Erstellen der Anf,geabfrage wissen, ob Sie die AutoWerte aus der Herkunftstabelle ,bernehmen wollen.
Aktionsabfragen
Ziehen Sie das AutoWert-Feld mit in den Entwurfsbereich, wenn Access die Numerierung aus der Herkunftstabelle ,bernehmen soll. Beachten Sie, dass Access das Duplizieren von AutoWert-Feldern durch Anf,geabfragen erlaubt. Es zeigt nur dann eine Fehlermeldung an, wenn das AutoWert-Feld als eindeutiger Prim!r- oder Sekund!rschl,ssel definiert wurde. Wenn Access den neuen Datens!tzen auch neue AutoWerte zuweisen soll, dann verzichten Sie auf das Ziehen des AutoWertFeldes in den Entwurfsbereich. Access pr,ft beim Anf,gen neuer Datens!tze an eine bereits bestehende Tabelle alle Eigenschaften der Zieltabelle. Es verhindert insbesondere Duplikate in eindeutigen Schl,sseln, unerlaubte Datenkonvertierungen und die Verletzung von G,ltigkeitsregeln. Mehr zu diesem Thema finden Sie in der Beschreibung von Aktualisierungsabfragen weiter oben in diesem Kapitel. Als Beispiel f,r eine Anf,geabfrage soll das in diesem Kapitel begonnene Beispiel zur Archivierung von Projekten fortgef,hrt werden. Sie entwerfen eine Anf,geabfrage, die veraltete Projekte ermittelt und diese an eine bereits bestehende Archivdatei anh!ngt. Diese Archivdatei kDnnte beispielsweise mit der weiter oben beschriebenen Tabellenerstellungsabfrage Projekte archivieren erstellt worden sein. Zum Entwurf der Abfrage gehen Sie wie folgt vor: 1
Erstellen Sie eine neue Abfrage.
2
F,gen Sie die Projektetabelle hinzu.
3
W!hlen Sie den Befehl Abfrage > Anf1geabfrage aus der Men,leiste.
4
W!hlen Sie im Dialog Anf1gen den Eintrag Projekte-Archivdatei als Zieltabelle aus dem Kombinationsfeld Tabellenname.
5
F,hren Sie einen Doppelklick auf die Titelzeile der Feldliste durch, um alle Felder zu markieren.
6
Ziehen Sie alle Felder der Projektetabelle in das Entwurfsraster.
Auch diese Abfrage soll nur die Projekte archivieren, die bis zum Vorjahr abgeschlossen wurden. Sie sollten daher das gleiche Abfragekriterium definieren wie in der Abfrage Projekte archivieren. F,gen Sie eine neue Spalte ein und geben in die Feld-Zeile den Ausdruck
Mgliche Fehlerquellen
Beispiel: Projekte nachtr!glich archivieren
Kriterium definieren
Zahlungsjahr: Jahr([Ist Zahlung]) ein. Definieren Sie f,r die Spalte zus!tzlich das Kriterium <=Jahr(Datum())-1 und achten Sie darauf, dass f,r diese Spalte die Zeile Anf1gen an leer bleibt. Sie erreichen damit, dass Access zwar das Kriterium der Spalte Zahlungsjahr zur Selektion von Datens!tzen aus der Projektetabelle heranzieht, das Feld aber gleichzeitig nicht in die Zieltabelle ,bertragen wird.
317
Abfragen
Abfrage starten
Speichern Sie die Abfrage unter dem Namen Projekte nachtr7glich archivieren, bevor Sie sie ausf,hren lassen. Access zeigt zun!chst in einem Dialog an, wie viele Datens!tze angef,gt werden. Klicken Sie auf Ja, um den Prozess zu starten. Access f,gt alle im Vorjahr abgeschlossenen Projekte an die Archivdatei an. Sie kDnnen dies leicht pr,fen, indem Sie die Datei Projekte – Archivdatei in der Datenblattansicht Dffnen. Als Fortf,hrung des Beispiels finden Sie weiter unten in diesem Abschnitt eine Abfrage, die alle archivierten Projekte lDscht.
L&schabfrage Alle Datens!tze lschen
Tabelle lschen
Einzelne Datens!tze lschen
Mit einer LDschabfrage kDnnen Sie eine Gruppe von Datens!tzen mit ,bereinstimmenden Kriterien lDschen. Wenn Sie alle Datens!tze einer Tabelle lDschen wollen, dann benDtigen Sie keine LDschabfrage. Rffnen Sie die Tabelle stattdessen in der Datenblattansicht und w!hlen die Befehle Bearbeiten > Alle Datens7tze markieren und Bearbeiten > L4schen aus der Men,leiste. Sofern Sie nicht nur die Datens!tze, sondern zus!tzlich auch die Tabellenstruktur lDschen wollen, markieren Sie den Tabellennamen im Datenbankfenster, und w!hlen Sie den Befehl Bearbeiten > L4schen aus der Men,leiste. Die Definition einer LDschabfrage lohnt sich nur, wenn Sie mehrere Datens!tze lDschen wollen, die gleiche Kriterien aufweisen. Wollen Sie nur einzelne Datens!tze lDschen, Dffnen Sie die Tabelle in der Datenblattansicht. Suchen Sie den gew,nschten Datensatz und w!hlen die Befehle Bearbeiten > Datensatz markieren und Bearbeiten > L4schen. Zum Entwurf einer LDschabfrage gehen Sie wie folgt vor:
Lschabfrage entwerfen
Kriterien definieren
318
1
Entwerfen Sie eine neue Abfrage.
2
F,gen Sie die Tabelle hinzu, in der Datens!tze gelDscht werden sollen.
3
W!hlen Sie den Befehl Abfrage > L4schabfrage aus der Men,leiste oder klicken Sie auf das gleichnamige Symbol, um die Auswahl- in eine LDschabfrage umzuwandeln.
4
Ziehen Sie das Sternchen aus der Feldauswahlliste in den Entwurfsbereich.
Das Sternchen markiert in LDschabfragen die Tabelle, in der gelDscht werden soll. Sofern Sie Kriterien definieren wollen, ziehen Sie weitere Felder der Tabelle in den Entwurfsbereich. W!hlen Sie f,r die entsprechenden Spalten den Eintrag Bedingung aus der Zeile L4schen.
Aktionsabfragen
Abb. 5.38 Lschabfrage mit Kriterien
Sie kDnnen der Abfrage auch weitere Tabellen hinzuf,gen. Achten Sie jedoch darauf, dass die Tabelle, in der gelDscht werden soll, stets editierbar bleiben muss. Sie darf daher in 1:n-Verkn,pfungen mit referenzieller Integrit!t und ohne LDschweitergabe nur als Detail- und nicht als Master-Tabelle eingesetzt werden. Ein Abschnitt weiter oben in diesem Kapitel erl!utert, wann die Datens!tze eines Dynasets editiert werden kDnnen. Die L4schen-Zeile kann zwei Werte annehmen. Die Spalte, in der Access den Wert Von anzeigt, bestimmt, in welcher Tabelle gelDscht werden soll. Access setzt diesen Wert automatisch f,r die Spalte ein, in der das Sternchen angezeigt wird. Alle anderen Spalten zeigen in der L4schen-Zeile den Wert Bedingung an. Sie kDnnen die Werte der L4schen-Zeile nicht !ndern. Jede LDschabfrage muss mindestens eine Spalte enthalten, die in der L4schen-Zeile den Wert Von anzeigt. Das bedeutet wiederum, dass Sie jeder LDschabfrage eine Spalte hinzuf,gen m,ssen, die das Sternchen aus der Tabelle enth!lt, in der gelDscht werden soll. Bevor Sie eine LDschabfrage ausf,hren, sollten Sie in die Datenblattansicht wechseln, um die Abfragekriterien zu ,berpr,fen. Wechseln Sie dann zur,ck in die Entwurfsansicht, um die Abfrage zu starten. Access zeigt in einem Dialog an, wie viele Datens!tze gelDscht werden. Erst wenn Sie diesen Dialog mit einem Klick auf die Schaltfl!che Ja best!tigen, wird das LDschen durchgef,hrt.
Tabellen verkn pfen
Die L-schen-Zeile
Hinweis
Lschabfrage starten
Pbrigens: Sie kDnnen das Sternchen auch als Hinweis darauf verstehen, dass LDschabfragen stets ganze Datens!tze lDschen. Wenn Sie nur einzelne Felder einer Tabelle lDschen wollen, dann erstellen Sie eine Aktualisierungsabfrage (siehe oben). Die Aktualisierungsabfrage kann die zu lDschenden Datenfelder dann durch Nullwerte ersetzen. Beachten Sie, dass Sie das LDschen von Datens!tzen nicht r,ckg!ngig machen kDnnen. Es ist daher unter Umst!nden sinnvoll, vor der Durchf,hrung einer LDschabfrage eine Sicherheitskopie der Tabelle anzufertigen, in der gelDscht wird.
Hinweis
319
Abfragen
Beispiel: Archivierte Projekte lschen
Sie finden in diesem Abschnitt zwei Beispiele f,r LDschabfragen. Das erste Beispiel basiert auf einer, das zweite Beispiel auf zwei Tabellen. Das erste Beispiel soll die Serie der Abfragen zum Archivieren von Projekten fortf,hren. Weiter oben in diesem Kapitel haben Sie Abfragen erstellt, die eine Archivdatei erstellen und sie mit Projekten auff,llen, die im Vorjahr abgeschlossen wurden. In diesem Abschnitt erstellen Sie nun die Abfrage, die die archivierten Datens!tze aus der Projektetabelle lDscht. Gehen Sie wie folgt vor: 1
Entwerfen Sie eine neue Abfrage.
2
F,gen Sie die Projektetabelle hinzu.
3
W!hlen Sie den Befehl Abfrage > L4schabfrage aus der Men,leiste oder kli-Æ!&xbj:6N0KKU,j:NKK0U,&Db0NK:3K,&_bj0N00 folgenden Ausdruck ein: Abschlussjahr: Jahr([Ist Zahlung]) Definieren Sie f,r diese Spalte zus!tzlich das folgende Kriterium: <=Jahr(Datum())-1
Kriterium definieren
Achten Sie darauf, dass die L4schen-Zeile f,r diese Spalte den Wert Beding Sie sollten sich die Wirkung des Kriteriums probeweise in der Datenblat ansehen. Access zeigt im Datenblatt alle Datens!tze an, die sp!ter gelDs den.
Die L4schen-Zeile zeigt f,r die Spalte Projekte.* automatisch den Wert Von LDschen wird also in der Projektetabelle durchgef,hrt. In der Spalte f,r d lungsjahr zeigt die L4schen-Zeile den Wert Bedingung an. Diese Spalte dien nur der Definition eines Abfragekriteriums. Datenblattansicht
Speichern Sie die Abfrage unter dem Namen Projekte – Archivierte l4sche Sie die Abfrage ausf,hren lassen, m,ssen Sie sicherstellen, dass alle alten bereits archiviert wurden.
Abfrage speichern
320
Im normalen Ablauf der Archivierung von Projekten sollten Sie die beiden A Projekte nachtr7glich archivieren und Projekte – Archivierte l4schen stets unm hintereinander ausf,hren lassen. Nur so ist sichergestellt, dass die Projek nach ihrer Archivierung gelDscht werden. Sie verhindern so, dass einige mehrfach in die Archivdatei geschrieben werden. Gleichzeitig werden nur jekte gelDscht, die unmittelbar zuvor archiviert wurden.
Aktionsabfragen
Abb. 5.39 Archivierte Projekte lschen
Ein weiteres Beispiel soll das Erstellen einer LDschabfrage f,r verkn,pfte Tabellen zeigen. Ziel der Abfrage ist das LDschen aller Projekte, die mit Ursula Meier abgewickelt wurden. Die Abfrage lDscht also in der Projektetabelle, das Abfragekriterium wird aber f,r ein Feld der Adressentabelle definiert.
Lschen in verkn pften Tabellen
Erstellen Sie eine neue LDschabfrage und f,gen Sie die Projekte- und die Adressentabelle hinzu. Definieren Sie eine Inklusionsverkn,pfung, die alle Datens!tze aus der Projektetabelle anzeigt. Die Projektetabelle fungiert folglich als Detailtabelle, w!hrend die Adressentabelle die Master-Tabelle bildet. Somit ist das LDschen in der Projektetabelle auch unabh!ngig von einer eventuell definierten referenziellen Integrit!t erlaubt. Ziehen Sie das Sternchen aus der Feldliste der Projektetabelle in den Entwurfsbereich. Da f,r die Spalten der Projektetabelle keine Abfragekriterien definiert werden, brauchen Sie keine weiteren Felder dieser Datei in den Entwurfsbereich zu ziehen. Das Abfragekriterium wird vielmehr anhand des Namens aus der Adressentabelle definiert. Ziehen Sie dieses Feld daher in den Entwurfsbereich und legen das Abfragekriterium "Ursula Meier" fest. Die L4schen-Zeile enth!lt damit den Wert Von f,r die Spalte Projekte.* und den Wert Bedingung f,r die Spalte Name. 321
Abfragen
Wenn Sie probeweise in die Datenblattansicht wechseln, zeigt das Dynaset nur die Projekte von Ursula Meier an. Voraussetzung daf,r ist nat,rlich, dass dieser Name ,berhaupt in der Adressentabelle existiert und dass ihm Projekte zugeordnet wurden.
Abb. 5.40 Diese Lschabfrage basiert auf zwei verkn pften Tabellen
Abfrage ausf hren
Wenn Sie die Abfrage ausf,hren lassen, lDscht Access alle Projekte, die mit dem Adressdatensatz von Ursula Meier verkn,pft sind. Ein Dialog zeigt zun!chst an, wie viele Datens!tze das sind. Erst wenn Sie mit Ja best!tigen, wird das LDschen auch tats!chlich durchgef,hrt.
Die SQL-Ansicht des Abfragefensters Ansicht > SQL
322
Die strukturierte Abfragesprache SQL (englisch: Structured Query Language) ist ein Standard zur Formulierung von Abfragen. Die meisten ernstzunehmenden Datenbanksysteme auf allen Rechnersystemen bieten eine MDglichkeit, Abfragen in SQL zu formulieren. Mit Access kDnnen Sie Abfragen wahlweise in SQL formulieren oder im Abfragefenster erstellen. Beide Verfahren lassen sich sogar kombinieren.
Die SQL-Ansicht des Abfragefensters
Der Befehl Ansicht > SQL oder ein Klick auf das gleichnamige Symbol zeigt die SQLAnsicht einer Abfrage an. Die SQL-Ansicht zeigt diejenige SQL-Anweisung an, die der Abfragedefinition entspricht. Die SQL-Ansicht und die Entwurfansicht einer Abfrage zeigen daher inhaltlich dieselbe Abfragedefinition an. Im Fall der SQL-Ansicht erfolgt die Anzeige in der strukturierten Abfragesprache und im Fall der Entwurfsansicht mit den Mitteln der grafischen Benutzeroberfl!che.
Abb. 5.41 Entwurfs- und SQL-Ansicht derselben Auswahlabfrage
Wenn Sie in der Entwurfsansicht 0nderungen an der Abfragedefinition vornehmen, aktualisiert Access automatisch die korrespondierende SQL-Anweisung. 0ndern Sie hingegen zuerst die SQL-Anweisung, aktualisiert Access automatisch die Einstellungen des Abfragefensters. Dieses Buch beschreibt die Abfragedefinition in der Entwurfsansicht. Wenn Sie die Abfragesprache SQL kennen, dann kDnnen Sie Abfragen auch direkt in dieser Sprache eingeben. Access kennt dar,ber hinaus drei Abfragetypen, die Sie nur ,ber SQL realisieren kDnnen: Union-, Pass-Through- und Datendefinitionsabfragen.
SQL-Anweisungen bearbeiten Wenn Sie das SQL-Fenster aufrufen, zeigt Access den Befehl an, der den bisherigen Einstellungen des Abfragefensters entspricht. Zum Editieren des SQL-Befehls kDnnen Sie die ,blichen Tastenkombinationen, die Befehle des Bearbeiten-Men,s, die Befehle des Kontextmen,s und die Maus verwenden. In dem Augenblick, in dem Sie wieder in die Entwurfs- oder Datenblattansicht wechseln, aktualisiert Access automatisch die Abfragedefinition.
323
Abfragen
SQL-Anweisungen verwenden SQL-Anweisungen spielen bei der Arbeit mit Access ein wichtige Rolle. Bei der Datenherkunft eines Formulars, eines Berichts und einiger Steuerelemente kDnnen Sie stets den Namen einer Abfrage oder eine SQL-Anweisung eingeben. Bei beiden Verfahren gibt es Vor- und Nachteile, auf die wir in Kapitel 6 Formulare eingehen. Weitere Anwendungsgebiete von SQL-Anweisungen finden sich im Bereich der Makro- und der Access-Basic-Programmierung. Obwohl SQL-Anweisungen bei Access eine wichtige Rolle spielen, brauchen Sie sich mit ihrer Syntax nicht auseinanderzusetzen. Wo immer Sie eine SQL-Anweisung eingeben kDnnen, haben Sie die MDglichkeit, ,ber das Editor-Symbol die Entwurfsansicht des Abfragefensters zu Dffnen. In der Entwurfsansicht kDnnen Sie dann die Abfrage gestalten und Access ,bernimmt das Ergebnis automatisch entweder als gespeicherte Abfrage oder als SQL-Anweisung. Eine SQL-Anweisung wird dabei nicht als eigenst!ndiges Objekt in der Datenbank, sondern direkt in der Datenherkunft-Eigenschaft eines Formulars oder eines Berichts oder in der Datensatzherkunft-Eigenschaft eines Steuerelements gespeichert.
Abfragen importieren SQL ist ein weit verbreiteter Standard. Mit etwas Gl,ck kDnnen Sie von diesem Standard beim Wechsel von einem anderen Datenbanksystem nach Access profitieren. Access ist n!mlich in der Lage, die meisten Datenformate zu lesen. Sie kDnnen Ihre bisherigen Tabellen daher relativ problemlos einbinden oder importieren (siehe Kapitel 10 Datenaustausch). Wenn Ihr bisheriges Datenbanksystem zus!tzlich mit einer MDglichkeit zur Anzeige einer Abfrage als SQL-Befehl ausgestattet ist, kDnnen Sie sogar Ihre Abfragen mit Access importieren. Notieren Sie sich die benDtigten SQL-Befehle auf einem Blatt Papier und geben sie in das SQL-Fenster von Access ein. Wenn Ihr altes Datenbanksystem kompatibel genug ist, kDnnen Sie den Prozess mit der Zwischenablage von Windows weiter vereinfachen. Speichern Sie die neue Abfrage mit Access und lassen sie probeweise ausf,hren. In den meisten F!llen werden Sie nur geringe Korrekturen vornehmen m,ssen.
Unterschiede in Access-SQL Der auff!lligste Unterschied zwischen dem SQL-Standard und der in Access implementierten Version ist das DistinctRow-Pr!dikat. Access f,gt dieses Pr!dikat vielen SELECT-Anweisungen hinzu. Wie Sie weiter oben in diesem Kapitel nachlesen kDnnen, h!ngt dieses Pr!dikat mit der Abfrageeigenschaft Eindeutige Datens7tze zusammen. Wenn Sie die Abfrageeigenschaft Eindeutige Datens7tze auf Nein einstellen, ist dies gleichbedeutend mit dem Entfernen des DistinctRow-Pr!dikates aus einer SQL-Anweisung.
324
Abfrage dokumentieren
Abfrage dokumentieren Unter der Dokumentation einer Abfrage versteht man eine Aufstellung aller Objekte einer Abfrage und deren Eigenschaften. Mit dem Ausdruck der Dokumentation erhalten Sie eine Pbersicht dessen, was Sie in der Entwurfsansicht der Abfrage eingestellt haben. Um eine Abfragedokumentation zu erstellen, gehen Sie wie folgt vor: 1
Schließen Sie die Abfragen, die Sie dokumentieren wollen.
2
W!hlen Sie den Befehl Extras > Analyse > Dokumentierer aus der Men,leiste, um den Datenbank-Dokumentierer von Access zu starten.
3
W!hlen Sie aus dem Kombinationsfeld Objekttyp den Eintrag Abfragen.
4
Kreuzen Sie die Abfragen an, die Sie dokumentieren wollen.
5
Klicken Sie gegebenenfalls auf die Schaltfl!che Optionen, um den Umfang der Dokumentation einzustellen.
6
Klicken Sie auf die Schaltfl!che OK.
Abfrage dokumentieren
Abb. 5.42 Der Datenbank-Dokumentierer von Access
Es dauert einen Moment, bis der Datenbank-Dokumentierer die benDtigten Informationen zusammengestellt hat. Dann Dffnet er einen Bericht mit der vollst!ndigen Dokumentation der Abfrage in der Seitenansicht. Sie kDnnen diesen Bericht nun drucken oder auf das Symbol Schließen klicken. Weitere Hinweise zum Datenbank-Dokumentierer von Access finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs.
325
Abfragen
Abb. 5.43 Seitenansicht einer Abfragedokumentation
Die PivotTable-Ansicht und die PivotChart-Ansicht Access XP weist zwei neue Ansichten auf: die PivotTable- und die PivotChart-Ansicht. Der Befehl Ansicht > PivotTable-Ansicht zeigt die PivotTable-Ansicht einer Abfrage an. Wie bei allen anderen Abfragetypen muss diese nat,rlich zun!chst definiert werden. Es muss mindestens ein Feld in der Abfragedefinition enthalten sein. Sinn macht eine Pivot-Tabelle aber erst, wenn meherere Felder enthalten sind, die sich sinnvoll kombinieren lassen. Wenn Sie z.B. der Adress-Nr. die zugehDrigen Projektnummern und Nettoertr!ge zuordnen wollen, dann Sie diese drei Felder in den Abfrageentwurf. Anschließend gehen Sie folgendermaßen vor:
326
1
W!hlen Sie den Befehl Ansicht > PivotTable-Ansicht
2
Aus der PivotTable-Feldliste ziehen Sie das Feld Adress-Nr. in die Zeile Spaltenfelder.
3
Aus der PivotTable-Feldliste ziehen Sie die restlichen beiden Felder in den Zeilenfelderbereich
Die PivotTable-Ansicht und die PivotChart-Ansicht
Abb. 5.44 Eine PivotTable-Ansicht kombiniert ...
Abb. 5.45 ... verschiedene Felder auf unterschiedliche Weise
Die Kombinationen kDnnen beliebig ge!ndert und korrigiert werden. 0hnlich funktioniert auch die PivotChart-Ansicht. Nach der Auswahl der Felder im Abfrageentwurf wird Ansicht > PivotChart-Ansicht angew!hlt und aus dem Fenster Feldliste werden die benDtigten Felder in den Chart-Bereich gezogen. Access setzt diese sofort in ein Diagramm um. Insofern ist darauf zu achten, dass nicht zu viele Felder in ein Diagramm gezogen werden. 327
Abfragen
Enth!lt ein Feld zu viele Werte, so kDnnen diese ,ber eine Schaltfl!che selektiert werden. Sie ist erkennbar an einem kleinen nach unten zeigenden Dreieck neben der Feldbezeichnung im Chartbereich.
Abb. 5.46 PivotChart lassen schnell ausgew!hlte grafische Darstellunge zu
Weitere Hinweise zu den PivotTabellen finden Sie in Kapitel 4 Tabellen und Kapitel 6 Formulare.
328
Formulare Warum Formulare? Formular entwerfen Mit Steuerelementen arbeiten Die Steuerelementtypen im Einzelnen Formularbereiche und -eigenschaften Formulare optimieren
330 331 344 361 416 425
6
Formulare
Gegenstand dieses Kapitels ist das Erstellen, das Gestalten und der Gebrauch von Formularen. Sie setzen die Assistenten von Access ein, um ansprechende Formulare praktisch automatisch erstellen zu lassen. Außerdem lernen Sie die Besonderheiten bei der Verwendung von Formularen kennen. Der grDßte Teil des Kapitels besch!ftigt sich jedoch mit der Gestaltung von Formularen. Sie statten Formulare mit allen MDglichkeiten der grafischen Bedienoberfl!che von Access aus. Das Spektrum reicht von einfachen grafischen Elementen wie beispielsweise Linien und Rechtecken bis hin zu Kontrollk!stchen, Kombinationsund Optionsfeldern.
Warum Formulare? Ergonomie
Grafiken und andere Objekte
Arbeitserleichterung
Eingabekontrollen
Die Antwort auf diese Frage ist einfach. Formulare bringen gegen,ber dem Datenblatt zus!tzlichen Nutzen. Die Arbeit mit einem optisch ansprechenden Formular macht mehr Spaß als mit einer schnDden Tabelle. Neben diesem eher subjektiven Nutzen haben Formulare auch zahlreiche objektive Vorteile. Formulare bieten die einzige MDglichkeit, Grafiken und OLE-Objekte auf dem Bildschirm anzuzeigen. Der wichtigste Vorteil von Formularen gegen,ber Datenbl!ttern besteht ohne Zweifel darin, dass Sie Formulare gestalten kDnnen. Sie kDnnen Steuerelemente fast beliebig postionieren und ihnen Farben, Schriften und Werte zuweisen. Mit Formularen lassen sich die im t!glichen Ablauf eines Unternehmens eingef,hrten Papierformulare 1:1 abbilden. Damit entf!llt der sonst ,bliche UmgewDhnungsprozess. Außerdem bieten Formulare sehr weitreichende Eingabehilfen und -kontrollen. Die Eingabehilfen sind Ihnen wahrscheinlich schon von der Arbeit mit Access bekannt. Optionsfelder, Kontrollk!stchen und Kombinationsfelder schließen Eingabefehler schlichtweg aus. Zu den Eingabekontrollen in Formularen z!hlen insbesondere G,ltigkeitsregeln. Die MDglichkeiten zur Bildung solcher Regeln gehen weit ,ber das hinaus, was Ihnen Access bei der Definition der Tabellenstruktur zu bieten hat. So kDnnen Sie in Formularen Makro- und Access-Basic-Programme zur Eingabepr,fung einsetzen.
Programmierung
Pber Ereignis-Eigenschaften kDnnen Sie Befehlsschaltfl!chen und andere Formularobjekte mit Makros und Access-Basic-Funktionen hinterlegen. Es gibt zahlreiche Varianten, Makros und Module mit Formularen zu kombinieren. Dies ist allerdings nicht Gegenstand dieses Buches. Sie kDnnen Formulare nicht nur zur Eingabe und Bearbeitung von Daten am Bildschirm einsetzen, sondern diese auch ausdrucken. Mit ein wenig Geschick lassen sich Ihre Formulare vielseitig verwenden. Das spart manchmal sogar das Erstellen von Berichten zum Ausdruck der Daten.
330
Formular entwerfen
Es gibt also gen,gend Gr,nde, sich mit Formularen zu besch!ftigen. Im weiteren Verlauf dieses Kapitels werden Sie zu der Erkenntnis gelangen, dass Access den hochgesteckten Anforderungen durchaus gerecht wird.
Formular entwerfen Mit Access verf,gen Sie ,ber mehrere MDglichkeiten zum Entwurf eines Formulars. Einige davon kennen Sie bereits aus dem ersten Teil dieses Buchs. So entwirft beispielsweise der Datenbank-Assistent automatisch die zu bestimmten Tabellen passenden Formulare. Mit weiteren Assistenten entwerfen Sie in wenigen Sekunden Formulare f,r Ihre eigenen Tabellen. Den besten Pberblick ,ber die MDglichkeiten zum Formularentwurf erhalten Sie, wenn Sie wie folgt vorgehen: Markieren Sie im Datenbankfenster das Register Formulare und klicken Sie auf die Schaltfl!che Neu oder w!hlen Sie den Befehl Einf1gen > Formular aus der Men,leiste.
Abb. 6.1 Neues Formular anlegen
Access Dffnet in beiden F!llen den Dialog Neues Formular, der eine Pbersicht der MDglichkeiten zum Formularentwurf enth!lt. Mit dem ersten Eintrag Entwurfsansicht beginnen Sie den manuellen Entwurf eines neuen Formulars. Die weiteren Abschnitte dieses Kapitels besch!ftigen sich vorwiegend mit dem manuellen Formularentwurf.
331
Formulare
Formular-Assistent
AutoFormulare
Diagramm-Assistent
Pivot-TabellenAssistent
Alternativ kDnnen Sie den Formularentwurf auch einem der Formular-Assistenten von Access ,berlassen. Der Eintrag Formular-Assistent bietet dabei noch die grDßte Flexibilit!t. Mit dem Formular-Assistenten kDnnen Sie Formulare entwerfen, die Daten aus einer oder mehreren Tabellen darstellen. Das Zusammenf,gen der Daten muss seit Access 97 im Unterschied zu Vorg!ngerversionen nicht unbedingt zuvor in einer Abfrage erfolgt sein. In den meisten F!llen erstellt der Formular-Assistent automatisch eine SQL-Anweisung, die Daten aus mehreren Tabellen zusammenfasst. Mit den AutoFormular-Assistenten kommen Sie am schnellsten zu einem Formular. Im Dialog Neues Formular gen,gt die Auswahl einer Tabelle oder Abfrage und ein Doppelklick auf einen der Eintr!ge AutoFormular: Einspaltig, AutoFormular: Tabellarisch, AutoFormular: Datenblatt, AutoFormular: PivotTable oder AutoFormat: PivotChart. Der Preis f,r den schnellen Formularentwurf besteht in der geringeren Flexibilit!t von AutoFormularen. Access setzt mit Ausnahme der Datenherkunft f,r alle Parameter Standardwerte ein. Der Diagramm-Assistent von Access eignet sich zur grafischen Aufbereitung von Daten aus der Tabelle oder Abfrage, die Sie im Dialog Neues Formular ausw!hlen. Sie finden die Beschreibung des Assistenten weiter unten in diesem Kapitel. Den Pivot-Tabellen-Assistenten von Access kDnnen Sie nutzen, wenn Sie kompakte Auswertungen Ihrer Daten haben wollen.
Ansichten eines Formulars Access kann ein Formular in der Entwurfs-, der Formular-, der Datenblatt- und in der Seitenansicht anzeigen. Der Wechsel zwischen den vier Ansichten erfolgt ,ber die Schaltfl!chen der Symbolleiste, die Befehle des Men,s Ansicht und den Befehl Datei > Seitenansicht.
Formularansicht
Datenblattansicht
332
In der Formularansicht zeigt Access das Formular mit Daten an. Sofern es vom Formular vorgesehen ist, kDnnen Sie auf verschiedene Datens!tze positionieren und die Daten im Formular bearbeiten. Die Formularansicht hat den Vorteil, dass hier auch grafische Objekte wie beispielsweise Bilder und Linien angezeigt werden. Die Datenblattansicht eines Formulars ist fast identisch mit der Datenblattansicht einer Tabelle oder Abfrage. Die Datenblattansicht eines Formulars hat jedoch einige Vorteile. In der Datenblattansicht sind n!mlich die Eigenschaften der Steuerelemente weiter aktiv. So werden auch in der Datenblattansicht G,ltigkeitsregeln gepr,ft und Formate angezeigt. Sofern Ihr Formular davon Gebrauch macht, kDnnen ,ber die Ereignis-Eigenschaften eines Steuerelements sogar Makros oder in VBA erstellte Funktionen aufgerufen werden. Access stellt in der Datenblattansicht eines Formulars einige Steuerelementtypen wie beispielsweise Optionsfelder und Befehlsschaltfl!chen nicht dar. Sie kDnnen diese grafischen Steuerelementtypen nur in einem der Datenblattansicht verwandten Ansicht anschauen. Sie m,ssen dazu die Formulareigenschaft Standardansicht auf Endlosformular !ndern. Weitere Hinweise zu Formulareigenschaften finden Sie weiter unten in diesem Kapitel.
Formular entwerfen
Access zeigt ein Formular in der Seitenansicht in der gleichen Form an, wie es gedruckt wird. Die Seitenansicht eignet sich daher gut zur Kontrolle des Formulars vor einem geplanten Ausdruck. Die Seitenansicht enth!lt statt der Symbolleiste einige Schaltfl!chen, mit deren Hilfe Sie die Seitenansicht steuern kDnnen. Weitere Hinweise zur Seitenansicht finden Sie in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs. In der Entwurfsansicht gestalten Sie Ihre Formulare. Sie kDnnen die mit den Assistenten erstellten Formulare weiter verfeinern oder auch neue Formulare anlegen. Access unterst,tzt Sie bei der Gestaltung von Formularen mit einer Reihe von Hilfsmitteln. Sie kDnnen diese Hilfsmittel auf Wunsch anzeigen lassen oder wieder ausblenden, wenn Sie sie nicht mehr benDtigen. Wenn Sie alle Hilfsmittel gleichzeitig anzeigen lassen, herrscht im Entwurfsfenster eine fast verwirrende Vielfalt.
Seitenansicht
Entwurfsansicht
Abb. 6.2 Einige Hilfsmittel zur Gestaltung von Formularen
Lassen Sie sich von der in Abbildung 6.2 gezeigten Vielfalt nicht abschrecken, schließlich benDtigen Sie nicht alle Hilfsmittel auf einmal. Die Gestaltung eines Formulars gliedert sich vielmehr in mehrere Arbeitsschritte. Sie benDtigen zun!chst nur einige elementare Hilfsmittel und diese auch nur teilweise. Weitere Einzelheiten der Hilfsmittel kDnnen Sie sich dann schrittweise erarbeiten. Einige Hilfsmittel benDtigen Sie nur in ganz speziellen F!llen oder sogar niemals. Es liegt also an Ihrem Anspruch, wie schnell Sie sich die MDglichkeiten zur Gestaltung von Formularen aneignen.
333
Formulare
Objektorientierte Philosophie Formularbereiche
Steuerelemente
Ein Formular kann aus einem oder mehreren Bereichen bestehen. Die typischen Bereiche sind der Formularkopf, der Formularfuß und der Detailbereich. Sie kDnnen in jedem dieser Bereiche so genannte Steuerelemente anordnen. Steuerelemente sind Objekte, die verschiedenste Inhalte haben kDnnen. So bestehen die meisten Formulare beispielsweise aus Steuerelementen zur Darstellung der Datenfelder der zugrunde liegenden Tabellen, Bezeichnungen dieser Datenfelder und Texten zur Beschriftung des Formulars. Andere Steuerelemente zeigen Kombinationsfelder, Optionsfelder oder Kontrollk!stchen an. Selbst einfache grafische Elemente wie Linien oder Rechtecke werden in Formularen als Steuerelemente definiert. Weiter unten in diesem Kapitel finden Sie unter der Pberschrift Steuerelemente einen Abschnitt, der die Handhabung von Steuerelementen beschreibt. Dieser Abschnitt verdeutlicht, dass die Techniken f,r das Verschieben, Verkleinern und VergrDßern f,r alle Steuerelemente die gleichen sind. Lediglich die Inhalte der Steuerelemente unterscheiden sich. Dieser Umstand ist eine Folge der objektorientierten Philosophie von Access. Steuerelemente sind Objekte, deren 0ußerlichkeiten stets die gleichen sind. Lediglich die Eigenschaften und die Arbeitsweise dieser Objekte unterscheiden sich.
Eigenschaften
Vorgehensweise zur Bearbeitung von Eigenschaften
Access verf,gt ,ber eine Reihe von Hilfsmitteln, mit denen Sie die Eigenschaften von Steuerelementen !ndern kDnnen. So l!sst sich beispielsweise mit Paletten die Farbgebung von Steuerelementen ver!ndern. Die Technik zur Anwendung dieser Hilfsmittel ist ebenfalls stets die gleiche. Sie markieren zun!chst ein Objekt und !ndern dann dessen Eigenschaften. Im so genannten Eigenschaftenfenster erhalten Sie eine Pbersicht aller Eigenschaften eines Formulars und kDnnen sie dort auch bearbeiten. Die Hilfsmittel und Eigenschaften beziehen sich stets auf das markierte Objekt. Ob Sie nun die Farbe einer Linie oder eines Kombinationsfeldes !ndern, die Vorgehensweise ist die gleiche. Wenn Sie die grunds!tzlichen Techniken zur Arbeit mit Steuerelementen und zur Verwendung der Hilfsmittel zu deren Bearbeitung erst einmal kennen gelernt haben, wird die Gestaltung von Formularen zum Kinderspiel.
Die Symbolleiste Symbolleiste Formularentwurf
334
Access zeigt im Formularfenster standardm!ßig zwei Symbolleisten an. Die Symbolleiste Formularentwurf enth!lt Schaltfl!chen, die im wesentlichen der Bearbeitung auf Formularebene dienen. Demgegen,ber enth!lt die Symbolleiste Formatierung (Formular/Bericht) Schaltfl!chen zur Bearbeitung von Steuerelementen und anderen Formularobjekten. Sie kDnnen die Namen der Symbolleisten einsehen, indem Sie sie von ihrer angestammten Position unterhalb der Men,leiste auf die Arbeitsfl!che ziehen.
Formular entwerfen
Einige der Symbole sind Ihnen bereits von anderen Fenstern her bekannt. Dazu z!hlen beispielsweise das Datenblatt- und das Editor-Symbol. Andere Symbole sind neu. Tabelle 6.1 enth!lt eine Pbersicht ,ber die Symbole des Formularentwurfs. Weiter unten in diesem Abschnitt finden Sie Tabelle 6.2, die eine Pbersicht der Symbolleiste zur Formatierung von Steuerelementen und anderen Formularobjekten enth!lt.
Symbolleiste im Formularentwurf
Symbol
Bedeutung Aktiviert die Formularansicht Speichert das Formular Druckt das Formular Aktiviert die Seitenansicht Pr,ft die Rechtschreibung von Texten (ist im Formularentwurf nicht verf,gbar) Verschiebt das markierte Element in die Zwischenablage Kopiert das markierte Element in die Zwischenablage F,gt den Inhalt der Zwischenablage ein Pbertr!gt die Formateigenschaften des markierten Steuerelements auf das Steuerelement, das Sie als N!chstes anklicken Macht die letzte 0nderung r,ckg!ngig F,gt einen Hyperlink ein Rffnet die Feldliste Rffnet die Toolbox Startet den AutoFormat-Assistenten Rffnet das Formularmodulfenster Rffnet das Eigenschaftenfenster 335
Formulare
Symbolleiste im Formularentwurf (Forts.)
Symbol
Bedeutung Rffnet den Feld-Editor Aktiviert das Datenbankfenster Entwirft ein neues Datenbankobjekt Startet den Office-Assistenten Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltlfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 6.1
Das Eigenschaftenfenster Eigenschaftenfenster
Das Eigenschaftenfenster zeigt die Eigenschaften des markierten Formulars, Formularbereichs oder Steuerelements an. Um das Eigenschaftenfenster zu Dffnen, haben Sie folgende MDglichkeiten: Klicken Sie auf das Eigenschaften-Symbol oder w!hlen Sie den Befehl Eigenschaften aus dem Kontextmen, eines Objekts oder w!hlen Sie den Befehl Ansicht > Eigenschaften aus der Men,leiste oder f,hren Sie einen Doppelklick auf ein Objekt durch. Sie kDnnen das Eigenschaftenfenster frei auf der Arbeitsfl!che verschieben, verkleinern oder vergrDßern. Das Eigenschaftenfenster ist sogar mit einer Titelzeile und einem eigenen Systemmen, ausgestattet. Die Titelzeile zeigt jeweils den Typ und den Namen des Steuerelements an, dessen Eigenschaften Sie gerade einsehen. Der Doppelklick auf das Systemmen, bietet eine Alternative zum Schließen des Eigenschaftenfensters mit dem Befehl Ansicht > Eigenschaften oder dem Klick auf das Eigenschaften-Symbol.
336
Formular entwerfen
Objekte formatieren Zum Formatieren von Objekten stellt Ihnen Access die Symbolleiste Formatierung (Formular/Bericht) zur Verf,gung. Diese Symbolleiste enth!lt Kombinationsfelder zur Auswahl von Objekten, Schriften, Schriftattributen, Absatzformatierungen, Farben, Rahmenbreiten und Spezialeffekten.
Symbolleiste Formatierung (Formular/Bericht)
Access blendet die Symbolleiste zum Formatieren von Objekten im Formular- und Berichtsentwurf automatisch ein. Sie kDnnen die Symbolleiste wie jede andere Symbolleiste aus ihrer angestammten Position unterhalb der Men,leiste lDsen, sie verschieben, aus- und einblenden. Das Ein- und Ausblenden der Symbolleiste kann alternativ ,ber das Kontextmen, oder den Men,befehl Ansicht > Symbolleisten erfolgen. Alle Funktionen dieser Symbolleiste stehen auch ,ber Men,befehle oder das Eigenschaftenfenster zur Verf,gung. Die Auswahl einer Funktion aus der Symbolleiste ist aber h!ufig die schnellere Alternative. Die Funktionen der Symbolleiste wirken sich stets auf ein markiertes Objekt oder eine Gruppe von markierten Objekten aus, wobei das Markieren eines Objekts alternativ auch ,ber das Kombinationsfeld Objekt erfolgen kann. Tabelle 6.2 enth!lt eine Pbersicht der Symbolleiste.
Objekte markieren
Symbolleiste zur Formatierung von Steuerelementen und anderen Formularobjekten
Symbol
Bedeutung Das Kombinationsfeld Objekt aktiviert ein Steuerelement oder ein anderes Formularobjekt 0ndert die Schriftart 0ndert die SchriftgrDße 0ndert in Fettschrift 0ndert in Kursivschrift Unterstreicht Text Richtet Text linksb,ndig aus Zentriert Text Richtet Text rechtsb,ndig aus 0ndert die F,ll-/Hintergrundfarbe 337
Formulare
Symbolleiste zur Formatierung von Steuerelementen und anderen Formularobjekten (Forts.)
Symbol
Bedeutung 0ndert die Schrift-/Vordergrundfarbe 0ndert die Linien-/Rahmenfarbe 0ndert die Linien-/Rahmenbreite 0ndert den Spezialeffekt Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7che hinzuf1gen oder entfernen angezeigt. Tabelle 6.2
Symbolleiste zur Formatierung von Steuerelementen und anderen Formularobjekten Paletten aus der Symbolleiste lsen
Abb. 6.3 Symbolleiste anpassen
338
Einige der Symbole kDnnen Sie nur dann ausw!hlen, wenn ein bestimmter Steuerelementtyp aktiviert ist. So ist die Auswahl der Symbole zur Textformatierung nur mDglich, wenn ein Steuerelement markiert ist, das Text enth!lt. Die Symbole zum 0ndern von F,ll-/Hintergrundfarben, Schrift-/Vordergrundfarben, Linien-/Rahmenfarben, Linien-/Rahmenbreiten und Spezialeffekten Dffnen jeweils eine Palette, mit der Sie die entsprechenden Einstellungen vornehmen kDnnen. Damit Sie nicht jedesmal auf ein Symbol klicken m,ssen, kDnnen Sie die Paletten aus der Symbolleiste lDsen. Klicken Sie dazu auf den grauen Balken der Palette und ziehen Sie sie mit der Maus auf die Arbeitsfl!che.
Formular entwerfen
Sie kDnnen die Symbolleiste zur Formatierung von Steuerelementen und anderen Objekten Ihrer individuellen Arbeitsweise anpassen und beispielsweise Symbole zum Ausrichten von Steuerelementen hinzuf,gen. Gehen Sie dazu wie folgt vor: 1
Klicken Sie mit der rechten Maustaste auf die Symbolleiste.
2
W!hlen Sie den Befehl Anpassen aus dem Kontextmen,.
3
Markieren Sie auf der Registerkarte Befehle die Kategorie Formular-/Berichtdesign.
4
Ziehen Sie die gew,nschten Befehle in die Symbolleiste Formularentwurf.
Weitere Hinweise zur Handhabung und Konfiguration von Symbolleisten finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs unter den Pberschriften Men1- und Symbolleisten verwenden und Men1- und Symbolleisten anpassen.
Tipp
Hinweis
Die Feldliste Die Feldliste zeigt eine Auswahlliste aller Datenfelder der Tabelle oder Abfrage an, auf der das Formular basiert. Wenn Sie ein leeres Formular erstellt und keine zugrunde liegende Tabelle oder Abfrage ausgew!hlt haben, ist die Feldliste leer. In diesem Fall m,ssen Sie zun!chst die Formulareigenschaft Datenherkunft definieren.
Abb. 6.4 Steuerelemente mit der Feldliste entwerfen
339
Formulare
Steuerelemente
ber die Feldliste erstellen
Feldliste einblenden
Die Feldliste erleichtert das Positionieren von Steuerelementen, die die Inhalte von Datenfeldern anzeigen. Wenn Sie n!mlich einen Eintrag aus der Feldliste auf die Arbeitsfl!che ziehen, erstellt Access automatisch ein Steuerelement und verbindet es mit dem Datenfeld. Sie brauchen dann nur noch die Beschriftung und bei Bedarf einige andere Eigenschaften des Steuerelements anzupassen. Der Befehl Ansicht > Feldliste blendet die Feldliste wechselweise ein und aus. Statt der Auswahl des Befehls kDnnen Sie auch auf das Feldlisten-Symbol klicken. Access zeigt die Feldliste in einem Fenster an, das Sie frei auf der Arbeitsfl!che verschieben, verkleinern und vergrDßern kDnnen. Die Titelzeile des Fensters enth!lt den Namen der zugrunde liegenden Tabelle oder Abfrage. Mit einem Doppelklick auf die Titelleiste der Feldliste markieren Sie alle Felder. Mit der H- und der S-Taste kDnnen Sie eine Gruppe von Feldern markieren, um diese auf die Arbeitsfl!che zu ziehen.
Tipp
Vererbung von Eigenschaften
Wenn das Feldlistenfenster zur Anzeige aller Datenfelder zu klein ist, erg!nzt Access automatisch eine vertikale Rollleiste. Wenn Sie das Fenster durch Ziehen der rechten unteren Ecke vergrDßern, kann Access in der Liste mehr Felder anzeigen. Das f,hrt zu einem besseren Pberblick. Beim Entwurf eines Textfeldes ,ber die Feldliste kopiert Access die Feldeigenschaften Format, Dezimalstellen, Eingabeformat und Beschreibung aus den Tabelleneigenschaften in die korrespondierenden Eigenschaften des entstehenden Steuerelements. Die Feldeigenschaft Beschreibung wird dabei in die Steuerelementeigenschaft Statuszeilentext kopiert. Beachten Sie, dass die Werte anderer Feldeigenschaften wie beispielsweise G1ltigkeitsregel und G1ltigkeitsmeldung in Formularen weiterhin gelten, obwohl sie nicht kopiert werden. Beim Entwurf eines Kombinations- oder Listenfeldes werden alle Feldeigenschaften aus der Registerkarte Allgemein (also Feldgr4ße, Format, Dezimalstellen usw.) sowie die Eigenschaft Beschreibung (in Statuszeilentext) kopiert. Beim Entwurf von Kontrollk!stchen, Optionsfeldern, Optionsgruppen, Umschaltfl!chen und gebundenen Objektfeldern ,ber die Feldliste kopiert Access nur die Feldeigenschaft Beschreibung in die Steuerelementeigenschaft Statuszeilentext. Es gibt andere Feldeigenschaften wie beispielsweise G1ltigkeitsregel, G1ltigkeitsmeldung und Standardwert, die Access zwar nicht in die Steuerelementeigenschaften kopiert, die dort aber weiterhin gelten. Wenn Sie f,r die Steuerelementeigenschaft G1ltigkeitsregel einen neuen Ausdruck eingeben, dann pr,ft Access die G,ltigkeitsregel aus der Feld- und aus der Steuerelementeigenschaft. Wenn Sie f,r die Steuerelementeigenschaft Standardwert einen neuen Ausdruck eingeben, dann ber,cksichtigt Access den Standardwert aus der Steuerelementeigenschaft so lange exklusiv, wie das Formular geDffnet ist.
340
Formular entwerfen
Die Toolbox Mit der Toolbox entwerfen Sie neue Steuerelemente. Sie w!hlen zun!chst einen Steuerelementtyp aus der Toolbox aus und klicken dann auf die Arbeitsfl!che. Access erstellt ein neues Steuerelement des entsprechenden Typs. Anschließend spezifizieren Sie die Eigenschaften des Steuerelements und legen beispielsweise die Datenherkunft fest. Die Ansicht der Toolbox erfolgt ,ber den Befehl Ansicht > Toolbox. Sie kDnnen das Toolbox-Fenster auf der Arbeitsfl!che verschieben, es vergrDßern und verkleinern. Der Doppelklick auf das Systemmen, zum Schließen der Toolbox ist eine Alternative zur erneuten Auswahl des Befehls Ansicht > Toolbox. Tabelle 6.3 enth!lt eine Pbersicht ,ber die Symbole der Toolbox.
Toolbox einblenden
Die Symbole der Toolbox
Symbol Assistent
Bedeutung
Nein
Bearbeitet Steuerelemente
Nein
Schaltet die Steuerelement-Assistenten ein oder aus
Nein
Erstellt ein Bezeichnungsfeld
Nein
Erstellt ein Textfeld
Ja
Erstellt eine Optionsgruppe
Nein
Erstellt eine Umschaltfl!che
Nein
Erstellt ein Optionsfeld
Nein
Erstellt ein Kontrollk!stchen
Ja
Erstellt ein Kombinationsfeld
Ja
Erstellt ein Listenfeld
Ja
Erstellt eine Befehlsschaltfl!che
Rffnet den Dialog Grafik einf1gen
Erstellt ein Bild
341
Formulare
Die Symbole der Toolbox (Forts.)
Symbol Assistent
Bedeutung
Rffnet den Dialog Grafik einf1gen
Erstellt ein Objektfeld
Nein
Erstellt ein gebundenes Objektfeld
Nein
F,gt einen Seitenwechsel ein
Nein
Erstellt ein Register-Steuerelement
Ja
Erstellt ein/en Unterformular oder -bericht
Nein
Erstellt eine Linie
Nein
Erstellt ein Rechteck
Nein
Rffnet die Liste der registrierten Active-Steuerelemente Zeigt weitere Schaltfl!chen an. Sind keine weiteren Schaltfl!chen aktiviert, wird nur die Option Schaltfl7chen hinzuf1gen oder entfernen angezeigt. Tabelle 6.3
Mauszeiger
Access markiert standardm!ßig den Mauszeiger in der Toolbox. Dieses Tool erstellt keine neuen Steuerelemente, sondern ermDglicht vielmehr das Markieren und Bearbeiten bestehender Steuerelemente.
SteuerelementAssistenten
Access startet beim Erstellen neuer Optionsgruppen, Kombinationsfelder, Listenfelder, Diagramme, Befehlsschaltfl!chen, Unterformulare und Unterberichte ,ber die Toolbox automatisch so genannte Steuerelement-Assistenten. Wenn Sie beispielsweise das Befehlsschaltfl7chen-Symbol markieren und auf der Arbeitsfl!che klicken, startet Access den Befehlsschaltfl!chen-Assistenten. Die Funktionsweise der Steuerelement-Assistenten stimmt mit der von Tabellen-, Abfrage-, Formular- und Berichts-Assistenten ,berein und braucht daher nicht weiter erl!utert zu werden. Weitere Hinweise zu den Besonderheiten der Steuerelementtypen finden Sie weiter unten in diesem Kapitel.
Tipp 342
Sie kDnnen die Steuerelement-Assistenten durch einen Klick auf das gleichnamige Symbol der Toolbox wechselweise aktivieren und deaktivieren. Wenn Sie die Steuerelement-Assistenten deaktivieren, dann kDnnen Sie beispielsweise Kombinationsfelder direkt ,ber das Eigenschaftenfenster definieren.
Formular entwerfen
Bei fr,heren Programmversionen von Access finden Sie in der Toolbox ein Symbol zum Aufruf des Diagramm-Assistenten, mit dem Sie Ihre Daten grafisch aufbereiten kDnnen. Ab Access 97 erfolgt der Aufruf des Diagramm-Assistenten ,ber den Dialog Neues Formular oder den Befehl Einf1gen > Diagramm. Im Einf1gen-Men, finden Sie dar,ber hinaus Befehle zum Einf,gen von Seitenzahlen, Datum, Zeit, Bildern, Objekten und Zusatzsteuerelementen. Wenn Sie den Diagramm-Assistenten h!ufig benDtigen, dann f,gen Sie ihn doch einfach der Symbolleiste Toolbox hinzu. Im Dialog Anpassen einer Symbolleiste finden Sie den Befehl Diagramm in der Kategorie Toolbox. Weitere Hinweise zur Handhabung und Konfiguration von Symbolleisten finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs unter den Pberschriften Men1- und Symbolleisten verwenden und Men1- und Symbolleisten anpassen.
Diagramm-Assistent
Hinweis
Formulare speichern und schließen Das Speichern eines Formulars erfolgt ,ber die Befehle Datei > Speichern oder Datei > Speichern unter. Die Regeln zur Bildung von Formularnamen sind die gleichen wie zur Bildung aller anderen Namen (siehe Stichwort Namenskonventionen). Wenn Sie ein Formularfenster schließen, fragt Access automatisch, ob es noch nicht gespeicherte 0nderungen speichern soll. Falls Sie die Frage mit Ja beantworten, speichert Access die 0nderungen unter dem Namen des Formulars. Sofern Sie noch keinen Namen festgelegt haben, fordert Sie ein entsprechender Dialog auf, dies nachzuholen. Sie kDnnen ein Formular aus der Formular-, Datenblatt-, Entwurfs- oder Seitenansicht speichern. Das Speichern des Formulars f,hrt stets nur zum Speichern der Formulardefinition sowie der Ausdehnung und Position des Formularfensters. Die im Formular dargestellten Daten aus den zugrunde liegenden Tabellen oder Abfragen werden nicht mit im Formular gespeichert. So ist sichergestellt, dass das Formular stets die aktuellen Daten anzeigt.
Tipp
Formulare umbenennen, kopieren und l&schen Das Umbenennen, Kopieren und LDschen von Formularen erfolgt im Datenbankfenster von Access. Markieren Sie zun!chst das Register Formulare und dann den Namen eines Formulars. Die Befehle zum Umbenennen und LDschen eines Formulars kDnnen Sie direkt aus dem mit der rechten Maustaste zu Dffnenden Kontextmen, ausw!hlen. Das Umbennen kDnnen Sie alternativ auch durch einen weiteren Klick auf den Formularnamen erreichen. Wenn Access die Einf,gemarke anzeigt, !ndern Sie den Formularnamen mit den unter Windows ,blichen Tasten. Um ein Formular zu kopieren, w!hlen Sie zun!chst den Befehl Kopieren und dann den Befehl Einf1gen aus dem Kontextmen,. Die folgenden Ausf,hrungen beschreiben das Umbennen, Kopieren und LDschen von Formularen ,ber die Befehle der Men,leiste. 343
Formulare
Formular umbenennen
Formulare kopieren und lschen
Der Befehl Bearbeiten > Umbenennen gibt dem Formular einen neuen Namen. Das Umbenennen eines Formulars kann zu Problemen f,hren, wenn es von einem anderen Formular als Unterformular verwendet wird. Sie m,ssen den Formularnamen dann auch in den Eigenschaften des Hauptformulars !ndern. Das Kopieren und LDschen von Formularen erfolgt ,ber die Befehle des BearbeitenMen,s. Die Vorgehensweise ist die gleiche wie beim Kopieren und LDschen von Tabellen und Abfragen.
Mit Steuerelementen arbeiten Steuerelemente
Bei Formularen spielt sich alles in Steuerelementen ab. Steuerelemente stellen die Daten aus den zugrunde liegenden Tabellen und Abfragen eines Formulars dar. Beispiele f,r Steuerelemente sind Bezeichnungsfelder, Textfelder, Kombinationsfelder, Optionsfelder und Befehlsschaltfl!chen. Selbst einfache grafische Elemente wie beispielweise Linien und Rechtecke sind Steuerelemente. Die Definition eines Steuerelements erfolgt nach dem folgenden Schema: 1
Sie markieren ein Symbol in der Toolbox.
2
Sie klicken an der Position der Arbeitsfl!che, an der Access das Steuerelement erstellen soll.
3
Access erstellt das Steuerelement und setzt f,r die Eigenschaften Standardwerte ein.
4
Sie ver!ndern die Eigenschaften des Steuerelements gem!ß den Erfordernissen Ihrer Anwendung.
Zu diesem prinzipiellen Schema gibt es einige Alternativen, die in den folgenden Abschnitten beschrieben werden. So kDnnen Sie Steuerelemente beispielsweise auch ,ber die Feldliste erstellen.
Eigenschaften
Die folgenden Abschnitte beschreiben die Arbeit mit Steuerelementen und die Hilfsmittel zum Ver!ndern der Eigenschaften. Wenn Sie ein Steuerelement beispielsweise verschieben, dann ver!ndern Sie implizit die Eigenschaften Links und Oben. Dar,ber hinaus gibt es zahlreiche Eigenschaften, zu deren Bearbeitung keine Hilfsmittel existieren und die daher direkt ,ber das Eigenschaftenfenster ver!ndert werden.
344
Mit Steuerelementen arbeiten
Steuerelemente markieren Bevor Sie mit Steuerelementen arbeiten kDnnen, m,ssen Sie sie zun!chst markieren. Wenn Sie ein einzelnes Steuerelement markieren wollen, dann klicken Sie es einfach mit der linken Maustaste an.
Einzelnes Steuerelement markieren
Sie erkennen ein markiertes Steuerelement an der Darstellung von symbolisierten Griffen entlang der Objektbegrenzung. Es handelt sich dabei um so genannte Ziehpunkte, mit denen Sie auch die GrDße und Position des Steuerelements !ndern kDnnen. Eine zusammenh!ngende Gruppe von Steuerelementen l!sst sich markieren, indem Sie mit der Maus einen Rahmen aufziehen. Wenn Sie die linke Maustaste loslasten, markiert Access automatisch alle Steuerelemente, die den Rahmen an diner beliebigen Stelle kreuzen, sowie alle Steuerelemente, die innerhalb des Rahmens liegen.
Gruppe von zusammen liegenden Steuerelementen markieren
Wenn Sie w,nschen, dass Access nur diejenigen Objekte markiert, die vollst!ndig innerhalb des aufgezogenen Rahmens liegen, dann m,ssen Sie die entsprechende Option !ndern. W!hlen Sie dazu den Befehl Extras > Optionen, und markieren Sie das Register Formulare/Berichte. 0ndern Sie dann die Option Markierungsverhalten auf Voll eingerahmt. Sie kDnnen eine Gruppe von Steuerelementen auch ,ber die Lineale markieren. Wenn Sie auf dem horizontalen oder vertikalen Lineal einen Bereich aufziehen, markiert Access alle in diesem Bereich liegenden Steuerelemente. Wenn Sie eine Gruppe von Steuerelementen markieren wollen, die nicht zusammenh!ngen, dann klicken Sie auf die Steuerelemente, w!hrend Sie die H-Taste gedr,ckt halten. Mithilfe dieser Technik kDnnen Sie auch einzelne Steuerelemente zu einer Gruppe hinzuf,gen oder aus ihr entfernen. Klicken Sie auf einen leeren Bereich der Arbeitsfl!che, um die Markierung von Steuerelementen wieder aufzuheben. Sie kDnnen auch direkt auf ein anderes Steuerelement klicken, um es zu markieren und gleichzeitig alle bestehenden Markierungen aufzuheben.
Gruppe von Steuerelementen ber die Lineale markieren Einzelne Steuerelemente zu einer Gruppe hinzuf gen
Markierung aufheben
Steuerelemente verschieben Bevor Sie ein Steuerelement verschieben kDnnen, m,ssen Sie es zun!chst markieren. Positionieren Sie dann den Mauszeiger auf eine der Begrenzungslinien zwischen den Ziehpunkten, bis sich der Mauszeiger in eine stilisierte Hand !ndert. Ziehen Sie das Steuerelement dann bei festgehaltener linker Maustaste an die neue Position. Wenn Sie zuvor eine Gruppe von Steuerelementen markieren, kDnnen Sie alle markierten Steuerelemente gleichzeitig verschieben.
345
Formulare
Steuerelement und Beschriftung getrennt verschieben
Die meisten Steuerelemente eines Formulars bestehen aus dem eigentlichen Steuerelement und einer Beschriftung. Die weiter oben beschriebene Technik verschiebt das Steuerelement und seine Beschriftung gemeinsam. Sie kDnnen beide Elemente jedoch auch getrennt verschieben.
Abb. 6.5 Mit diesem Ziehpunkt verschieben Sie Beschriftung und Steuerelement getrennt voneinander
Ziehpunkt
Access zeigt den Ziehpunkt in der linken oberen Ecke eines Steuerelements hervorgehoben an. Dieser Ziehpunkt ist etwas grDßer als die anderen. Positionieren Sie den Mauszeiger auf den Ziehpunkt, bis er sich in eine stilisierte zeigende Hand !ndert. Verschieben Sie dann entweder das Steuerelement oder seine Beschriftung. Access sieht keine MDglichkeit vor, bei einer Gruppe von markierten Steuerelementen nur die Gruppe der Beschriftungen oder die Gruppe der Steuerelemente getrennt zu verschieben. Hier helfen Ihnen jedoch vielleicht die Befehle zum Ausrichten von Steuerelementen weiter. Wenn Sie den Mauszeiger anschließend wieder auf eine Position zwischen den Ziehpunkten positionieren, so dass er sich in eine stilisierte Hand !ndert, kDnnen Sie das Steuerelement und seine Beschriftung wieder gemeinsam verschieben. Die Lage des Steuerelements zu der Beschriftung !ndert sich dabei nicht.
Verschieben r ckg!ngig machen
Hinweis
Steuerelemente aneinander ausrichten
346
Der Befehl Bearbeiten > R1ckg7ngig macht das Verschieben von Steuerelementen r,ckg!ngig. Dieser Befehl ist daher besonders praktisch, wenn eine Gruppe von vielen Steuerelementen versehentlich verschoben wurde. Wenn Sie ein Steuerelement nur horizontal oder vertikal verschieben wollen, dann halten Sie die H-Taste gedr,ckt, bevor Sie die linke Maustaste bet!tigen. Bis Sie die linke Maustaste wieder loslassen, kDnnen Sie das Steuerelement dann nur noch in die Richtung verschieben, die Sie zuerst gew!hlt haben. Die Anwendung dieser Technik verhindert das versehentliche Verschieben in eine nicht gew,nschte Richtung. Mithilfe der Unterpunkte des Befehls Format > Ausrichten kDnnen Sie mehrere Steuerelemente aneinander ausrichten lassen. Der Befehl Format > Ausrichten > Linksb1ndig richtet alle markierten Steuerelemente am linken Rand des am weitesten links angeordneten Steuerelements aus. Der Befehl Format > Ausrichten > Rechtsb1ndig richtet alle markierten Steuerelemente am rechten Rand des am weitesten rechts angeordneten Steuerelements aus. Die beiden Befehle Format > Ausrichten > Nach oben und Format > Ausrichten > Nach unten richten die Objekte am weitesten oben bzw. unten angeordneten Steuerelement aus.
Mit Steuerelementen arbeiten
Pber die Auswahl des Befehls Anpassen aus dem Kontextmen, kDnnen Sie einer Symbolleiste weitere Schaltfl!chen zum Ausrichten von Steuerelementen hinzuf,gen. Der Abschnitt Objekte formatieren weiter oben in diesem Kapitel enth!lt weitere Hinweise zu diesem Thema. Sie kDnnen eine Gruppe von Steuerelementen und Beschriftungen auch getrennt verschieben. Normalerweise f,hrt das Markieren eines Steuerelements automatisch auch zur Markierung seiner Beschriftung. Es gibt dennoch einen Unterschied.
Tipp
Steuerelemente und Beschriftungen getrennt ausrichten
Abb. 6.6 Bei dieser Markierung werden nur die Textfelder ausgerichtet
Wenn Sie n!mlich ein Steuerelement markieren, indem Sie es anklicken, zeigt Access die Ziehpunkte nur entlang seiner Objektgrenzen an. F,r die Beschriftung wird nur der hervorgehobene Ziehpunkt zum Verschieben derselben angezeigt. Wenn Sie bei festgehaltener H-Taste erneut auf die Beschriftung klicken, zeigt Access f,r beide Elemente alle Ziehpunkte an. Sie kDnnen diesen Umstand zum Ausrichten von Elementen nutzen. Der Befehl Format > Ausrichten richtet n!mlich nur die Elemente aus, die mit allen Ziehpunkten angezeigt werden. So kDnnen Sie beispielsweise zun!chst die Steuerelemente linksund dann die Beschriftungen rechtsb,ndig ausrichten. Als Ergebnis erhalten Sie eine !hnliche Anordnung, wie sie der Formular-Assistent AutoFormular: Einspaltig erzeugt.
347
Formulare
Abb. 6.7 Bei dieser Markierung werden nur die Bezeichnungsfelder ausgerichtet
Steuerelemente am Raster ausrichten
Steuerelemente horizontal und vertikal ausrichten
Der Befehl Format > Ausrichten > Am Raster richtet die linke obere Ecke der markierten Steuerelemente am Raster aus. Die Abschnitte Lineale und Raster weiter unten in diesem Kapitel beschreiben, wie Raster definiert und angezeigt werden. Pber die Befehle Format > Horizontaler Abstand und Format > Vertikaler Abstand kDnnen Sie die Abst!nde zwischen den Steuerelementen einer Gruppe von markierten Steuerelementen angleichen, verkleinern oder vergrDßern. Beide Befehle verf,gen ,ber die Unterpunkte Angleichen, Vergr4ßern und Verkleinern. Das VergrDßern und Verkleinern der Abst!nde erfolgt um jeweils einen Rasterpunkt.
Gr&ße eines Steuerelements %ndern Die Technik zur 0nderung der GrDße von Steuerelementen !hnelt der zur 0nderung von FenstergrDßen. Markieren Sie zun!chst das gew,nschte Steuerelement. Bewegen Sie dann den Mauszeiger auf einen der Ziehpunkte, bis Access den Mauszeiger als Pfeil mit zwei Spitzen anzeigt. Sie kDnnen den Ziehpunkt dann in die Richtung verschieben, die der Pfeil anzeigt. Wenn Sie den Mauszeiger auf einen der Ziehpunkte entlang der Begrenzungskanten positionieren, kDnnen Sie jeweils nur die linke, obere, rechte oder untere Kante ziehen. Wenn Sie den Mauszeiger jedoch auf einen der Ziehpunkte an der rechten oberen, der rechten unteren oder linken unteren Ecke positionieren, kDnnen Sie die jeweilige Ecke, also zwei Kanten gleichzeitig, verschieben. Der linke obere Ziehpunkt ist dem Verschieben von Steuerelementen und deren Beschriftung vorbehalten.
348
Mit Steuerelementen arbeiten
Wenn Sie gleichartige 0nderungen an mehreren Steuerelementen vorgenommen haben, kann das manuelle Anpassen der GrDßen ,beraus m,hselig sein. Wenn Sie beispielsweise die SchriftgrDße f,r alle Steuerelemente eines Formulars von 8 auf 14 Punkt !ndern, m,ssen Sie die GrDßen aller Steuerelemente neu anpassen. In diesem Fall sollten Sie Access die Arbeit ,berlassen. Markieren Sie alle Steuerelemente, deren GrDße angepasst werden soll, und w!hlen Sie den Befehl Format > Gr4ße. Mit den Unterpunkten des Befehls bestimmen Sie, ob Access die SteuerelementgrDßen an der TextgrDße, am Raster, am breitesten, schmalsten, hDchsten oder niedrigsten Steuerelement anpassen soll.
Hinweis
Lineale Lineale bilden vorwiegend ein Hilfsmittel zur Orientierung auf der Arbeitsfl!che. Access unterteilt das horizontale und das vertikale Lineal mit der Einheit, die das Kombinationsfeld Maßsystem der L7ndereinstellungen der Systemsteuerung von Windows vorgibt. Die beiden AuswahlmDglichkeiten des Kombinationsfeldes sind Metrisch (entspricht der Einheit Zentimeter) und US-Maße (entspricht der Einheit Zoll). Access zeigt die Lineale standardm!ßig an. Der Befehl Ansicht > Lineal schaltet die Anzeige der beiden Lineale wechselweise ein und aus. Die Lineale sind besonders hilfreich beim Erstellen von Formularen und Berichten, die ausgedruckt werden sollen. Die Proportionen der Lineale entsprechen n!mlich denen des aktuell eingestellten Papierformats des Standarddruckers.
Maßeinheit
Lineale ein- und ausblenden
Pber die Auswahl des Befehls Anpassen aus dem Kontextmen, kDnnen Sie einer Symbolleiste eine Schaltfl!che zum Ein- und Ausblenden der Lineale hinzuf,gen. Der Abschnitt Objekte formatieren weiter oben in diesem Kapitel enth!lt weitere Hinweise zu diesem Thema.
Tipp
Raster Das Raster bietet eine zus!tzliche Hilfestellung zur Ausrichtung von Objekten. Außerdem kann ein Raster die Arbeit wesentlich vereinfachen, wenn Sie die GrDße mehrerer Objekte aufeinander abstimmen wollen. Das Raster bildet eine Punktematrix, die nur in der Entwurfsansicht f,r Formulare angezeigt wird.
Raster
Die Einteilung des Rasters richtet sich nach der Einteilung der Lineale. Bei der im deutschsprachigen Raum ,blichen metrischen Einteilung sind die Lineale in Zentimeter unterteilt. Access unterteilt einen Zentimeter standardm!ßig in f,nf Einheiten, so dass die Punkte des Rasters in Abst!nden von zwei Millimetern angezeigt werden. Sie kDnnen jedoch auch eine andere Rasterung definieren. Rffnen Sie dazu das Eigenschaftenfenster und w!hlen Sie den Befehl Bearbeiten > Formular ausw7hlen. Dieser Befehl markiert das Formular als Objekt und zeigt dessen Eigenschaften an. Die Einstellung der Rasterung erfolgt ,ber die beiden Eigenschaften Raster X und
349
Formulare
Raster Y. Sie kDnnen in die beiden Eingabefelder Werte zwischen 1 und 64 eingeben. Die Werte bestimmen, wie oft ein Zentimeter durch Rasterpunkte unterteilt wird. Der Wert 2 bedeutet beispielsweise, dass ein Zentimeter in zwei H!lften geteilt wird. Access ordnet die Rasterpunkte dann in Abst!nden von einem halben Zentimeter an.
Abb. 6.8 Rasterpunkte mit einem halben Zentimeter Abstand
Raster ein- und ausblenden
Steuerelemente einmalig am Raster ausrichten
Steuerelemente kontinuierlich am Raster ausrichten
350
Wenn die Option Ansicht > Raster eingeschaltet ist, zeigt Access das Raster durch eine Punktematrix an. Die Anzeige des Rasters ist jedoch unabh!ngig von der Ausrichtung irgendwelcher Steuerelemente. Sie kDnnen Objekte auch dann ausrichten lassen, wenn das Raster nicht angezeigt wird. Umgekehrt bewirkt allein die Anzeige des Rasters nicht automatisch auch das Ausrichten von Steuerelementen. Bevor Sie bereits bestehende Steuerelemente ausrichten lassen kDnnen, m,ssen Sie sie zun!chst markieren. W!hlen Sie dann den Befehl Format > Ausrichten > Am Raster, um die linke obere Ecke der Steuerelemente am n!chsten Rasterpunkt ausrichten zu lassen. Mithilfe der Option Format > Am Raster ausrichten kDnnen Sie das Ausrichten von Steuerelementen zur Standardeinstellung machen. Wenn die Option eingeschaltet ist, richtet Access alle Steuerelemente am Raster aus, die neu erstellt oder verschoben werden. Bei der Verschiebung bereits bestehender Steuerelemente richtet Access nur die linke obere Ecke am n!chstliegenden Rasterpunkt aus. Wenn Sie jedoch die GrDße des Steuerelements !ndern, wird auch die verschobene Kante oder Ecke am Raster ausgerichtet.
Mit Steuerelementen arbeiten
Der Befehl Format > Gr4ße > Am Raster richtet alle vier Ecken der markierten Steuerelemente an den jeweils n!chstliegenden Rasterpunkten aus. Die optimale GrDße entspricht nicht immer auch der durch das Raster vorgegebenen GrDße. Sofern Sie mit der Wirkung des Befehls nicht zufrieden sind, w!hlen Sie den Befehl Bearbeiten > R1ckg7ngig. Probieren Sie dann auch die anderen Unterpunkte des Befehls Format > Gr4ße aus. Das Ausrichten von Steuerelementen l!sst sich vor,bergehend verhindern. Halten Sie die S-Taste gedr,ckt, w!hrend Sie Steuerelemente erstellen, verschieben oder deren GrDße !ndern. Access verzichtet dann auf die Ausrichtung der Objekte. Pber die Auswahl des Befehls Anpassen aus dem Kontextmen, kDnnen Sie einer Symbolleiste Schaltfl!chen zum Ausrichten von Steuerelementen am Raster hinzuf,gen. Der Abschnitt Objekte formatieren weiter oben in diesem Kapitel enth!lt weitere Hinweise zu diesem Thema.
Steuerelementgrßen am Raster anpassen
Tipp
Tipp
Steuerelemente duplizieren, kopieren und l&schen Sie kDnnen im Zusammenhang mit Steuerelementen die Befehle des Bearbeitenund des Kontextmen,s und damit die Zwischenablage verwenden. Markieren Sie zun!chst eines oder mehrere Steuerelemente und w!hlen dann einen der Befehle des Bearbeiten-Men,s aus. Besonders interessant ist der Befehl Bearbeiten > Duplizieren, der eine exakte Kopie der markierten Steuerelemente erzeugt. Dieser Befehl vereinfacht das Vervielf!ltigen von Steuerelementen. Er zeigt die duplizierten Steuerelemente direkt an und markiert sie automatisch. Sie brauchen die Kopie dann nur noch an die gew,nschte Position zu verschieben und gegebenenfalls einige Eigenschaften zu !ndern. Soweit die Bearbeitung von Steuerelementen betroffen ist, lassen sich alle Befehle des Bearbeiten-Men,s wieder r,ckg!ngig machen. W!hlen Sie einfach den Befehl Bearbeiten > R1ckg7ngig aus. Wenn Sie nur die Beschriftung eines Steuerelements lDschen wollen, markieren Sie die Beschriftung so, dass Access alle Ziehpunkte entlang der Objektbegrenzung anzeigt. W!hlen Sie dann den Befehl Bearbeiten > L4schen oder bet!tigen die _-Taste. Sofern Sie eine Beschriftung versehentlich gelDscht haben, sollten Sie den Befehl Bearbeiten > R1ckg7ngig ausw!hlen. Wenn Sie einem Steuerelement eine Beschriftung zuordnen wollen, dann erstellen Sie zun!chst ein Bezeichnungsfeld. Markieren Sie dieses Feld, und w!hlen Sie den Befehl Bearbeiten > Ausschneiden aus der Men,leiste. Markieren Sie dann das Steuerelement, und w!hlen Sie den Befehl Bearbeiten > Einf1gen. Access ordnet die Beschriftung dann dem Steuerelement zu. Hinweise zum Erstellen von Bezeichnungsfeldern finden Sie unter der Pberschrift Die Steuerelementtypen im einzelnen weiter unten in diesem Kapitel.
Tipp
Beschriftung eines Steuerelements lschen
Beschriftung zuordnen
351
Formulare
Steuerelemente gruppieren 0hnlich wie in CAD-Anwendungen kDnnen Sie mit Access XP Steuerelemente gruppieren. Das Gruppieren von Steuerelementen ist besonders n,tzlich bei der Ausrichtung und GrDßenanpassung. Wenn Sie eine Reihe von Steuerelementen erstellt, ausgerichtet und bez,glich der GrDße optimiert haben, aber feststellen, dass das Gesamtbild doch etwas zu klein erscheint, gehen Sie folgendermaßen vor:
Gruppierung bearbeiten
1
Markieren Sie alle betroffenen Steuerelemente.
2
F,hren Sie den Befehl Format > Gruppieren aus.
Aktivieren Sie nun die Gruppe per Mausklick auf ein beliebiges Elemente der Gruppe. Es erscheint ein Rahmen um die gruppierten Elemente. Sie kDnnen die gruppierten Elemente innerhalb des Formulars hin- und herschieben sowie die GrDße der Gruppe beliebig !ndern. GrDße und Position jedes der Steuerelemente werden der 0nderung proportional angepasst. Es ist zwar auch mit !lteren Access-Versionen mDglich, mehrere Steuerelemente zu markieren und deren GrDße proportional zueinander zu ver!ndern. Der Vorteil des Gruppierens aber ist, dass auch die Positionen innerhalb der Gruppe ver!ndert werden. Das bedeutet, dass auch die R!ume zwischen den Steuerelementen angepasst werden. Wollen Sie GrDße oder Position eines einzelnen gruppierten Steuerelements !ndern, m,ssen Sie die Gruppierung nicht aufheben. Markieren Sie einfach das Steuerelement und nehmen Sie die Ver!nderungen vor.
Gruppierung aufheben
Um die Gruppierung aufzuheben, benutzen Sie den Befehl Format > Gruppierung aufheben. Beachten Sie Folgendes: Steuerelemente, die dem Bereich der Gruppierung hinzugef,gt werden, werden nicht automatisch der Gruppierung hinzugef,gt. Um der Markierung ein Element hinzuzuf,gen, markieren Sie die Gruppe und das hinzuzuf,gende Element und f,hren erneut den Befehl Format > Gruppieren aus. Daraufhin wird die alte Gruppierung entfernt und eine neue Gruppierung mit dem hinzugekommenen Steuerelement erstellt.
Steuerelementtyp %ndern Steuerelemente kDnnen Sie bei Bedarf in einen anderen Typ umwandeln. So lassen sich beispielsweise Text- in Kombinationsfelder und Optionsfelder in Umschaltfl!chen umwandeln. Access ,bernimmt bei der Typumwandlung die Eigenschaften eines Steuerelements, soweit das sinnvoll ist. In der Regel werden zumindest die Datenherkunft- und die Formateigenschaften ,bernommen. Um den Typ eines Steuerelements zu !ndern, gehen Sie wie folgt vor:
352
Mit Steuerelementen arbeiten
1
Klicken Sie mit der rechten Maustaste auf das Steuerelement, um es zu markieren und das Kontextmen, zu Dffnen.
2
W!hlen Sie den Befehl Tndern zu aus dem Kontextmen,.
3
W!hlen Sie den neuen Steuerelementtyp aus der Liste.
Steuerelementtyp !ndern
Die Auswahlliste des Befehls Tndern zu enth!lt nur die Typen, in die Sie das aktuelle Steuerelement umwandeln kDnnen. Alle anderen Men,punkte sind deaktiviert. Die Zusammensetzung der Liste h!ngt in der Regel vom aktuellen Steuerelementtyp ab.
Hilfetexte und Tips zu Steuerelementen anzeigen Gut gestaltete Formulare zeichnen sich unter anderem dadurch aus, dass sie leicht zu bedienen sind. Sie erreichen dies in erster Linie durch die Gestaltung und Anordnung von Steuerelementen. Dar,ber hinaus ist es aber empfehlenswert, dem Anwender weitergehende Hilfestellungen zu geben. Neben der Zuordnung eines Bezeichnungsfeldes zwecks Beschriftung eines Steuerelements bietet Ihnen Access zwei einfache MDglichkeiten, die Anwender Ihrer Formulare zu unterst,tzen. In die Eigenschaft Statuszeilentext kDnnen Sie einen bis zu 255 Zeichen langen Text eingeben, der die Bedeutung des Steuerelements erl!utert. Access zeigt diesen Text in der Statuszeile an, solange das Steuerelement aktiviert ist. Die Bedeutung der Eigenschaft SteuerelementTip Text kennen Sie bereits von der Arbeit mit Access und eventuell auch anderen Windows-Anwendungen. Wenn Sie den Mauszeiger nur lange genug auf einem Objekt stehen lassen, zeigt eine Art Sprechblase einen kurzen erl!utertenden Text an. Diese Art der Hilfestellung ist auch unter den Bezeichnungen TipText, QuickTip und QuickInfo bekannt und eignet sich ganz besonders f,r Befehlsschaltfl!chen und Symbole, die eine Grafik anzeigen und keine Beschriftung haben (z.B. die Schaltfl!chen der Symbolleisten von Access).
Statuszeilentext
SteuerelementTip Text
Um nun Ihre eigenen Steuerelemente mit solchen Sprechblasen auszustatten, brauchen Sie nur einen bis zu 255 Zeichen langen Text in die Eigenschaft SteuerelementTip Text einzugeben. Access zeigt diesen Text automatisch in einer Sprechblase an, wenn der Mauszeiger lange genug auf dem Steuerelement verharrt. Pber die Eigenschaft Hilfekontext eines Steuerelements kDnnen Sie dem Anwender den Zugriff auf Ihr eigenes Hilfesystem geben. Als Voraussetzung hierf,r benDtigen Sie allerdings den Hilfe-Compiler von Microsoft. Außerdem m,ssen Sie ,ber die Formulareigenschaft Hilfedatei eine Hilfedatei spezifizieren.
Hilfetexte
353
Formulare
Aktivierreihenfolge %ndern Sie werden im Laufe Ihrer Arbeit an einem Formular wahrscheinlich h!ufig Steuerelemente einf,gen, !ndern und lDschen. Access merkt sich die Reihenfolge, in der die Felder erstellt werden. Diese Reihenfolge bestimmt dann auch die Reihenfolge der Eingabe in die Felder bzw. die Reihenfolge ihrer Anzeige, wenn mit der T-Taste von einem Feld zum n!chsten gesprungen wird.
Ansicht > Aktivierreihenfolge
Bevor Sie ein Formular einsetzen, sollten Sie daher die Reihenfolge neu definieren. W!hlen Sie den Befehl Ansicht > Aktivierreihenfolge aus der Men,leiste, damit Access den gleichnamigen Dialog Dffnet.
Abb. 6.9 Aktivierreihenfolge !ndern
Im linken oberen Teil des Dialogs finden Sie Optionsfelder zur Auswahl der Formularbereiche. Wenn kein Steueerelement in einem anderen Bereich markiert ist, aktiviert Access standardm!ßig das Optionsfeld f,r den Detailbereich und zeigt dessen gebundene Steuerelemente im rechten Teil des Dialogs an. Sofern Sie die Reihenfolge eines anderen Bereichs !ndern wollen, klicken Sie zun!chst auf das daf,r vorgesehene Optionsfeld.
Aktivierreihenfolge automatisch !ndern
Klicken Sie auf die Schaltfl!che Automatisch, wenn Access die Reihenfolge automatisch neu erstellen soll. Access sortiert die Felder gem!ß ihrer Anordnung im Formular von oben nach unten und von links nach rechts. Klicken Sie dann auf OK, um die 0nderung zu best!tigen. Mithilfe der Feldliste im rechten Teil des Dialogs kDnnen Sie die Reihenfolge auch manuell einstellen. Markieren Sie einen oder mehrere Eintr!ge und verschieben sie an die gew,nschte Stelle in der Liste. Verwenden Sie dazu die Maus.
354
Mit Steuerelementen arbeiten
Standardeigenschaften von Steuerelementen %ndern Gut gestaltete Formulare zeichnen sich durch ihre Einheitlichkeit aus. Ein buntes Durcheinander von grafischen Elementen und Schriften verwirrt den Anwender mehr, als es ihm Freude bereitet. Gleiche Informationstypen sollten auch auf gleiche Weise gestaltet werden. Dieser Merksatz betrifft nicht nur die grafische Gestaltung, sondern schlichtweg alle Eigenschaften der Steuerelemente eines Formulars. Access bietet gleich mehrere MDglichkeiten zum so genannten Prototyping. Sie kDnnen so nicht nur die Elemente eines, sondern gleich mehrerer Formulare gleichartig gestalten.
Einheitliche Gestaltung
Prototyping
Das manuelle 0ndern aller Details der Steuerelemente eines Formulars ist recht m,hselig. So lassen sich zwar Farben und Schriften f,r mehrere Steuerelemente gleichzeitig einstellen, sp!testens beim Hinzuf,gen eines neuen Steuerelements muss der Prozess jedoch wiederholt werden. Mit Access kDnnen Sie die Standardeinstellung f,r die Eigenschaften jedes Steuerelementtyps individuell ver!ndern. Sind die 0nderungen einmal vorgenommen, speichert Access sie automatisch mit dem Formular. Access bietet hierzu zwei MDglichkeiten. Entweder Sie markieren ein Steuerelement und definieren daraus die Standardeinstellung oder Sie bearbeiten die Standards im Eigenschaftenfenster. Es sind viele Kleinigkeiten, die das Layout eines Formulars ausmachen. Wenn Sie einmal so weit sind, dass Sie mit der Gestaltung eines Steuerelements zufrieden sind, sollten Sie dessen Eigenschaften zum Standard erheben. Markieren Sie dazu das Steuerelement, und w!hlen Sie den Befehl Format > Steuerelementvorgaben festlegen.
Standardeigenschaften bearbeiten
Muster als Standard verwenden
Der Befehl kopiert die Eigenschaften des markierten Steuerelements in die Standardeigenschaften des Steuerelementtyps, dem das Steuerelement angehDrt. Wenn Sie sp!ter ein neues Steuerelement des gleichen Typs erstellen, wendet Access die Standardeigenschaften an. Access ,bernimmt nat,rlich nur die Eigenschaften in die Standardeinstellung, die sinnvoll sind. Dazu z!hlen beispielsweise die Schrift und die Farbe und nicht etwa der Steuerelementname oder 8209;inhalt. Wenn Sie einen genauen Pberblick ,ber alle Standardeigenschaften eines Steuerelementtyps benDtigen, dann verwenden Sie die Toolbox, um das Standardeigenschaftenfenster zu Dffnen (siehe unten). Wenn Sie die optimale Einstellung der Standardeigenschaften gefunden haben, versp,ren Sie vielleicht den Wunsch, sie auch auf andere Steuerelemente anzuwenden. Bei fr,heren Versionen von Access kDnnen Sie dies ,ber den Befehl Format > Voreinstellung anwenden bewerkstelligen. Bei Access XP gibt es diesen Befehl nicht mehr. Hier m,ssen Sie die Symbolleiste um eine zus!tzliche Schaltfl!che erweitern. Gehen Sie dazu wie folgt vor:
Voreinstellungen zuweisen
355
Formulare
1
W!hlen Sie den Befehl Ansicht > Symbolleisten > Anpassen aus der Men,leiste.
2
Aktivieren Sie die Symbolleiste, der Sie die neuen Schaltfl!chen hinzuf,gen wollen, in der Registerkarte Symbolleisten. Die Symbolleiste Formatierung (Formular/Bericht) ist hierf,r besonders geeignet.
3
Klicken Sie auf die Registerkarte Befehle.
4
Markieren Sie die Kategorie Format.
5
Ziehen Sie das Symbol Vorgabe 1bernehmen und den Schaltfl!chentext Steuerelementvorgaben festlegen in die Symbolleiste Formatierung (Formular/ Bericht).
6
Beenden Sie den Dialog mit einem Klick auf die Schaltfl!che Schließen.
Abb. 6.10 Voreinstellungen zuweisen
Um die Standardsteuerelementeigenschaften auf eines oder mehrere Steuerelemente zu ,bertragen, markieren Sie sie zun!chst. Anschließend klicken Sie auf das Symbol Vorgabe 1bernehmen
Standardeigenschaften ber die Toolbox ver!ndern
356
Sie kDnnen die Standardeigenschaften auch direkt im Eigenschaftenfenster !ndern. Rffnen Sie dazu die Toolbox und das Eigenschaftenfenster. Jedesmal, wenn Sie ein Tool anklicken, zeigt Access im Eigenschaftenfenster den Titel Standard und die Bezeichnung des Steuerelementtyps an. Mit dem 0ndern der Eigenschaften !ndern Sie automatisch die Standardeigenschaften.
Mit Steuerelementen arbeiten
Das Standardeigenschaftenfenster zeigt nur die Standardeigenschaften eines Steuerelementtyps an. Eigenschaften wie beispielsweise Steuerelementname und Steuerelementinhalt machen den individuellen Charakter eines Steuerelements aus und lassen sich daher nicht standardisieren. Access speichert die Standardeigenschaften mit dem Formular ab. Das 0ndern der Standardeigenschaften wirkt sich daher nur auf dieses eine Formular aus. Wenn Sie die Standardeigenschaften eines Steuerelements auch in andere Formulare ,bernehmen wollen, kopieren Sie es in die Zwischenablage. Rffnen Sie dann das neue Formular, und f,gen Sie das Steuerelement aus der Zwischenablage ein. Markieren Sie das Steuerelement und w!hlen Sie den Befehl Format > Steuerelementvorgabe festlegen aus der Men,leiste. Markieren Sie anschließend alle Steuerelemente, die die Standardeinstellungen ,bernehmen sollen, und klicken Sie auf das Symbol Vorgabe 9bernehmen. Als Beispiel f,r die Standardeigenschaften soll die Farbgebung eines Bezeichnungsund eines Textfeldes ge!ndert werden. Gehen Sie wie folgt vor: 1
Rffnen Sie ein Formular in der Entwurfsansicht.
2
0ndern Sie die Hintergrundfarbe eines Textfeldes auf Gelb.
3
0ndern Sie die Hintergrundfarbe eines Bezeichnungsfeldes auf Gr,n.
4
Markieren Sie beide Steuerelemente, und w!hlen Sie den Befehl Format > Steuerelementvorgabe festlegen.
Beispiel: Farbgebung
Access !ndert damit die Standardhintergrundfarbe f,r Bezeichnungsfelder auf Gr,n und die von Textfeldern auf Gelb. Sie kDnnen dies leicht pr,fen, indem Sie weitere Bezeichnungs- und Textfelder erstellen.
Formate bertragen Mit dem Symbol Format 1bertragen kDnnen Sie die Formateigenschaften von einem Steuerelement auf ein anderes ,bertragen. Im Unterschied zum 0ndern der Voreinstellungen f,r Steuerelementeigenschaften kDnnen Sie Formateigenschaften auch zwischen verschiedenen Steuerelementtypen ,bertragen. Um beispielsweise die Formateigenschaften von einem Bezeichnungs- auf ein Textfeld zu ,bertragen, gehen Sie wie folgt vor: 1
Markieren Sie das Bezeichnungsfeld.
2
Markieren Sie das Symbol Format 1bertragen.
3
Klicken Sie auf das Textfeld.
357
Formulare
Formate auf mehrere Steuerelemente bertragen
Access ,bertr!gt die Formateigenschaften von dem markierten auf das angeklickte Steuerelement und hebt gleichzeitig die Markierung des Symbols Format 1bertragen auf. Wenn Sie die Formateigenschaften auf weitere Steuerelemente ,bertragen wollen, dann m,ssen Sie den Vorgang wiederholen oder das Symbol mit einem Doppelklick markieren. Das Symbol bleibt dann so lange markiert und Sie kDnnen so lange Formate auf weitere Steuerelemente ,bertragen, bis Sie erneut auf das Symbol Format 1bertragen klicken.
Automatisch formatieren Mit dem AutoFormat-Assistenten kDnnen Sie in einem Schritt ganze Formulare in ein einheitliches Layout bringen. Zur Formatierung eines Formulars gehen Sie wie folgt vor: 1
Wenn das noch nicht geschehen ist, Dffnen Sie das Formular in der Entwurfsansicht.
2
W!hlen Sie den Befehl Format > AutoFormat aus der Men,leiste.
Abb. 6.11 Der AutoFormat-Assistent
Access Dffnet dann einen Dialog mit vordefinierten AutoFormaten f,r Formulare. Wenn Sie eines der Formate in der Liste markieren, zeigt der rechte Teil des Dialogs an, wie das Formular sp!ter aussehen wird. Ein Klick auf die Schaltfl!che OK veranlasst Access, das aktuelle Formular zu ,berarbeiten. Der AutoFormat-Assistent ver!ndert dabei die Formateigenschaften des Formularobjekts und der enthaltenen Steuerelemente. Bei einigen AutoFormaten erg!nzt der Assistent ,ber die Bildeigenschaft des Formularobjekts ein Hintergrundbild. 358
Mit Steuerelementen arbeiten
Der AutoFormat-Assistent wirkt sich stets nur auf die markierten Formularobjekte aus. Wenn Sie vor dem Aufruf des Assistenten nur eines oder eine Gruppe von Steuerelementen markiert haben, dann wird auch nur deren Formatierung ge!ndert. Ein Mausklick auf die Schaltfl!che Optionen des AutoFormat-Assistenten zeigt drei Kontrollk!stchen an, die standardm!ßig angekreuzt sind. Durch das Leeren der Kontrollk!stchen kDnnen Sie verhindern, dass der AutoFormat-Assistent die Schriftarten, Farben und Rahmen der Steuerelemente eines Formulars !ndert. Mit dem AutoFormat-Assistenten kDnnen Sie Ihre eigenen AutoFormate definieren. Entwerfen Sie zun!chst ein Formular und gestalten Sie es nach Ihren W,nschen. Gehen Sie dann wie folgt vor: 1
W!hlen Sie den Befehl Format > AutoFormat aus der Men,leiste.
2
Klicken Sie auf die Schaltfl!che Anpassen.
3
Markieren Sie die Option Ein neues AutoFormat erstellen.
4
Klicken Sie auf die Schaltfl!che OK.
5
Geben Sie einen Namen f,r Ihr neues AutoFormat ein.
Steuerelemente formatieren
Optionen
Eigene AutoFormate definieren
Abb. 6.12 Eigene AutoFormate entwerfen
Der Assistent ,bernimmt Ihre Eingabe dann in die Liste der AutoFormate. Um das neue AutoFormat auf andere Formulare anzuwenden, Dffnen Sie diese in der Entwurfsansicht und starten den AutoFormat-Assistenten. W!hlen Sie dann Ihr neues AutoFormat aus der Liste aus. Der Dialog AutoFormat anpassen ermDglicht außerdem das LDschen von AutoFormaten sowie das Anpassen bereits bestehender AutoFormate.
359
Formulare
Hinweis
Access verwendet das zuletzt ausgew!hlte AutoFormat standardm!ßig in allen Formular-Assistenten. Um das gerade aktuelle AutoFormat zu !ndern, kDnnen Sie entweder den Befehl Format > AutoFormat aus der Men,leiste w!hlen oder in dem daf,r vorgesehenen Dialog des Formular-Assistenten ein anderes AutoFormat ausw!hlen.
Formulare als Vorlage fr neue Formulare verwenden Sie erstellen w!hrend Ihrer Arbeit mit Access wahrscheinlich zahlreiche Formulare f,r alle nur denkbaren Zwecke. Sie sollten darauf achten, dass Sie Ihre Formulare einheitlich gestalten. So sollten gleichartige Informationstypen auch mit gleichartig gestalteten Steuerelementen angezeigt werden. Das erleichtert die Bedienung der Formulare mitunter enorm. Sie kDnnen generell die Formular-Assistenten mit einem geeigneten AutoFormat verwenden, um den Grundstock f,r ein Formular erstellen zu lassen. Die Assistenten erstellen Formulare automatisch mit dem aktiven AutoFormat. Wenn Sie auf die Verwendung der Assistenten verzichten wollen oder mit deren Layout-Vorgaben nicht einverstanden sind, sollten Sie Ihr bevorzugtes Layout als Vorlage definieren. W!hlen Sie den Befehl Extras > Optionen aus der Men,leiste, so dass Access den gleichnamigen Dialog Dffnet. Markieren Sie das Register Formulare/Berichte, und tragen Sie in das Feld Formularvorlage den Namen Ihres bevorzugten Formulars ein.
Abb. 6.13 &ndern der Formularvorlage
360
Die Steuerelementtypen im Einzelnen
Access verwendet das Formular nun als Vorlage f,r alle Formulare, die nicht mit den Assistenten erstellt werden. Access ,bernimmt standardm!ßig die Formular-, Bereichs- und Steuerelementeigenschaften aus der Vorlage. Dazu z!hlen insbesondere die Farbgebung und die Schriftauswahl. Die Vorlage erstellt allerdings keine neuen Steuerelemente in der Entwurfsansicht neuer Formulare. Sie kDnnen jedes beliebige Formular als Vorlage angeben oder ein neues Formular erstellen, das nur als Vorlage dient. Geben Sie Normal als Name f,r die Formularvorlage ein, wenn Sie die Standardeinstellung von Access wiederherstellen wollen.
Die Steuerelementtypen im Einzelnen Nachdem die vorhergehenden Abschnitte die grunds!tzlichen Vorgehensweisen zum Entwurf von Steuerelementen und zur Bearbeitung ihrer Eigenschaften erl!utert haben, beschreiben die folgenden Abschnitte die Besonderheiten der einzelnen Steuerelementtypen. Nachdem Sie diese Abschnitte durchgearbeitet haben, ist Ihr Wissen ,ber den Formularentwurf fast vollst!ndig. Sie sollten sich dann noch mit den Formularbereichen und -eigenschaften auseinandersetzen. Wenn Sie wollen, dann kDnnen Sie sich – nach ein wenig Pbung im Entwurf von Formularen – anschließend mit Berichten oder direkt mit den in Teil III dieses Buchs beschriebenen fortgeschrittenen Techniken auseinandersetzen. Access kategorisiert Steuerelemente nach Typen. Jeder Steuerelementtyp entspricht dabei einem Symbol der Toolbox. Die folgenden Abschnitte beschreiben die Besonderheiten der verschiedenen Steuerelementtypen.
Steuerelementtypen
Bezeichnungsfelder Bezeichnungsfelder dienen der Anzeige von Texten. Sie sind stets ungebunden und eignen sich nicht zur Darstellung von Datenfeldern oder Ausdr,cken. Um ein Bezeichnungsfeld zu erstellen, markieren Sie zun!chst das BezeichnungsSymbol in der Toolbox. Klicken Sie dann auf einen leeren Bereich der Arbeitsfl!che oder ziehen Sie einen Rahmen auf. Access zeigt dann die blinkende Eingabemarke an und Sie kDnnen direkt mit der Eingabe eines Textes beginnen. Beenden Sie Ihre Eingabe mit der -Taste. Mit der Beschriftung des Bezeichnungsfeldes definieren Sie, welchen Text Access anzeigen soll. Sie kDnnen alternativ die Eigenschaft Beschriftung !ndern oder in das Steuerelement klicken, um die Beschriftung einzugeben. Access interpretiert Beschriftungen immer als Textliterale. Sollten Sie dennoch einen Ausdruck eingeben, so wird dieser nicht interpretiert. Wenn Sie beispielsweise die Beschriftung =Zeit() eingeben, so zeigt Access in der Formularansicht ebenfalls den Text =Zeit() und nicht etwa die Systemzeit an. Wenn Access stattdessen die Systemzeit anzeigen soll, m,ssen Sie ein Textfeld mit dem Steuerelementinhalt = Zeit() erstellen.
Bezeichnungsfeld erstellen
Beschriftung
361
Formulare
Grße eines Bezeichnungsfeldes
Access passt die GrDße von Bezeichnungsfeldern automatisch an. Wenn Sie ein Bezeichnungsfeld durch Aufziehen eines Rahmens erstellen, passt Access nur die vertikale Ausdehnung des Feldes an. Wenn also der eingegebene Text ,ber die untere Feldbegrenzung hinausgeht, erweitert Access automatisch die vertikale Ausdehnung des Feldes. Wenn Sie ein Bezeichnungsfeld durch einfaches Klicken auf die Arbeitsfl!che erstellen, passt Access zun!chst nur die horizontale Ausdehnung des Feldes an. Bet!tigen Sie in diesem Fall die Tastenkombination S, um einen Zeilenvorschub einzuf,gen und die horizontale Ausdehnung des Feldes zu fixieren. Access passt dann nur noch die vertikale Ausdehnung des Feldes an.
Abstand zwischen Text und Steuerelementbegrenzung
Zeilenabstand
Gegen,ber !lteren Access-Versionen bietet Access seit der Version 2000 einen besseren Komfort bei der Gestaltung von Beschriftungs- und Textfeldern an. Mit den Eigenschaften Linker Rand, Oberer Rand, Rechter Rand und Unterer Rand kDnnen Sie nun einen Abstand zwischen den Steuerelementbegrenzungen und dem eigentlichen Steuerelementinhalt einrichten. Dar,ber hinaus kDnnen Sie mit der Eigenschaft Zeilenabstand einen Abstand zwischen einzelnen Textzeilen bei mehrzeiligen Steuerelelementinhalten festlegen. Die beiden letztgenannten Eigenschaften gelten nur f,r Beschriftungs- und Textfelder, nicht aber f,r Kombinations- und Listenfelder.
Tipp
Hyperlinks in Bezeichnungsfeldern
Wenn Sie nachtr!glich 0nderungen an einem Bezeichnungsfeld vornehmen, dann kDnnen Sie die FeldgrDße automatisch anpassen lassen. W!hlen Sie dazu den Befehl Format > Gr4ße anpassen. Mit den beiden Eigenschaften Hyperlink-Adresse und Hyperlink-Unteradresse ordnen Sie einem Bezeichnungsfeld einen Hyperlink zu. Wenn der Anwender sp!ter in der Formularansicht auf das Bezeichnungsfeld klickt, Dffnet Access den Hyperlink. Sie haben folgende MDglichkeiten, ein Bezeichnungsfeld mit Hyperlink zu erstellen: Geben Sie Werte direkt in die beiden Eigenschaften Hyperlink-Adresse und Hyperlink-Unteradresse ein oder w!hlen Sie den Befehl Einf1gen > Hyperlink aus der Men,leiste oder klicken Sie auf das gleichnamige Symbol oder klicken Sie auf das Eingabehilfe-Symbol einer der beiden Eigenschaften, damit Access den Dialog Hyperlink einf1gen bzw. Hyperlink bearbeiten Dffnet. Ein Hyperlink besteht aus einer Adresse, einer Unteradresse und einem Anzeigetext. Die ersten beiden Komponenten legen Sie direkt ,ber die Eigenschaften HyperlinkAdresse und Hyperlink-Unteradresse fest. Mit der Eigenschaft Beschriftung definieren Sie den Anzeigetext des Hyperlinks.
362
Die Steuerelementtypen im Einzelnen
Eine Beschreibung der Komponenten von Hyperlinks und des Dialogs Hyperlink einf1gen finden Sie in Kapitel 4 Tabellen unter der Pberschrift Hyperlinks in einer Tabelle speichern.
Hinweis
Textfelder Textfelder eignen sich zur Darstellung von Datenfeldern aus der dem Formular zugrunde liegenden Tabelle oder Abfrage. Dar,ber hinaus kDnnen Sie Textfelder auch mit einem Ausdruck verbinden. Typische Anwendungsgebiete sind beispielsweise die Anzeige von berechneten Feldern und dem Systemdatum. Das Erstellen eines Textfeldes kann auf verschiedene Weisen erfolgen: Sie kDnnen die Toolbox oder die Feldliste verwenden. Bei Verwendung der Toolbox markieren Sie zun!chst das Textfeld-Symbol und klicken dann auf einen leeren Bereich der Arbeitsfl!che oder ziehen einen Rahmen auf. Access erstellt dann automatisch ein ungebundenes Textfeld und ein verbundenes Bezeichnungsfeld zur Beschriftung.
Textfeld erstellen
Nach dem Erstellen sollten Sie das Textfeld mit einem Datenfeld oder Ausdruck verbinden. 0ndern Sie dazu die Eigenschaft Steuerelementinhalt, oder geben Sie den Feldnamen oder Ausdruck direkt in das Steuerelement ein. Klicken Sie dazu in das Steuerelement, so dass Access die blinkende Eingabemarke anzeigt. Geben Sie einen Feldnamen der zugrunde liegenden Tabelle oder Abfrage oder einen Ausdruck ein und beenden Ihre Eingabe mit der -Taste. Das Zoom-Fenster steht bei der Eingabe in Steuerelemente leider nicht zur Verf,gung. Wenn Sie eines oder mehrere Textfelder erstellen wollen, die Daten aus der zugrunde liegenden Tabelle oder Abfrage anzeigen, dann sollten Sie die Feldliste verwenden. W!hlen Sie den Befehl Ansicht > Feldliste, oder klicken Sie auf das Feldlisten-Symbol, so dass Access die Feldliste anzeigt. Ziehen Sie dann die gew,nschten Felder in den Entwurfsbereich. Weiter oben in diesem Kapitel finden Sie unter der Pberschrift Die Feldliste eine Aufstellung der Eigenschaften, die Access beim Entwurf eines Textfeldes ,ber die Feldliste kopiert. Beim manuellen Entwurf eines Textfeldes und der Bindung an ein Datenfeld ,ber die Steuerelementinhalt-Eigenschaft werden keine Eigenschaften kopiert. Dennoch bleiben die Feldeigenschaften G1ltigkeitsregel, G1ltigkeitsmeldung und Standardwert weiterhin in Kraft. Das bedeutet, dass Access auch bei der Dateneingabe in ein Formular die im Tabellenentwurf festgelegten G,ltigkeitsregeln ,berpr,ft. Dieser Zusammenhang !ndert sich auch dann nicht, wenn Sie im Formularentwurf eine neue G,ltigkeitsregel festlegen. Access akzeptiert Eingaben in diesem Fall nur dann, wenn beide G,ltigkeitsregeln, also die in der Feldeigenschaft und die in der Steuerelementeigenschaft, erf,llt sind. Sie sollten daher darauf achten, dass sich die beiden G,ltigkeitsregeln nicht gegenseitig ausschließen.
Feldliste
Voreingestellte Eigenschaften
G ltigkeitsregeln
363
Formulare
Standardwerte
Beschriftung
Steuerelementinhalt
Mehrzeilige Texte
Im Fall der Standardwert-Eigenschaft ist der im Steuerelement festgelegte Wert solange g,ltig, wie das Formular aktiv ist. Das bedeutet, dass ein im Formular festgelegter Standardwert Vorrang vor dem im Tabellenentwurf festgelegten Standardwert hat. Sofern Sie ein Steuerelement mit einem Datenfeld verbinden, f,r das Sie in der Tabellenstruktur eine Beschriftung festgelegt haben, ,bernimmt Access die Beschriftung automatisch auch in das Formular. In diesem Fall zeigt das Bezeichnungsfeld nicht den Steuerelementnamen, sondern die Beschriftung an. Der Steuerelementinhalt bestimmt, welche Daten das Textfeld anzeigen soll. W!hlen Sie einen Feldnamen aus dem Kombinationsfeld oder geben einen Ausdruck ein. Zur Eingabe l!ngerer Ausdr,cke sollten Sie die Tastenkombination H" bet!tigen, so dass Access das Zoom-Fenster Dffnet. Mit einem Klick auf das Eingabehilfe-Symbol kDnnen Sie auch den Ausdrucks-Editor von Access Dffnen. Steuerelemente, die mit einem Text- oder Memo-Feld verbunden sind, m,ssen einerseits sehr lange Texte auf engem Raum darstellen. Access zeigt jedoch andererseits stets nur den Text an, der in die Begrenzungen des Steuerelements passt. In der Formularansicht l!sst sich dieses Problem durch die Verwendung der vertikalen Rollleiste lDsen. Access setzt die Format-Eigenschaft Bildlaufleiste standardm!ßig auf Vertikal, wenn das Steuerelement zu klein ist, um den ganzen Text gleichzeitig darzustellen.
Druckbare Formulare
Bei Formularen, die auch gedruckt werden sollen, kDnnen Sie Access veranlassen, die GrDße des Steuerelements automatisch anzupassen. Wenn Sie die Eigenschaft Vergr4ßerbar auf Ja einstellen, dehnt Access das Steuerelement in vertikaler Richtung so weit aus, dass der gesamte Inhalt des Textfeldes gedruckt wird. Die Eigenschaft Verkleinerbar ermDglicht auch die umgekehrte Verfahrensweise. Wenn Sie diese Eigenschaft auf Ja einstellen, staucht Access das Steuerelement in vertikaler Richtung, so weit es die L!nge des Textes erfordert. Wenn Sie die Eigenschaft Vergr4ßerbar aktivieren, stellt Access automatisch auch die gleichnamige Eigenschaft f,r den Formularbereich auf Ja. Das bewirkt nicht nur die automatische Anpassung des einen Steuerelements, sondern des ganzen Bereichs. Mehr zu den verschiedenen Bereichen von Formularen finden Sie unter der Pberschrift Formularbereiche und -eigenschaften weiter unten in diesem Kapitel.
Datum- und Zeitwerte einf gen
364
Der Befehl Einf1gen > Datum und Zeit vereinfacht den Entwurf von Textfeldern zur Anzeige von Datum- und Zeitwerten. Die Auswahl des Befehls Dffnet einen Dialog, mit dem Sie das Format f,r die Anzeige von Datum und Zeit ,ber Optionsfelder einstellen kDnnen.
Die Steuerelementtypen im Einzelnen
Abb. 6.14 Datum und Zeit einf gen
Wenn Sie den Dialog Datum und Zeit mit einem Klick auf die Schaltfl!che OK beenden, f,gt Access dem Formularkopf ein neues Steuerelement hinzu. Falls erforderlich, wird dieser Formularbereich dazu zuerst eingeblendet. Wie Sie anhand der Steuerelementinhalt-Eigenschaft leicht ,berpr,fen kDnnen, erfolgt die Anzeige von Datum und Zeit ,ber Aufrufe der Datum- und der Zeit-Funktionen von Access. Die Ausgabe wird dabei ,ber die Format-Funktion gem!ß Ihren Einstellung aufbereitet. Das Einf,gen einer Seitenzahl in den Formularentwurf erfolgt analog ,ber den Befehl Einf1gen > Seitenzahlen. Auch dieser Befehl Dffnet einen Dialog, ,ber den Sie weitere Einstellungen vornehmen kDnnen. Das Einf,gen der Seitenzahl erfolgt alternativ in den Seitenkopf- oder den Seitenfußbereich des aktuellen Formulars. Wenn Sie Datum, Zeit oder Seitenzahl an einer anderen Stelle als den daf,r vorgesehen Formularbereichen anzeigen wollen, dann erzeugen Sie die benDtigten Textfelder zun!chst mit Einf1gen > Datum und Zeit oder Einf1gen > Seitenzahl. Verschieben Sie die neuen Textfelder dann an die gew,nschte Stelle. Als Beispiel f,r ein ungebundenes Steuerelement, das einen Ausdruck anzeigt, entwerfen Sie ein Formular f,r die Projektetabelle. Sie f,gen diesem Formular ein Steuerelement hinzu, das aus einem Nettobetrag und dem Mehrwertsteuersatz den Bruttobetrag berechnet. Gehen Sie wie folgt vor: 1
Entwerfen Sie ein neues tabellarisches Formular f,r die Projektetabelle, das mindestens die Felder Ist Nettobetrag und MWSt enth!lt.
2
Speichern Sie das Formular unter dem Namen Projekte.
3
Rffnen Sie dieses Formular in der Entwurfsansicht.
Seitenzahl einf gen
Tipp
Beispiel: Datumsfeld erstellen
365
Formulare
4
Markieren Sie das Textfeld-Symbol in der Toolbox und ordnen Sie im Detailbereich des Formulars ein neues Textfeld an.
5
Access erstellt automatisch ein ungebundenes Textfeld und das dazugehDrende Bezeichnungsfeld. Da Sie das Bezeichnungsfeld nicht benDtigen, kDnnen Sie es lDschen.
6
Markieren Sie das Textfeld und Dffnen Sie das Eigenschaftenfenster.
7
Klicken Sie auf das Register Daten.
8
Markieren Sie die Eigenschaft Steuerelementinhalt.
9
Klicken Sie auf das Eingabehilfe-Symbol, so dass Access den Ausdrucks-Editor startet.
10
Rffnen Sie den Pfad Formulare > Geladene Formulare > Projekte.
11
F,hren Sie einen Doppelklick auf den Eintrag Ist Nettobetrag durch, um den Feldnamen in den Eingabebereich zu ,bernehmen.
12
Geben Sie zus!tzlich den folgenden Text ein:
13
(1+
14
F,hren Sie einen Doppelklick auf den Eintrag MWSt durch, um auch diesen Feldnamen in den Eingabebereich zu ,bernehmen.
15
Klicken Sie auf die schließende Klammer, so dass Sie folgenden Ausdruck erhalten:
16
[Ist Nettobetrag] * ( 1 + [MWSt] )
17
Beenden Sie den Ausdrucks-Editor mit einem Klick auf die Schaltfl!che OK.
In dem Augenblick, indem Sie den Ausdrucks-Editor beenden, ,bernimmt Access den Ausdruck in die Steuerelementinhalt-Eigenschaft des neuen Textfeldes. Es stellt dem Ausdruck dabei ein Gleichheitszeichen voran. Wenn Sie sich mit der Bildung von Ausdr,cken und der Verwendung von Funktionen besser auskennen, kDnnen Sie solche Ausdr,cke sp!ter direkt in die Steuerelementinhalt-Eigenschaft oder sogar direkt in das Steuerelement eingeben. Wenn Sie nun in die Formularansicht wechseln, zeigt Access dort bereits den berechneten Bruttobetrag an. Die Anzeige erfolgt jedoch ohne jede Formatierung. Um dies zu !ndern, sollten Sie im Register Format des Steuerelements die Eigenschaft Format auf W7hrung einstellen. Wenn Sie wollen, kDnnen Sie dem Formularkopfbereich außerdem ein Bezeichnungsfeld mit dem Text Bruttobetrag als Pberschrift f,r das neue Textfeld hinzuf,gen. 366
Die Steuerelementtypen im Einzelnen
Abb. 6.15 Berechnung ber den Ausdrucks-Editor eingeben
Abb. 6.16 Textfeld zur Berechnung des Bruttobetrags
Bei einem erneuten Wechsel in die Formularansicht d,rften Sie mit dem Ergebnis schon etwas zufriedener sein. Falls erforderlich, kDnnen Sie abschließend mit den Befehlen des Format-Men,s die Ausrichtung des neuen Steuerelements und seiner Beschriftung angleichen. Außerdem sollten Sie die Eigenschaft Name des Textfeldes auf Bruttobetrag !ndern. So kDnnen Sie dieses Steuerelement beispielsweise bei einer sp!teren Anpassung der Feldreihenfolge leichter identifizieren. 367
Formulare
Hyperlinks in Textfeldern
Textfelder eignen sich zur Anzeige von Hyperlinks aus der zugrunde liegenden Tabelle oder Abfrage. Wenn Sie ein Textfeld an ein Datenfeld des Typs Hyperlink binden, zeigt Access f,r jeden Datensatz den gespeicherten Hyperlink an. Weitere Hinweise zum Erstellen und Bearbeiten von Hyperlinks finden Sie in Kapitel 4 Tabellen unter der Pberschrift Hyperlinks in einer Tabelle speichern.
Hinweis Bedingte Formatierung
Access XP bietet die MDglichkeit, Text- und Kombinationsfelder in Abh!ngigkeit vom Inhalt zu formatieren. Sie kDnnen z.B. im Formular Projekte den Inhalt des Textfeldes Ist-Nettobetrag rot, fett und kursiv darstellen, wenn der Betrag grDßer als 10.000,00 DM ist. Die Markierung wird sowohl in der Formular- als auch in der Datenblattansicht angezeigt. Gerade in der Datenblattansicht eines Formulars ist diese Art der Formatierung sehr n,tzlich, da bestimmte Werte einer Spalte auf diese Weise sehr schnell erkannt werden kDnnen.
Abb. 6.17 Formular mit bedingter Formatierung in der Datenblattansicht
Um eine Markierung wie in Abbildung 6.17 zu erreichen, gehen Sie wie folgt vor:
368
1
Rffnen Sie das Formular Projekte in der Entwurfsansicht.
2
Markieren Sie das Textfeld Ist-Nettobetrag.
3
F,hren Sie den Men,befehl Format > Bedingte Formatierung aus.
4
W!hlen Sie im linken Kombinationsfeld Bedingung 1 den Eintrag Feldwert ist aus.
5
W!hlen Sie im mittleren Kombinationsfeld einen Operator aus, z.B. Gr4ßer als.
Die Steuerelementtypen im Einzelnen
6
Geben Sie im Textfeld rechts neben den Kombinationsfeldern einen Vergleichswert ein, z.B. 10000.
7
Schließen Sie das Fenster Bedingte Formatierung durch Bet!tigen der OK-Taste.
Abb. 6.18 Der Dialog Bedingte Formatierung
Anschließend wechseln Sie in die Formular- oder Datenblattansicht und betrachten das Ergebnis, soweit Sie schon Werte in das Feld Ist-Nettobetrag eingegeben haben, die den Bedingungen entsprechen. Anderenfalls geben Sie einen Wert ein, der die Formatierung auslDst, und betrachten das Ergebnis, welches z.B. wie in Abbildung 6.17 aussehen kDnnte. Sie haben nun eine bedingte Formatierung erstellt, die vom Feldwert des Steuerelements abh!ngt. Es gibt zwei weitere MDglichkeiten, eine bedingte Formatierung zu gestalten. Diese werden weiter unten in diesem Abschnitt beschrieben. Um eine weitere Bedingung hinzuzuf,gen, bet!tigen Sie die Schaltfl!che Hinzuf1gen>> im unteren Bereich des Dialoges Bedingte Formatierung. Hier kDnnen Sie nun z.B. eine Formatierung f,r alle Werte zwischen DM 5.000 und DM 10.000 festlegen. Insgesamt kDnnen Sie drei verschiedene Bedingungen festlegen. Um eine bedingte Formatierung zu entfernen, bet!tigen Sie die Schaltfl!che L4schen. In dem sich Dffnenden Dialog Bedingte Formatierung l4schen kDnnen Sie festlegen, welche der drei Bedingungen gelDscht werden sollen.
Bedingte Formatierung hinzuf gen
Bedingte Formatierung lschen
Abb. 6.19 Lschen von bedingten Formatierungen
369
Formulare
Beachten Sie, dass sich die Wertebereiche f,r die unterschiedlichen Bedingungen nicht ,berschneiden. Dies ist zwar nicht unzul!ssig, aber unsinnig. Falls ein Feld einen Wert enth!lt, der zwei oder mehr Bedingungen erf,llt, wird diesem die Formatierung f,r die erstgenannte Bedingung zugewiesen. Der Dialog Bedingte Formatierung stellt umfangreiche MDglichkeiten zur Definition der Bedingung sowie der Formatierung zur Verf,gung. Sie sollten sich am besten selbst ein wenig mit diesem sehr interessanten Werkzeug besch!ftigen, um alle MDglichkeiten kennen zu lernen. Die Vergleichswerte kDnnen entweder explizit angegeben werden oder ein Feldinhalt sein. Es werden allerdings nur Feldinhalte des aktuellen Datensatzes ber,cksichtigt.
Ausdruck ist
Neben dem Vergleich des Feldwertes mit einem festen Wert oder dem Inhalt eines anderen Feldes dieses Datensatzes kDnnen Sie auch einen Ausdruck als Bedingung heranziehen. Dazu w!hlen Sie im linken Kombinationsfeld der Bedingung den Eintrag Ausdruck ist aus. Im Textfeld neben dem Kombinationsfeld geben Sie dann den gew,nschten Ausdruck ein. Sie kDnnen alle Bedingungen, die mit Feldwert ist beginnen, auch als Ausdruck Ist-Bedingung formulieren. Der Ausdruck f,r das oben angef,hrte Beispiel heißt: [Ist Nettobetrag] > 10000 Der Vorteil der Angabe einer Bedingung auf diese Weise ist, dass nicht unbedingt das betroffene Feld als Vergleichswert dienen muss. Sie kDnnen z.B. dem Feld IstBruttobetrag ein bedingtes Format zuweisen, wenn der Mehrwertsteuersatz Null ist. Dazu verwenden Sie den folgenden Ausdruck: [MwSt] = 0. Abbildung 6.20 zeigt eine bedingte Formatierung, die eine Formatierung des IstBruttobetrages in Abh!ngigkeit des beaufschlagten Mehrwertsteuersatzes bewirkt. In Abbildung 6.21 sehen Sie das Ergebnis der bedingten Formatierung f,r unterschiedliche Mehrwertsteuers!tze. Ist-Bruttobetr!ge, die keinen Mehrwertsteueraufschlag enthalten, sind dabei fett markiert. Die Ist-Bruttobetr!ge mit 7% bzw. 16% Mehrwertsteuer sind kursiv bzw. unterstrichen gekennzeichnet. Die dritte und letzte MDglichkeit, eine bedingte Formatierung zu erwirken, ist die Bedingung Feld hat Fokus. Das bedeutet, dass die gew!hlte Formatierung f,r das zu formatierende Feld immer dann angewandt wird, wenn dieses Feld den Fokus hat. Die bedingte Formatierung kann außer in Textfeldern auch in Kombinationsfeldern eingesetzt werden. Die Anwendungsweise ist identisch, deshalb wird im Abschnitt Kombinations- und Listenfelder nicht weiter auf die bedingte Formatierung eingegangen.
370
Die Steuerelementtypen im Einzelnen
Abb. 6.20 Bedingte Formatierung f r unterschiedliche Mehrwertsteuers!tze
Abb. 6.21 Das Ergebnis der bedingten Formatierung in der Datenblattansicht
Kombinations- und Listenfelder Sie kDnnen Kombinations- und Listenfelder manuell oder ,ber Steuerelement-Assistenten erstellen. Zum manuellen Erstellen von Kombinations- und Listenfeldern m,ssen Sie die Markierung des Symbols Steuerelement-Assistenten in der Toolbox aufheben. Der Kombinationsfeld-Assistent entwirft auf Wunsch ein Kombinationsfeld, mit dem Sie die Suche in der dem Formular zugrunde liegenden Tabelle einfach und schnell erledigen kDnnen. Zum Entwurf eines solchen Kombinationsfeldes markieren Sie auf der ersten Dialogseite des Assistenten die Option Ein Datensatz im Formular, basierend auf dem im Kombinationsfeld gew7hlten Wert suchen.
Assistenten
Tipp
371
Formulare
Nachschlagefelder
Manueller Entwurf
Wenn Sie – wie bei Nachschlagefeldern ,blich – im Tabellenentwurf die Eigenschaft Steuerelement anzeigen eines Datenfeldes auf einen der Werte Kombinationsfeld oder Listenfeld ge!ndert haben, dann kDnnen Sie den Entwurf eines entsprechenden Steuerelements automatisieren. Ziehen Sie dann im Formularentwurf das Datenfeld aus der Feldliste in den Detailbereich. Access entwirft das entsprechende Kombinations- oder Listenfeld dann automatisch. Der Entwurf von Nachschlagefeldern wird in Kapitel 4 Tabellen dieses Buchs ausf,hrlich besprochen. Da außerdem die Steuerelement-Assistenten selbsterkl!rend sind, beschreiben die folgenden Abschnitte den manuellen Entwurf von Kombinations- und Listenfeldern. So lernen Sie die f,r diese Steuerelementtypen wichtigen Eigenschaften am besten kennen. Kombinations- und Listenfelder eignen sich als Eingabehilfe und zur Eingabekontrolle. Kombinationsfelder zeigen ein Eingabefeld an. Klickt der Anwender auf den nach unten zeigenden Pfeil, erfolgt die Anzeige einer Liste. Der Anwender kann dann einen Eintrag der Liste ausw!hlen und Access setzt den Wert des Steuerelements entsprechend. Bei Kombinationsfeldern kDnnen Sie den G,ltigkeitsbereich des Steuerelements auf die Liste beschr!nken oder auch andere Eingaben zulassen. Listenfelder zeigen kein Eingabefeld, sondern stets nur die Liste an. Der Wert des Steuerelements ergibt sich direkt aus dem markierten Eintrag der Liste. Access zeigt stets nur die Eintr!ge eines Listenfeldes an, die in die Grenzen des Steuerelements passen. Listenfelder werden daher in der Regel verh!ltnism!ßig groß dimensioniert, bieten aber den Vorteil, dass sie direkt mehrere Eintr!ge anzeigen. Kombinationsfelder haben den Vorteil, dass sie verh!ltnism!ßig wenig Platz benDtigen. Der Anwender muss jedoch erst auf den nach unten zeigenden Pfeil klicken, um die Liste einsehen zu kDnnen.
Kombinationsfeld erstellen
Die Definition eines Kombinationsfeldes erfolgt ,ber das gleichnamige Symbol der Toolbox. Wenn Sie ein ungebundenes Kombinationsfeld erstellen wollen, dann markieren Sie zun!chst das Symbol, und klicken Sie dann auf die Arbeitsfl!che, oder ziehen Sie einen Rahmen auf. Sp!ter verbinden Sie das Kombinationsfeld dann in der Regel mit einem Datenfeld, indem Sie die Steuerelementinhalt-Eigenschaft auf einen geeigneten Wert setzen. Sie kDnnen das Kombinationsfeld auch direkt mit einem Feld der zugrunde liegenden Tabelle oder Abfrage verbinden. Markieren Sie dazu zun!chst das Kombinationsfeld-Symbol in der Toolbox und ziehen dann einen Eintrag aus der Feldliste auf die Arbeitsfl!che.
Listenfeld erstellen
372
Die Verfahren zur Definition von Listenfeldern sind die gleichen wie bei Kombinationsfeldern. Der Unterschied besteht lediglich darin, dass Sie das Listenfeld-Symbol in der Toolbox markieren m,ssen.
Die Steuerelementtypen im Einzelnen
Der Steuerelementinhalt eines Kombinations- oder Listenfeldes bestimmt, wo Access die Daten speichern soll. Es handelt sich dabei in der Regel um ein Datenfeld der zugrunde liegenden Tabelle oder Abfrage. W!hlen Sie im Eigenschaftenfenster einfach das gew,nschte Datenfeld aus dem Kombinationsfeld Steuerelementinhalt.
Steuerelementinhalt
Ein wichtiger Faktor bei Kombinations- und Listenfeldern sind die Daten, die die Liste anzeigt. Mit der Eigenschaft Herkunftstyp bestimmen Sie, woher die in der Liste angezeigten Daten stammen sollen.
Herkunftstyp
Sehr beliebt sind Tabellen oder Abfragen als Herkunftstyp. Sie eignen sich besonders gut, um Eingaben anhand der Inhalte anderer Tabellen oder Abfragen zu pr,fen. Soll die Liste nur sehr wenige bekannte Eintr!ge enthalten, kDnnen Sie diese auch direkt in das Eigenschaftenfenster eingeben. W!hlen Sie in diesem Fall Wertliste als Herkunftstyp aus. Als dritte MDglichkeit bietet sich die Angabe einer Feldliste als Herkunftstyp an. Die Liste zeigt dann nur die Feldnamen an, die in einer Tabelle oder Abfrage verwendet werden. Die Bedeutung der Eigenschaft Datensatzherkunft ist vom ausgew!hlten Herkunftstyp abh!ngig. Sofern Sie Tabelle/Abfrage oder Feldliste als Herkunftstyp ausgew!hlt haben, sollten Sie den Namen der Tabelle oder Abfrage aus dem Kombinationsfeld ausw!hlen. Spezifizieren Sie dann zus!tzlich die Spaltenanzahl und die Nummer der gebundenen Spalte. Die Angabe einer Abfrage als Datensatzherkunft hat den Vorteil, dass Sie die Datens!tze sortieren lassen und Abfragekriterien definieren kDnnen. Je mehr Kombinationsfelder Sie definieren, desto mehr Abfragen enth!lt Ihre Datenbank. Das f,hrt irgendwann zu einer un,berschaubaren Flut von Abfragen, die lediglich die Basis f,r Formulare bilden. Sie kDnnen dieses Problem lDsen, indem Sie statt eines Abfragenamens eine SELECT-Anweisung als Datensatzherkunft angeben. Klicken Sie dazu auf das Eingabehilfe-Symbol, so dass Access die Entwurfsansicht einer neuen Abfrage Dffnet. Definieren Sie die Abfrage, und schließen Sie anschließend das Abfragefenster. Access ,bernimmt die SELECT-Anweisung der Abfrage dann automatisch in die Eigenschaft Datensatzherkunft.
Datensatzherkunft
Abfragen als Datensatzherkunft
SELECT-Anweisungen als Datensatzherkunft
Sofern Sie sich f,r eine Wertliste als Herkunftstyp entschieden haben, m,ssen Sie die Wertliste in das Feld Datensatzherkunft eingeben. Geben Sie alle Eintr!ge der Liste ein. Trennen Sie die Eintr!ge durch das in den L7ndereinstellungen der Systemsteuerung von Windows definierte Listentrennzeichen. Es handelt sich hierbei in der Regel um ein Semikolon.
373
Formulare
Abb. 6.22 Kombinationsfeld mit SELECT-Anweisung als Datensatzherkunft
Abb. 6.23 Ansicht des Kombinationsfeldes aus Abbildung 6.22
Mehrspaltige Listen
Bei mehrspaltigen Listen geben Sie die Eintr!ge zeilenweise ein. Bei einer zweispaltigen Liste ist die Eingabereihenfolge beispielsweise durch folgendes Schema vorgegeben: "Zeile 1, Spalte 1"; "Zeile 1, Spalte 2"; "Zeile 2, Spalte 1"; "Zeile 2, Spalte 2"; usw. Access w,rde die so definierte Liste zweispaltig anzeigen:
374
Die Steuerelementtypen im Einzelnen
"Zeile 1, Spalte 1" "Zeile 2, Spalte 1"
"Zeile 1, Spalte 2" "Zeile 2, Spalte 2"
usw. Sie m,ssen Listeneintr!ge mit Sonderzeichen in Anf,hrungszeichen setzen. Dies gilt insbesondere f,r solche Listeneintr!ge, die das Listentrennzeichen selbst enthalten.
Abb. 6.24 Kombinationsfeld mit Wertliste als Datensatzherkunft
Abb. 6.25 Ansicht des Kombinationsfeldes aus Abbildung 6.24
Die Spaltenanzahl bestimmt die Anzahl der Spalten, die die Liste anzeigt. Diese Eigenschaft ist daher besonders f,r solche Listen interessant, die ihre Daten aus einer Tabelle oder Abfrage beziehen. Bei Wertlisten muss die Spaltenanzahl mit dem Format der eingegebenen Wertliste ,bereinstimmen. Wenn Sie f,r obiges Beispiel etwa eine Spaltenanzahl von 1 statt 2 eing!ben, w,rde Access folgende einspaltige Liste anzeigen: "Zeile "Zeile "Zeile "Zeile
1, 1, 2, 2,
Spalte Spalte Spalte Spalte
Spaltenanzahl
1" 2" 1" 2"
375
Formulare
Spaltenanzahl bei Feldlisten
Feldlisten zeigen stets nur eine Spalte mit den Feldnamen der angegebenen Tabelle oder Abfrage an. Die Spaltenanzahl muss hier also stets 1 betragen.
Spalten berschriften
Access kann auf Wunsch Spalten,berschriften anzeigen. Die Standardeinstellung f,r diese Eigenschaft lautet Nein. Wenn Sie die Anzeige von Feldnamen als Spalten,berschriften w,nschen, !ndern Sie die Standardeinstellung auf Ja.
Spaltenbreiten
Die Eigenschaft Spaltenbreiten bestimmt die Anzeigebreite f,r jede Spalte der Liste. Sie kDnnen diese Eigenschaft auch dazu verwenden, Spalten auszublenden. Access erwartet die Eingabe der Spaltenbreite in der Einheit, die Sie in den L7ndereinstellungen der Systemsteuerung von Windows festgelegt haben. Sie kDnnen die Einheit bei der Eingabe von Spaltenbreiten jedoch auch angeben. F,gen Sie cm f,r Zentimeter und Zoll f,r das englische Maßsystem hinzu. Sofern die Liste mehrere Spalten anzeigt, kDnnen Sie die Breite jeder einzelnen Spalte individuell bestimmen. Geben Sie in diesem Fall eine Liste der Spaltenbreiten ein und trennen Sie die Eintr!ge durch das in der Systemsteuerung von Windows definierte Listentrennzeichen. Wenn Sie eine Spalte ausblenden wollen, dann geben Sie die Spaltenbreite 0 ein.
Spalten ausblenden
Gebundene Spalte
Das Ausblenden von Spalten ist nur bei solchen Listen interessant, die mehrere Spalten aus einer Tabelle oder Abfrage anzeigen. Access ordnet die Spalten in diesem Fall in der gleichen Reihenfolge an wie in der Datenblattansicht. Geben Sie die Spaltenbreiten in der Reihenfolge von links nach rechts an. Tragen Sie den Wert 0 f,r die Spalten ein, die ausgeblendet werden sollen. Weiter unten in diesem Abschnitt finden Sie ein Beispiel f,r das Ausblenden von Spalten. Die gebundene Spalte definiert die Spalte der Liste, deren Wert in das Steuerelement ,bernommen wird. Tragen Sie die Nummer der gebundenen Spalte in das daf,r vorgesehene Eingabefeld ein. Die gebundene Spalte muss nicht unbedingt in der Liste angezeigt werden. Weiter unten in diesem Abschnitt finden Sie ein Beispiel f,r ein Kombinationsfeld, bei dem die Eintr!ge der Liste von der gebundenen Spalte abweichen.
Zeilenanzahl
Listenbreite
376
Bei Listenfeldern richtet sich die Anzahl der angezeigten Listeneintr!ge nach der GrDße des Steuerelements und der ausgew!hlten SchriftgrDße. Bei Kombinationsfeldern kDnnen Sie die Anzahl der anzuzeigenden Listeneintr!ge selbst festlegen. Der Standardwert ist 8. Bei Listenfeldern ergibt sich die Listenbreite direkt aus der Breite des Steuerelements. Bei Kombinationsfeldern kDnnen Sie hingegen eine Listenbreite angeben, die von der Breite des Steuerelements abweicht. In diesem Fall bestimmt die Listenbreite die Anzeigebreite der Liste, die bei einem Klick auf den nach unten zeigenden Pfeil herunterklappt.
Die Steuerelementtypen im Einzelnen
Geben Sie auch diesen Wert in Zentimetern (cm) oder Zoll (Zoll) an. Bei mehrspaltigen Listen sollte die Listenbreite der Summe der einzelnen Spaltenbreiten plus etwa einem halben Zentimeter f,r die vertikale Rolleiste betragen. Wenn Sie die Standardeinstellung der Listenbreite auf Automatisch belassen, zeigt Access die Liste automatisch in der gleichen Breite an wie das Steuerelement. Kombinationsfelder zeigen ein Eingabefeld und bei Bedarf zus!tzlich die Liste an. Wenn Access nur solche Eingaben erlauben soll, die auch in der Liste vorkommen, dann stellen Sie die Eigenschaft Nur Listeneintr7ge auf Ja. Dies ist bei Kombinationsfeldern zur Eingabepr,fung ,blich.
Nur Listeneintr!ge
Wenn die Liste nur eine Eingabehilfe darstellen soll, dann stellen Sie die Eigenschaft Nur Listeneintr7ge auf Nein. Access erlaubt in diesem Fall auch solche Eingaben, die nicht in der Liste enthalten sind. Wenn Sie ein Kombinationsfeld beispielsweise ,ber die Standardwert-Eigenschaft auf einen anderen Wert als einen Nullwert initialisieren und die Eigenschaft Nur Listeneintr7ge auf Ja eingestellt ist, dann erlaubt Access das Verlassen dieses Kombinationsfeldes nur nach der Auswahl eines g,ltigen Eintrags aus der Liste. Wenn Sie das Kombinationsfeld hingegen auf einen Nullwert initialisieren, dann kann der Anwender das Kombinationsfeld auch nach der Eingabe eines Nullwertes verlassen.
Nullwerte
Bei der Einstellung der Eigenschaft Nur Listeneintr7ge auf Nein kann der Anwender auf jeden Fall Nullwerte eingeben. Unabh!ngig von der Einstellung der Eigenschaft Nur Listeneintr7ge m,ssen Eingaben in das Kombinationsfeld nat,rlich auch die G,ltigkeitsregel erf,llen. Access stellt die Eigenschaft Automatisch erg7nzen standardm!ßig auf Ja ein. Das f,hrt dazu, dass Access bei jedem vom Anwender eingegebenen Zeichen direkt nach einem passenden Eintrag in der Datensatzherkunft sucht und diesen im Kombinationsfeld als Erg!nzung der Eingabe anzeigt. Der Anwender kann seine Eingabe aber dennoch selbst vervollst!ndigen, indem er die automatisch erg!nzten Zeichen ,berschreibt. Wenn Sie dies nicht w,nschen, !ndern Sie die Eigenschaft Automatisch erg7nzen auf Nein. Die folgenden zwei Beispiele beschreiben den manuellen Entwurf zweier Kombinationsfelder. Anhand der Beispiele lernen Sie die Grundlagen des Entwurfs von Kombinationsfeldern kennen. Sie sollten einen Blick auf die beiliegende CD werfen, die einige Microsoft-Journal-Artikel enth!lt. Sie finden dort unter dem Artikelcode Kontaktdatenbank weitere Beispiele zum Entwurf von Kombinationsfeldern. Als erstes Beispiel soll ein Kombinationsfeld erstellt werden, das die Eingabe der Anrede in die Adressentabelle erleichtert. Erstellen Sie mithilfe des Formular-Assistenten ein Standardformular f,r die Adressentabelle. Rffnen Sie dieses Formular in der Entwurfsansicht. Das Formular enth!lt bereits ein Textfeld, das mit dem Feld Anrede der Adressentabelle verbunden ist. Um das Textfeld durch ein Kombinationsfeld zu ersetzen, gehen Sie wie folgt vor:
Automatisch erg!nzen
Tipp
Beispiel f r ein Kombinationsfeld mit Wertliste
377
Formulare
1
Klicken Sie mit der rechten Maustaste auf das Textfeld, um das Kontextmen, zu Dffnen.
2
W!hlen Sie den Befehl Tndern zu > Kombinationsfeld aus dem Kontextmen,.
Dieser Befehl !ndert den Steuerelementtyp auf ein Kombinationsfeld und ,bernimmt – soweit das sinnvoll ist – die Eigenschaften. Das neue Kombinationsfeld ist deshalb ,ber die Steuerelementinhalt-Eigenschaft an das Feld Anrede gebunden.
Herkunftstyp und Datensatzherkunft f r Anrede
Access setzt den Herkunftstyp standardm!ßig auf Tabelle/Abfrage. F,r die Anrede soll jedoch auf Wunsch eine Vorschlagsliste der h!ufigsten Anreden angezeigt werden. W!hlen Sie daher den Eintrag Wertliste als Herkunftstyp aus. Geben Sie dann in das Feld Datensatzherkunft die folgende Liste ein: Frau; Herr; Firma; Liebe; Lieber Diese Liste enth!lt die h!ufigsten Anreden. Da die Liste aus nur einer Spalte besteht, tragen Sie als Spaltenanzahl den Wert 1 ein. Bei einspaltigen Listen ist die Angabe einer Spaltenbreite nicht notwendig. Belassen Sie die Einstellung der Listenbreite auf Automatisch. Schließlich sollten Sie noch sicherstellen, dass die Eigenschaft Nur Listeneintr7ge auf Nein eingestellt ist. So hat der Anwender die MDglichkeit, auch andere Anreden einzugeben.
Aktivierreihenfolge erneuern
Bevor Sie in die Formularansicht wechseln, sollten Sie noch die Reihenfolge der Aktivierung erneuern lassen. W!hlen Sie den Befehl Ansicht > Aktivierreihenfolge aus, und klicken Sie auf die Schaltfl!che Automatisch. Der Wechsel in die Formularansicht f,hrt zur Anzeige des Kombinationsfeldes. Wenn Sie auf den nach unten zeigenden Pfeil klicken, zeigt Access die Liste der h!ufigsten Anredeformen an. W!hlen Sie einen Eintrag aus der Liste oder geben Sie eine neue Anrede ein. Das Beispiel zeigt die Verwendung eines Kombinationsfeldes als Eingabehilfe. Der Anwender kann einerseits einen Eintrag der Liste ausw!hlen, andererseits kann er aber auch Werte eingeben, die in der Liste nicht enthalten sind.
Beispiel f r ein Kombinationsfeld als Eingabepr fung
Hinweis
378
Das zweite Beispiel verwendet ein Kombinationsfeld zum Pr,fen einer Eingabe anhand einer Referenz- oder Nachschlagetabelle. Die Basis des Beispiels ist ein Formular f,r die Projektetabelle. Ein Kombinationsfeld zur Auswahl einer Adresse soll dem Anwender die Zuordnung von Projekten zu Adressen erleichtern. Wenn Sie das Feld Adresse-Nr in der Projektetabelle bereits als Nachschlagefeld definiert haben, entwirft der Formular-Assistent automatisch ein Kombinationsfeld f,r die Auswahl einer Adresse. Das folgende Beispiel geht davon aus, dass kein solches Nachschlagefeld existiert, und beschreibt den manuellen Entwurf eines solchen Kombinationsfeldes. So lernen Sie die Bedeutung der erw!hnten Steuerelementeigenschaften am besten kennen.
Die Steuerelementtypen im Einzelnen
Abb. 6.26 Kombinationsfeld als Eingabehilfe f r eine Anrede
Verwenden Sie den Formular-Assistenten, um ein Standardformular f,r die Projektetabelle zu erstellen. Rffnen Sie dieses Formular in der Entwurfsansicht und wandeln Sie das Steuerelement f,r die Adressennummer in ein Kombinationsfeld um. Access beh!lt die Bindung des Kombinationsfeldes an das Feld Adresse-Nr bei. Die aus der Liste ausgew!hlten Eintr!ge werden also in dem gleichnamigen Datenfeld der Projektetabelle gespeichert. Sie kDnnen die Standardeinstellung des Herkunftstyps auf Tabelle/Abfrage. Da die Liste die Namen aus der Adressentabelle anzeigen soll, w!hlen Sie als Datensatzherkunft die Adressentabelle aus. Die Anordnung der Spalten in der Adressentabelle lautet: Adresse-Nr, Anrede, Name, Straße, PLZ und Ort ... Die erste Spalte der Adressentabelle ist also das Datenfeld Adresse-Nr. Der Inhalt dieses Datenfeldes soll in der Projektetabelle gespeichert werden. Tragen Sie daher den Wert 1 f,r die gebundene Spalte ein. Die Liste soll die Felder Name, Straße, PLZ und Ort anzeigen. Es handelt sich hierbei um die Spaltennummern 3 bis 5. Die Spalten 1 und 2 werden ausgeblendet. Die Spaltenanzahl lautet also 5 und die Liste der Spaltenbreiten sieht wie folgt aus:
Spaltenbreiten des Kombinationsfeldes
0 cm;0 cm;4 cm;3 cm;3 cm Die ersten beiden Spalten werden also nicht mit in der Liste angezeigt. Die Listenbreite berechnet sich aus den Summen der Spaltenbreiten und etwa einem halben Zentimeter f,r die vertikale Rolleiste. Geben Sie den Wert 10,5 cm ein.
379
Formulare
Nur Listeneintr!ge
Da Access nur solche Adressen akzeptieren soll, die auch wirklich angelegt sind, sollten Sie die Eigenschaft Nur Listeneintr7ge auf Ja setzen.
Abb. 6.27 Eigenschaften eines Kombinationsfeldes zum Nachschlagen in der Adressentabelle
Aktivierreihenfolge erneuern
Bevor Sie in die Formularansicht wechseln, sollten Sie noch die Eingabereihenfolge erneuern lassen. W!hlen Sie dazu den Befehl Ansicht > Aktivierreihenfolge, und klicken Sie auf die Schaltfl!che Automatisch. Access zeigt in der Formularansicht ein Kombinationsfeld mit dem Namen der Adresse an, dem das Projekt zugeordnet ist. Das mit dem Steuerelement verbundene Datenfeld speichert jedoch die Adressennummer. Das Beispiel verdeutlicht, dass die gebundene Spalte durchaus von den in der Liste angezeigten Spalten abweichen kann.
Abb. 6.28 Kombinationsfeld zum Nachschlagen einer Adresse
380
Die Steuerelementtypen im Einzelnen
Die Zuordnung einer Adresse zu einem Projekt ist jetzt nur noch durch die Eingabe oder Auswahl eines Namens aus der Liste mDglich. Das Formular sieht keine MDglichkeit zur direkten Eingabe einer Adressennummer mehr vor. Sie kDnnen das Feld Adresse-Nr aber in die Liste des Kombinationsfeldes aufnehmen, so dass sie zumindest eingesehen werden kann.
Kontrollk%stchen, Optionsfelder und Umschaltfl%chen Kontrollk!stchen, Optionsfelder und Umschaltfl!chen eignen sich zur Anzeige von Ja/Nein-Werten. Wie Ja/Nein-Felder kDnnen auch diese Steuerelemente zwei Zust!nde annehmen. Wenn Sie Kontrollk!stchen, Optionsfelder und Umschaltfl!chen mit anderen Felddatentypen verbinden, tr!gt Access den Wert -1 f,r Ja oder Wahr und den Wert 0 f,r Nein oder Falsch ein. Wenn Sie die Eigenschaft Dreifacher Status auf Ja !ndern, kann das entsprechende Steuerelement als dritten Status einen Nullwert erhalten.
Ja/Nein-Werte anzeigen
Abb. 6.29 Optionsfelder, Kontrollk!stchen und Umschaltfl!chen (mit Text und Grafik)
Mit der Eigenschaft Dreifacher Status bestimmen Sie, wie ein Kontrollk!stchen, ein Optionsfeld oder eine Umschaltfl!che auf Nullwerte reagiert. Bei der Einstellung dieser Eigenschaft auf den Wert Nein zeigt Access das Steuerelement bei Nullwerten genauso wie beim logischen Wert Nein an. 0ndern Sie die Eigenschaft Dreifacher Status auf den Wert Ja, kDnnen Sie die Stati Ja, Nein und Nullwert an der Anzeige des Steuerelements erkennen. Dieser Modus gibt Ihnen gleichzeitig die MDglichkeit, den Wert des Steuerelements auch auf einen Nullwert zu !ndern.
Nullwerte
Bei der Verwendung von Kontrollk!stchen, Optionsfeldern und Umschaltfl!chen in Optionsgruppen spielt die Eigenschaft Dreifacher Status keine Rolle. Hinweis Wenn ein Kontrollk!stchen, ein Optionsfeld oder eine Umschaltfl!che sehr h!ufig den gleichen Wert annimmt, sollten Sie einen Standardwert definieren. Tragen Sie in die gleichnamige Eigenschaft den Wert Ja oder den Wert Nein ein. Die Formular-Assistenten von Access erstellen f,r Ja/Nein-Felder standardm!ßig Kontrollk!stchen. Das liegt daran, dass die Kontrollk!stchen die effektivste Darstellungsform f,r Ja/Nein-Felder bilden. Sie benDtigen wenig Platz und der Zustand des Feldes ist auf einen Blick erkennbar. Der angekreuzte Zustand entspricht dem Wert Ja und der leere Zustand dem Wert Nein.
Standardwert
Kontrollk!stchen erstellen
381
Formulare
Das Erstellen eines Kontrollk!stchens erfolgt ,ber das gleichnamige Symbol der Toolbox. Klicken Sie nach der Auswahl des Symbols entweder auf einen leeren Bereich der Arbeitsfl!che oder ziehen Sie einen Eintrag aus der Feldliste. Die interessanten Eigenschaften eines Kontrollk!stchens sind der Steuerelementinhalt und die Beschriftung. Sie sollten die Beschriftung des Kontrollk!stchens mDglichst so w!hlen, dass der Anwender die Bedeutung des K!stchens schnell erkennen kann. Verwenden Sie gegebenenfalls den Statuszeilentext f,r weitere Erl!uterungen.
Optionsfeld erstellen
Das Erstellen eines Optionsfeldes erfolgt ,ber das gleichnamige Symbol der Toolbox. Markieren Sie das Symbol und klicken Sie auf die Arbeitsfl!che oder ziehen Sie einen Eintrag aus der Feldliste. Das Optionsfeld enth!lt den Wert Ja oder Wahr, wenn es einen Punkt enth!lt. Andernfalls enth!lt das Optionsfeld den Wert Nein oder Falsch. Sie sollten darauf achten, dass Sie Optionsfelder und Kontrollk!stchen nicht zu stark mischen. Das Formular wird sonst un,bersichtlich, was leicht zu Fehleingaben f,hren kann. Verwenden Sie im Zweifelsfall lieber Kontrollk!stchen.
Umschaltfl!che erstellen
Das Erstellen einer Umschaltfl!che erfolgt ,ber das gleichnamige Symbol der Toolbox. Markieren Sie das Symbol und klicken Sie auf die Arbeitsfl!che oder ziehen Sie einen Eintrag aus der Feldliste. Die vertiefte Anzeige der Umschaltfl!che entspricht dem Wert Ja oder Wahr. Der Wert Nein oder Falsch wird durch die erhDhte Anzeige der Umschaltfl!che repr!sentiert. Die Unterscheidung der beiden Zust!nde ist bei freistehenden Umschaltfl!chen etwas schwierig. Umschaltfl!chen sollten daher generell neben anderen Umschaltfl!chen angeordnet werden. Wenn das nicht mDglich ist, verwenden Sie besser Kontrollk!stchen oder Optionsfelder.
Beschriftung einer Umschaltfl!che
Sie kDnnen einer Umschaltfl!che entweder eine Beschriftung oder eine BitmapGrafik zuweisen. Access zeigt die Beschriftung auf der Umschaltfl!che an. Wenn Sie das Steuerelement markieren, kDnnen Sie die Schriftart und -grDße der Beschriftung !ndern. Sollte der Platz zur Anzeige der Beschriftung auf der Umschaltfl!che nicht ausreichen, schneidet Access den ,bersch,ssigen Text ab. Mit der Eigenschaft Bild kDnnen Sie die Umschaltfl!che auch mit einer Grafik hinterlegen. Geben Sie das Laufwerk, den Pfad und den Dateinamen einer .bmp- oder .ico-Datei in das Eigenschaftenfeld ein. Alternativ kDnnen Sie auch auf das EditorSymbol klicken, so dass Access den Bildauswahl-Editor startet. Er h!lt eine Bibliothek von vordefinierten Bildern f,r Schaltfl!chen bereit. Außerdem kDnnen Sie ,ber die Schaltfl!che Durchsuchen eine Auswahlliste von .bmp- und .ico-Dateien Dffnen.
382
Die Steuerelementtypen im Einzelnen
Abb. 6.30 Bild f r eine Umschaltfl!che ausw!hlen
Sollte die Grafik nicht in die Objektgrenzen passen, schneidet Access ,bersch,ssige Teile ab. Verwenden Sie gegebenenfalls ein geeignetes Grafikprogramm, um die Grafik zu stauchen oder andere Ausschnitte auszuw!hlen und als neue .bmp-Datei abzuspeichern. Sollten Sie sowohl eine Beschriftung als auch ein Bild angeben, zeigt Access nur das Bild an.
Bild
Optionsgruppen Eine Optionsgruppe fasst mehrere Kontrollk!stchen, Optionsfelder oder Umschaltfl!chen zu einer Alternative zusammen. Klickt der Anwender auf eine der Optionen der Gruppe, wird bei gebundenen Optionsgruppen dem verbundenen Datenfeld ein Wert zugewiesen. Welcher Wert das ist, legen Sie mit der Optionswert-Eigenschaft jeder einzelnen Option fest. Bei ungebundenen Optionsgruppen speichert Access den jeweils aktuellen Wert im Steuerelement. Der wesentliche Unterschied einer Optionsgruppe zu einzelnen Kontrollk!stchen, Optionsfeldern oder Umschaltfl!chen besteht darin, dass die Optionen einer Gruppe Alternativen bilden. Der Anwender kann nur genau eine der Alternativen anklicken und bestimmt damit den Wert des verbundenen Datenfeldes.
Gruppen von Kontrollk!stchen, Optionsfeldern und Umschaltfl!chen
Alternativen
Eine Einschr!nkung bei Optionsgruppen besteht darin, dass dem verbundenen Datenfeld nur numerische Werte zugewiesen werden kDnnen. Das Zuweisen von Zeichenketten ,ber Optionsgruppenfelder ist von Access nicht vorgesehen. Sie kDnnen Optionsgruppen manuell oder ,ber einen Steuerelement-Assistenten erstellen. Zum manuellen Erstellen einer Optionsgruppe m,ssen Sie die Markierung des Symbols Steuerelement-Assistenten in der Toolbox aufheben. Da der Steuerelement-Assistent selbsterkl!rend ist, konzentrieren sich die folgenden Ausf,hrungen auf das manuelle Erstellen von Optionsgruppen. Zum Erstellen eines Optionsgruppenfeldes markieren Sie zun!chst das gleichnamige Symbol der Toolbox. Klicken Sie dann auf die Arbeitsfl!che, oder ziehen Sie einen Rahmen auf. Bestimmen Sie anschließend mit der Eigenschaft Steuerelementinhalt das Datenfeld, in dem Access den Wert der ausgew!hlten Option speichern soll.
Optionsgruppe erstellen
383
Formulare
Abb. 6.31 Eine Optionsgruppe zur Farbauswahl
Da Optionsgruppenfelder in der Regel mit einem Datenfeld verbunden werden, eignet sich auch hier die Verwendung der Feldliste. Markieren Sie zun!chst das Optionsgruppen-Symbol in der Toolbox und ziehen dann ein Feld aus der Liste auf die Arbeitsfl!che. Access erstellt ein Optionsgruppenfeld und verbindet es mit dem Datenfeld. Die Optionsgruppe besteht aus einem Rahmen und einem Beschriftungsfeld. Sie kDnnen die Beschriftung wie gewohnt !ndern, andere Farben oder Schriften zuweisen. Bei Bedarf l!sst sich das Beschriftungsfeld auch lDschen.
Optionsfelder
Dem Rahmen kommt eine besondere Bedeutung zu. Wenn Sie innerhalb des Rahmens Kontrollk!stchen, Optionsfelder oder Umschaltfl!chen erstellen, werden diese automatisch der Optionsgruppe zugeordnet. Markieren Sie zun!chst eines der Symbole f,r Kontrollk!stchen, Optionsfelder oder Umschaltfl!chen in der Toolbox und klicken dann innerhalb des Rahmens. Sobald der Mauszeiger die Objektgrenzen der Optionsgruppe erreicht, markiert Access das Optionsgruppenfeld und hinterlegt es mit einer grauen Schattierung. Klicken Sie dann mit der linken Maustaste, um das neue Steuerelement zu plazieren. Kontrollk!stchen, Optionsfelder und Umschaltfl!chen haben als Bestandteil einer Optionsgruppe andere Eigenschaften, als außerhalb von Optionsgruppen. Da bereits die Optionsgruppe mit einem Datenfeld verbunden wurde, fehlt die Eigenschaft Steuerelementinhalt bei den Steuerelementen in der Optionsgruppe. Aus dem gleichen Grund fehlt die Eigenschaft Dreifacher Status.
Optionswert
Stattdessen finden Sie die Eigenschaft Optionswert. Geben Sie in dieses Feld den numerischen Wert ein, den Access bei der Auswahl der Option dem mit dem Optionsgruppenfeld verbundenen Datenfeld zuweisen soll. Access vergibt die Optionswerte standardm!ßig automatisch. Die erste Option einer Gruppe erh!lt den Optionswert 1, die zweite Option den Wert 2, usw. 0ndern Sie die Werte so, dass sie zu Ihrer Anwendung passen.
384
Die Steuerelementtypen im Einzelnen
Die Optionen einer Gruppe dienen nat,rlich nicht nur der Dateneingabe, sondern auch der Datenanzeige. Wenn das Formular einen neuen Datensatz darstellt, markiert Access automatisch die Option, die dem Wert des gebundenen Datenfeldes entspricht. Wird eine Option der Gruppe besonders h!ufig benutzt, kDnnen Sie die Dateneingabe durch die Festlegung eines Standardwertes erleichtern. Markieren Sie das Optionsgruppenfeld und geben Sie einen numerischen Wert als Standardwert ein. Dieser Wert sollte nat,rlich einem der Optionswerte der Gruppe entsprechen. Sie sollten f,r Felder, deren Wertemenge begrenzt ist, generell eine G,ltigkeitsregel definieren. Ansonsten kann der Fall eintreten, dass dem Feld beispielsweise in der Datenblattansicht ein Wert zugewiesen wird, der gar nicht vorgesehen ist. Wird dieser Datensatz dann im Formular angezeigt, entspricht keine der Optionen der Gruppe dem Feldwert. Access markiert in diesem Fall auch keine der Optionen. Diese Inkonsistenz l!sst sich wie gesagt am besten mit einer G,ltigkeitsregel verhindern.
Standardwert
Hinweis
Befehlsschaltfl%chen Befehlsschaltfl!chen veranlassen Aktionen, die ausgehend vom aktuellen Formular ausgef,hrt werden. Beispiele f,r typische Aktionen sind das Schließen, Rffnen und Drucken von Formularen und Berichten. Aber auch das Suchen nach Daten und die Durchf,hrung bestimmter Datensatzmanipulationen werden h!ufig ,ber Befehlsschaltfl!chen realisiert. Zur Formulierung dieser Aktionen steht Ihnen der gesamte Umfang von Makros und VBA zur Verf,gung. Aber auch ohne Programmierkenntnisse kDnnen Sie zahlreiche Aufgaben ,ber Befehlsschaltfl!chen erledigen lassen. Ein Assistent h!lt n!mlich eine reichlich ausgestattete Palette vordefinierter Befehlsschaltfl!chen f,r Sie bereit. Zum Entwurf einer Befehlsschaltfl!che mit dem Steuerelement-Assistenten von Access gehen Sie wie folgt vor: 1
Markieren Sie in der Toolbox das Symbol Steuerelement-Assistenten.
2
Markieren Sie in der Toolbox das Symbol Befehlsschaltfl7che.
3
Klicken Sie auf die Arbeitsfl!che, um den Befehlsschaltfl!chen-Assistenten zu starten.
4
W!hlen Sie eine der aufgef,hrten Kategorien f,r Befehlsschaltfl!chen aus der Liste.
5
Markieren Sie eine der aufgef,hrten Aktionen.
Befehlsschaltfl!che erstellen
385
Formulare
Abb. 6.32 Formular mit Befehlsschaltfl!chen
Steuerelement und Programmcode
Aktionen
AutoW!hler
386
6
Klicken Sie auf die Schaltfl!che Weiter.
7
Folgen Sie den Anweisungen des Befehlsschaltfl!chen-Assistenten.
Der Assistent entwirft jeweils ein Befehlsschaltfl!chen-Steuerelement und den Programmcode, der f,r die Durchf,hrung einer Aktion notwendig ist. Die Anbindung des Programmcodes erfolgt dabei ,ber die Ereignis-Eigenschaft Beim Klicken der Befehlsschaltfl!che. Pber den Assistenten kDnnen Sie Befehlsschaltfl!chen f,r eine ganze Reihe interessanter Aktionen abfrufen. Sie finden eine Pbersicht aller vordefinierten Befehlsschaltfl!chen und der entsprechenden Aktionen in den Abbildungen 6.33 und 6.34. Die meisten Aktionen des Befehlsschaltfl!chen-Assistenten sind selbsterkl!rend. So f,hrt beispielsweise die Aktion Formular 4ffnen zum Rffnen eines Formulars. Welches Formular das ist, bestimmen Sie ,ber einen weiteren Dialog des Assistenten, der eine Auswahlliste aller Formulare der aktuellen Datenbank enth!lt. An dieser Stelle soll die in der Kategorie Diverse enthaltene Aktion AutoW7hler noch erw!hnt werden. Wenn Sie ,ber ein Modem verf,gen und dieses richtig mit Ihrem PC verkabelt ist, kDnnen Sie mit dieser Aktion eine in der Datenbank gespeicherte Telefonnummer automatisch w!hlen lassen.
Die Steuerelementtypen im Einzelnen
Abb. 6.33 Aktionen des Befehlsschaltfl!chen-Assistenten, Teil 1
Abb. 6.34 Aktionen des Befehlsschaltfl!chen-Assistenten, Teil 2
Bevor Sie den AutoW7hler nutzen kDnnen, benDtigen Sie zun!chst ein Formular mit einem Steuerelement, das Telefonnummern enth!lt. Starten Sie in der Entwurfsansicht dann den Befehlsschaltfl!chen-Assistenten, und w!hlen Sie in der Kategorie Diverse die Aktion AutoW7hler. Um den Entwurf der Befehlsschaltfl!che abzuk,rzen, kDnnen Sie direkt auf die Schaltfl!che Fertig stellen klicken. Der Ablauf zum W!hlen einer Telefonnummer beginnt mit dem Wechsel in die Formularansicht. Dort aktivieren Sie das Steuerelement, das die gew,nschte Telefonnummer enth!lt, und klicken auf das Telefon-Symbol. Access Dffnet dann automatisch den Dialog AutoW7hler und zeigt die zuvor markierte Telefonnummer als Vorgabe an. Ein Klick auf die Schaltfl!che OK startet dann den Wahlvorgang.
387
Formulare
Abb. 6.35 Der AutoW!hler von Access
AutoW!hler konfigurieren
Befehlsschaltfl!chen manuell erstellen
Tipp
Beschriftung und Bild
Access verwendet zum W!hlen das unter Windows konfigurierte Standard-Modem. Wenn Sie die Konfiguration !ndern wollen, klicken Sie auf die Schaltfl!che Einrichten. Access startet das Programm Modems aus der Systemsteuerung von Windows. Mit dem Dialog Eigenschaften von Modem kDnnen Sie dann alle relevanten Modemparameter konfigurieren. Wenn Sie eine Befehlsschaltfl!che manuell, also ohne Assistent, entwerfen wollen, gehen Sie wie folgt vor: 1
Heben Sie die Markierung des Symbols Steuerelement-Assistenten in der Toolbox auf.
2
Markieren Sie in der Toolbox das Symbol Befehlsschaltfl7che.
3
Klicken Sie auf die Arbeitsfl!che, um die Befehlsschaltfl!che anzuordnen.
Eine Befehlsschaltfl!che, die ein bereits in der Datenbank vorhandenes Makro ausf,hren soll, kDnnen Sie schnell und einfach mit der Maus entwerfen. Ziehen Sie dazu das Makro aus dem Datenbank- in das Entwurfsfenster. Access entwirft dann automatisch ein Befehlsschaltfl7che-Steuerelement und verbindet es ,ber das BeimKlicken-Ereignis mit dem entsprechenden Makro. Befehlsschaltfl!chen lassen sich mit einer Beschriftung oder einer Bitmap-Grafik anzeigen. Die beiden Eigenschaften Beschriftung und Bild haben die gleiche Bedeutung wie bei Umschaltfl!chen (siehe oben). Geben Sie entweder einen Text als Beschriftung oder das Laufwerk, den Pfad und den Dateinamen einer .bmp- oder .ico-Datei als Bild ein. Access zeigt dann entweder die Beschriftung oder das Bild an.
388
Die Steuerelementtypen im Einzelnen
Alternativ kDnnen Sie auch auf das Editor-Symbol klicken, so dass Access den Bildauswahl-Editor startet. Er h!lt eine Bibliothek von vordefinierten Bildern f,r Schaltfl!chen bereit. Außerdem kDnnen Sie ,ber die Schaltfl!che Durchsuchen eine Auswahlliste von .bmp- und .ico-Dateien Dffnen. Mit der Eigenschaft Beim Klicken bestimmen Sie das Makro oder die Funktion, die beim Anklicken der Befehlsschaltfl!che ausgef,hrt werden soll. W!hlen Sie ein Makro aus dem Kombinationsfeld oder geben Sie den Namen einer in VBA erstellten Funktion ein. Zur besseren Unterscheidung zwischen Makros und Funktionsnamen m,ssen Sie dem Funktionsnamen ein Gleichheitszeichen voranstellen. Außerdem sind Funktionsnamen durch eine sich Dffnende und eine sich schließende runde Klammer zu erg!nzen. Transparente Befehlsschaltfl!chen eignen sich bei Formularen, die mit einem Bild hinterlegt sind. Obwohl die transparenten Befehlsschaltfl!chen nicht sichtbar sind, kDnnen sie dennoch angeklickt werden. So entsteht der Eindruck, als ließen sich bestimmte Bereiche des Bildes anklicken. Transparente Befehlsschaltfl!chen bilden damit eine MDglichkeit zur grafischen Gestaltung von Formularen. F,r Formulare, die neben Befehlsschaltfl!chen auch andere Steuerelemente enthalten, kDnnen Sie bestimmen, dass eine Schaltfl!che beim Bet!tigen der -Taste automatisch ausgew!hlt wird. Stellen Sie f,r diese Schaltfl!che die Eigenschaft Standard auf Ja.
Beim Klicken
Transparent
Bei Eingabetaste
Bet!tigt der Anwender w!hrend der Bearbeitung des Formulars die -Taste, f,hrt Access automatisch das Makro oder die Funktion der Schaltfl!che aus, bei der die Eigenschaft Standard auf Ja eingestellt ist. Diese Schaltfl!che wird daher auch Standardschaltfl!che genannt. Um Verwechslungen zu vermeiden, sollten Sie die Eigenschaft Bei Eingabetaste nur f,r eine Befehlsschaltfl!che eines Formulars aktivieren. Hinweis Die Eigenschaft Abbrechen ist mit der Eigenschaft Bei Eingabetaste eng verwandt. Aktivieren Sie diese Eigenschaft f,r diejenige Schaltfl!che des Formulars, deren Makro oder Funktion automatisch beim Bet!tigen der E-Taste ausgef,hrt werden soll. In der Standardeinstellung f,hrt das Anklicken einer Befehlsschaltfl!che zum einmaligen Ausf,hren des angegebenen Makros oder der Funktion. Wenn Sie die Eigenschaft Makro wiederholen auf Ja !ndern, wiederholt Access das Makro, solange die linke Maustaste auf der Schaltfl!che gedr,ckt bleibt. Mit den beiden Eigenschaften Hyperlink-Adresse und Hyperlink-Unteradresse ordnen Sie einer Befehlsschaltfl!che einen Hyperlink zu. Wenn der Anwender sp!ter in der Formularansicht auf die Befehlsschaltfl!che klickt, Dffnet Access den Hyperlink. Sie haben folgende MDglichkeiten, eine Befehlsschaltfl!che mit Hyperlink zu erstellen:
Bei Taste ESC
Makro wiederholen
Hyperlinks in Befehlsschaltfl!chen
389
Formulare
Geben Sie Werte direkt in die beiden Eigenschaften Hyperlink-Adresse und Hyperlink-Unteradresse ein oder klicken Sie auf das Eingabehilfe-Symbol einer der beiden Eigenschaften, damit Access den Dialog Hyperlink einf1gen bzw. Hyperlink bearbeiten Dffnet. Ein Hyperlink besteht aus einer Adresse, einer Unteradresse und einem Anzeigetext. Die ersten beiden Komponenten legen Sie direkt ,ber die Eigenschaften HyperlinkAdresse und Hyperlink-Unteradresse fest. Mit der Eigenschaft Beschriftung definieren Sie den Anzeigetext des Hyperlinks.
Hinweis
Eine Beschreibung der Komponenten von Hyperlinks und des Dialogs Hyperlink einf1gen finden Sie in Kapitel 4 Tabellen unter der Pberschrift Hyperlinks in einer Tabelle speichern.
Unterformulare und -berichte Unterformulare
Unterformulare sind eigenst!ndige Formulare innerhalb eines Hauptformulars. So kann beispielsweise ein Hauptformular eine Adresse anzeigen, w!hrend das Unterformular die mit dieser Adresse verkn,pften Projekte enth!lt. Unterformulare eignen sich daher zum Erstellen von Formularen f,r Tabellen, die in einer 1:n-Beziehung zueinander stehen. Das Hauptformular stellt dabei in der Regel einen Datensatz aus der Master- und das Unterformular mehrere Datens!tze aus der Detailtabelle dar.
Abb. 6.36 Haupt- und Unterformular f r 1:n-verkn pfte Tabellen
390
Die Steuerelementtypen im Einzelnen
Als Hauptformular kDnnen Sie jedes beliebige Formular verwenden. Das Formular wird dadurch zum Hauptformular, dass Sie in der Entwurfsansicht ein Steuerelement f,r Unterformulare oder -berichte erstellen. Außerdem zeigt das Hauptformular in der Regel einen Datensatz aus der Master-Tabelle (1-Seite) zweier relational verkn,pften Tabellen, w!hrend das Unterformular einen oder mehrere Datens!tze aus der Detailtabelle (n-Seite) darstellt.
Hauptformulare
Sie kDnnen ein Unterformular manuell oder ,ber den daf,r vorgesehenen Assistenten entwerfen. Zum Entwurf eines Unterformulars ,ber den Assistenten gehen Sie wie folgt vor: 1
Rffnen Sie das Formular (z.B. Adressen), das zum Hauptformular werden soll, in der Entwurfsansicht.
2
Markieren Sie in der Toolbox das Symbol Steuerelement-Assistenten.
3
Markieren Sie in der Toolbox das Symbol Unterformular/-bericht.
4
Klicken Sie an der Position des Arbeitsbereichs, an der Sie das Unterformular anordnen wollen.
5
Folgen Sie den Anweisungen des Assistenten.
Abb. 6.37 Entwurf eines Unterformulars via Assistent
391
Formulare
Mit dem Unterformular-Assistenten kDnnen Sie ein bestehendes Formular einbinden oder eine Tabelle oder Abfrage als Datenherkunft f,r ein neu zu entwerfendes Unterformular bestimmen. Wenn Sie sich f,r eine Tabelle oder Abfrage entscheiden, kDnnen Sie die Felder ausw!hlen, die innerhalb des Unterformulars angezeigt werden sollen. Des Weiteren haben Sie die MDglichkeit, eines oder mehrere Datenfelder zu bestimmen, die der Verkn,pfung von Haupt- und Unterformular dienen. Der Assistent setzt diese Datenfelder automatisch in die Formulareigenschaften Verkn1pfen von und Verkn1pfen nach ein.
Unterformulare optimieren
Der Unterformular-Assistent kann diese Verkn,pfung jedoch nur dann herstellen, wenn Sie das Nachschlagefeld der Detailtabelle (z.B. Projekte) in die Feldliste des Hauptformulars ,bernehmen. Bei der Verkn,pfung von Adressen und Projekten ist hiermit das Feld Adresse-Nr aus der Projektetabelle gemeint. In der Darstellung des Unterformulars ist dieses Feld jedoch ,berfl,ssig, da es – gerade aufgrund der relationalen Verkn,pfung – f,r alle verkn,pften Projekte denselben Wert anzeigt.
Abb. 6.38 Unntige Wiederholung des Referenzfeldes Adresse-Nr im Unterformular
Um solche unnDtigen Wiederholungen des Referenzfeldes zu verhindern, ist es empfehlenswert, das Verkn,pfungsfeld wieder aus dem Unterformular zu entfernen. Sie erreichen dies, indem Sie wie folgt vorgehen:
392
1
Wechseln Sie in die Entwurfsansicht des Hauptformulars.
2
F,hren Sie einen Klick auf das Unterformular-Objekt durch.
3
LDschen Sie das Bezeichnungsfeld und das Textfeld f,r die Anzeige der Adressennummer.
4
Verschieben Sie die verbleibenden Steuerelemente nach links.
5
Wechseln Sie in die Formularansicht des Hauptformulars.
Die Steuerelementtypen im Einzelnen
Sie werden feststellen, dass die Verkn,pfung zwischen Haupt- und Unterformular weiterhin funktioniert. Die Ursache hierf,r besteht darin, dass das Feld Adresse-Nr weiterhin in der Datenherkunft des Unterformulars enthalten ist. Außer mit dem Unterformular-Assistenten kDnnen Sie die Kombination von Hauptund Unterformular auch direkt mit dem Formular-Assistenten von Access entwerfen. In Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs finden Sie weitere Beispiele zu diesem Thema. Die folgenden Abschnitte konzentrieren sich auf den manuellen Entwurf von Unterformularen. In diesem Zusammenhang lernen Sie die relevanten Eigenschaften von Haupt- und Unterformularen kennen, was Ihnen auch das Verst!ndnis der genannten Assistenten erleichtert.
Unterformulare manuell entwerfen
Zum manuellen Entwurf eines Unterformulars gehen Sie wie folgt vor: 1
Rffnen Sie das Formular (z.B. Adressen), das zum Hauptformular werden soll, in der Entwurfsansicht.
2
Heben Sie in der Toolbox die Markierung des Symbols Steuerelement-Assistenten auf.
3
Markieren Sie in der Toolbox das Symbol Unterformular/-bericht.
4
Klicken Sie an der Position des Arbeitsbereichs, an der Sie das Unterformular anordnen wollen, oder ziehen Sie einen entsprechend dimensionierten Rahmen auf.
5
Rffnen Sie dann das Eigenschaftenfenster f,r das neue Unterformular-Steuerelement.
6
Markieren Sie das Register Daten.
7
W!hlen Sie aus dem Kombinationsfeld Herkunftsobjekt den Namen des Unterformulars aus.
Als Alternative kDnnen Sie auch ein Formular aus dem Datenbankfenster in die Entwurfsansicht eines Hauptformulars ziehen. Aktivieren Sie mit der ?-Taste das Datenbankfenster, und klicken Sie auf das Formular-Symbol. Ziehen Sie dann das Formular, das Sie als Unterformular verwenden wollen, in das Hauptformular. Access behandelt Unterformulare als eigenst!ndige Formulare innerhalb des Hauptformulars. Sie werden daher im Hauptformular genau so angezeigt wie beim Rffnen aus dem Datenbankfenster. In der Formularansicht wirken sich die Befehle der Men,leiste nur auf das aktive Formular aus.
Tipp
Verwenden von Haupt- und Unterformular
Wenn Sie das Hauptformular markieren wollen, klicken Sie auf den Formularhintergrund oder das K!stchen in der linken oberen Ecke des Formularfensters. Wollen Sie das Unterformular markieren, klicken Sie auf das K!stchen in der linken oberen Ecke des Unterformulars. 393
Formulare
Verkn pfen von Haupt- und Unterformular
Solange Sie das Haupt- und das Unterformular nicht verkn,pft haben, besteht kein Bezug zwischen den beiden Formularen. Die Auswahl von Datens!tzen erfolgt unabh!ngig voneinander. Dies gilt auch dann, wenn beide Formulare auf Tabellen basieren, f,r die referenzielle Integrit!t definiert wurde. Die Kombination von Haupt- und Unterformularen eignet sich besonders gut f,r die Darstellung von verkn,pften Tabellen. Das Hauptformular zeigt dann die Daten aus der Master- und das Unterformular die Daten aus der Detailtabelle an. Ein Beispiel f,r ein solches Formular finden Sie in Kapitel 3 Daten auswerten und pr7sentieren unter der Pberschrift Formular f1r verkn1pfte Tabellen.
Verkn pfen von und Verkn pfen nach
In den meisten F!llen soll das Unterformular nur diejenigen Datens!tze anzeigen, die dem Datensatz des Hauptformulars zugeordnet sind. Sie m,ssen die beiden Formulare also verkn,pfen. Rffnen Sie dazu das Eigenschaftenfenster des Unterformulars. Tragen Sie in die Eigenschaft Verkn1pfen von das Referenzfeld des Unterformulars und in die Eigenschaft Verkn1pfen nach das Referenzfeld des Hauptformulars ein. Diese Felder haben h!ufig denselben Namen. Wenn Sie ein Formular aus dem Datenbankfenster in das Hauptformular ziehen, tr!gt Access die Verkn,pfungseigenschaften h!ufig automatisch ein. Voraussetzung hierf,r ist, dass beide Formulare auf Tabellen und nicht auf Abfragen basieren. Außerdem m,ssen Sie entweder eine Beziehung definiert haben oder Access findet zwei gleichnamige Datenfelder. Das Datenfeld des Hauptformulars muss dabei gleichzeitig den Prim!rschl,ssel der zugrunde liegenden Tabelle bilden. Wenn Sie die Verkn,pfung durchgef,hrt haben und in die Formularansicht wechseln, zeigt das Unterformular nur noch diejenigen Datens!tze an, die mit dem Datensatz des Hauptformulars verkn,pft sind.
&ndern des Unterformulars
Sobald das Unterformular eingebunden ist, sollten Sie es an das Layout des Hauptformulars anpassen. Bis zur Version Access 97 war es erforderlich, einen Doppelklick auf das Steuerelement f,r das Unterformular auszuf,hren, um es in der Entwurfsansicht zu Dffnen. Seit Access 2000 ist dies nicht mehr notwendig. Hier wird das Unterformular parallel zum Hauptformular in der Entwurfsansicht dargestellt (siehe Abbildung 6.39). Um die Steuerelemente des Unterformulars zu bearbeiten, m,ssen Sie das Unterformular zuvor per Mausklick aktivieren. Um anschließend das Hauptformular zu bearbeiten, aktivieren Sie auch dieses per Mausklick. Auch das Anpassen von Eigenschaften wie GrDße oder Ausrichtung kann wie im Hauptformular erfolgen. Allerdings ist die Ausrichtung von Elementen des Hauptan Elementen des Unterformulars oder umgekehrt nicht mDglich, da nicht gleichzeitig Steuerelemente des Haupt- und des Unterformulars geDffnet sein kDnnen. Alternativ kDnnen Sie das Unterformular nach wie vor auch vom Datenbankfenster aus Dffnen.
394
Die Steuerelementtypen im Einzelnen
Abb. 6.39 Unterformular als Objekt des Hauptformulars in der Detailansicht
Da das Unterformular ein eigenst!ndiges Formular ist, kDnnen Sie die 0nderungen wie an jedem anderen Formular vornehmen. Rffnen Sie das Formular aus dem Datenbankfenster in der Entwurfsansicht, und !ndern Sie die Steuerelement-, Bereichs- und Formulareigenschaften. Die 0nderungen wirken sich automatisch bei der Anzeige des Hauptformulars aus, wenn Sie das n!chste Mal in dessen Formularansicht wechseln. Bei Unterformularen sind einige Formulareigenschaften besonders interessant. So Dffnet Access das Unterformular automatisch in der Standardansicht. Wenn Sie die Standardansicht auf Datenblatt !ndern, wird das Unterformular automatisch als Tabelle angezeigt. W!hrend ein Steuerelement aus einem Unterformular aktiviert ist, steht der Befehl Ansicht > Unterformulardatenblatt zur Verf,gung. Mithilfe dieses Befehls kann der Anwender zwischen der Datenblatt- und der Formularansicht des Unterformulars wechseln. Wenn Sie dies unterbinden wollen, dann !ndern Sie die zugelassenen Ansichten des Formulars entweder auf Formular oder auf Datenblatt. Die Verbindung von Haupt- und Unterformularen eignet sich am besten zur Darstellung von 1:n-Beziehungen. Das Unterformular zeigt dabei nur die Datens!tze an, die mit dem Datensatz des Hauptformulars verkn,pft sind. Wenn Sie Formulare f,r eine n:1-Beziehung erstellen wollen, dann verwenden Sie besser eine Abfrage als Basis f,r das Formular. Solche Formulare zeigen dann einen Datensatz der Detailtabelle und den jeweils zugeordneten Datensatz der Master-Tabelle an. Beide Formulartypen kDnnen Sie auch direkt mit dem Formular-Assistenten von Access entwerfen (siehe Kapitel 3 Daten auswerten und pr7sentieren).
Die Standardansicht eines Unterformulars
Ansicht > Unterformulardatenblatt
Tipp
395
Formulare
Gebundene Objektfelder Gebundene Objektfelder eignen sich zur Darstellung von OLE-Feldern und sind daher stets an ein OLE-Feld der zugrunde liegenden Tabelle oder Abfrage gebunden. F,r ungebundene Objektfelder, die nicht an ein Datenfeld gebunden sind, steht ein eigener Steuerelementtyp zur Verf,gung, der im folgenden Abschnitt dieses Kapitels besprochen wird.
Abb. 6.40 Endlosformular mit gebundenen Objektfeldern
Gebundenes Objektfeld erstellen
Grßenanpassung
Um ein gebundenes Objektfeld zu erstellen, markieren Sie das gleichnamige Symbol der Toolbox, und ziehen Sie einen Rahmen auf. Rffnen Sie dann das Eigenschaftenfenster, um den Steuerelementinhalt festzulegen. Alternativ kDnnen Sie auch das Symbol f,r gebundene Objektfelder in der Toolbox markieren und ein OLE-Feld aus der Feldliste auf die Arbeitsfl!che ziehen. Access setzt den Steuerelementinhalt in diesem Fall automatisch. Access bindet OLE-Objekte standardm!ßig in ihrer OriginalgrDße ein, was der Einstellung der Eigenschaft Gr4ßenanpassung auf den Wert Abschneiden entspricht. Sollte das Objekt eine relativ große Grafik enthalten, schneidet Access die Teile der Grafik, die ,ber die Objektgrenzen hinausgehen, ab. Sie kDnnen dieses Problem lDsen, indem Sie eine andere GrDßenanpassung w!hlen. Die Einstellung Dehnen bewirkt, dass Access die vertikale und horizontale GrDße des Objekts so anpasst, dass es exakt in die Steuerelementgrenzen passt. Da die horizontale und vertikale Anpassung manchmal verschieden stark erfolgen kann, kommt es dabei gelegentlich zu Verzerrungen.
396
Die Steuerelementtypen im Einzelnen
Die Einstellung Zoomen verhindert Verzerrungen. Sie passt die horizontale und die vertikale GrDße des Objekts proportional an, so dass es innerhalb der Steuerelementgrenzen angezeigt werden kann. Bei dieser Einstellung kann es vorkommen, dass der in den Steuerelementgrenzen verf,gbare Platz nicht ganz ausgenutzt wird. In der Formularansicht dienen gebundene Objektfelder der Eingabe und Bearbeitung von Daten, die in OLE-Feldern gespeichert sind. Zur Bearbeitung von gebundenen Objektfeldern klicken Sie zun!chst auf das Steuerelement, um es zu aktivieren.
Gebundene Objektfelder bearbeiten
Wenn Sie ein neues Objekt einf,gen wollen, dann w!hlen Sie den Befehl Objekt einf1gen aus dem Kontextmen, des gebundenen Objektfeldes. Access zeigt den gleichnamigen Dialog zur Auswahl eines Objekttyps an. Es handelt sich bei dieser Auswahl um die Anzeige aller Programme, die sich unter Windows als OLE-Server angemeldet haben. Markieren Sie einen Objekttyp und klicken Sie auf OK.
Abb. 6.41 Objekt einf gen
Windows startet dann die ausgew!hlte Applikation und Sie kDnnen ein Objekt erstellen. Wenn Sie den Vorgang mit dem daf,r vorgesehenen Befehl (z.B. Datei > Beenden oder Einf1gen) abschließen, ,bernimmt Access das Objekt von der ServerApplikation und zeigt es im gebundenen Objektfeld an. Das Objekt wird im OLEFeld des aktuellen Datensatzes gespeichert. Sie kDnnen Objekte aus Anwendungen, die Drag & Drop unterst,tzen, direkt in ein gebundenes Objektfeld ziehen. So ist es beispielsweise mDglich, eine Klang- oder Bilddatei aus dem Explorer von Windows in ein gebundenes Objektfeld eines Access-Formulars zu ziehen. Als weitere Variante der Wertzuweisung an Objektfelder kDnnen Sie die Zwischenablage von Windows verwenden. Wenn Sie ein bereits bestehendes Objekt bearbeiten wollen, dann f,hren Sie einen Doppelklick auf das gebundene Objektfeld durch. Alternativ kDnnen Sie auch den Befehl Bearbeiten > Objekt aus der Men,leiste oder den Befehl Objekt aus dem Kontextmen, des gebundenen Objektfeldes ausw!hlen. Access erg!nzt den Befehl
Tipp
Objekte bearbeiten
397
Formulare
automatisch um den Namen der Server-Applikation. Bei einem Paintbrush-Objekt heißt der Befehl beispielsweise Bearbeiten > Bitmap-Objekt > Bearbeiten. Nachdem Sie mit der Server-Applikation die erforderlichen 0nderungen durchgef,hrt haben, wird das Objekt wiederum im aktuellen Datensatz gespeichert. Weitere Hinweise zur Verwendung von Diagrammen und anderen Objekten finden Sie in Kapitel 11 Mit Bildern und anderen Objekten arbeiten dieses Buchs. Hinweis
Ungebundene Objektfelder Mit ungebundenen Objektfeldern kDnnen Sie Ihre Formulare um Objekte erg!nzen, die nicht in der Tabelle gespeichert werden. Diese Objekte bleiben daher stets ungebunden und haben keinen Bezug zu der zugrunde liegenden Tabelle oder Abfrage. Ungebundene Objektfelder eignen sich gut zur Darstellung von Unternehmens-Logos, Landkarten, Diagrammen und anderen Objekten, die Formulare und Berichte bereichern.
Abb. 6.42 Formular mit einem ungebundenen Objektfeld
Um ein ungebundenes Objektfeld zu erstellen, markieren Sie das Objektfeld-Symbol in der Toolbox, und ziehen Sie einen Rahmen auf. Access zeigt dann direkt den Dialog Objekt einf1gen an. Weitere Hinweise zum Einf,gen von Objekten finden Sie weiter oben in der Beschreibung gebundener Objektfelder und in Kapitel 11 Mit Bildern und anderen Objekten arbeiten dieses Buchs.
AktiviertEigenschaft
398
Wenn Sie die Eigenschaft Aktiviert eines ungebundenen Objektfeldes auf Ja einstellen, kann der Anwender in der Formularansicht einen Doppelklick auf ungebundene Objektfelder durchf,hren, um die Server-Applikation zu starten. Bei der Standardeinstellung der Eigenschaft auf den Wert Nein ist dies nicht mDglich.
Die Steuerelementtypen im Einzelnen
Access zeigt ein ungebundenes Objektfeld in der Formularansicht standardm!ßig als Rechteck an, dass den Formularhintergrund verdeckt. Sie kDnnen dies !ndern, indem Sie die Eigenschaft Hintergrundart des Objektfeldes auf Transparent einstellen. Ebenso sollten Sie die Eigenschaft Rahmenart auf Transparent !ndern. Abbildung 6.42 enth!lt ein ungebundenes Objektfeld mit transparentem Hintergrund. Sie kDnnen Objekte aus Anwendungen, die Drag & Drop unterst,tzen, direkt in den Formularentwurf ziehen. Wenn Sie beispielsweise eine Klang- oder Bilddatei aus dem Explorer von Windows in den Formularentwurf ziehen, entwirft Access automatisch ein ungebundenes Objektfeld und bettet den Klang oder das Bild in das Steuerelement ein. Als weitere Variante der Wertzuweisung an Objektfelder kDnnen Sie die Zwischenablage von Windows verwenden.
HintergrundartEigenschaft
Tipp
Bilder Mit dem Steuerelementtyp Bild kDnnen Sie eines oder mehrere Bilder in Ihren Formularen anordnen. Um ein Bild-Steuerelement anzulegen, markieren Sie das gleichnamige Symbol in der Toolbox und klicken Sie auf die Arbeitsfl!che. Access Dffnet dann den Dialog Grafik einf1gen, mit dem Sie eine Bilddatei ausw!hlen kDnnen. Die Anlage des Bild-Steuerelements kommt nur dann zum Abschluss, wenn Sie wirklich eine Grafikdatei ausw!hlen. Wenn Sie den Dialog hingegen mit einem Klick auf die die gleichnamige Schaltfl!che abbrechen, legt Access kein neues Steuerelement an. Bild-Steuerelemente haben einige besondere Eigenschaften wie Bildtyp, Gr4ssenanpassung, Bildausrichtung und Bild nebeneinander. Sie finden die Beschreibung dieser Eigenschaften weiter unten in diesem Kapitel unter der Pberschrift Formulareigenschaften. Sie werden dort im Zusammenhang mit Hintergrundbildern f,r Formulare beschrieben. Mit den beiden Eigenschaften Hyperlink-Adresse und Hyperlink-Unteradresse ordnen Sie einem Bild-Steuerelement einen Hyperlink zu. Wenn der Anwender sp!ter in der Formularansicht auf das Bild klickt, Dffnet Access den Hyperlink. Sie haben folgende MDglichkeiten, ein Bild-Steuerelement mit Hyperlink zu erstellen:
Hinweis
Hyperlinks in BildSteuerelementen
Geben Sie Werte direkt in die beiden Eigenschaften Hyperlink-Adresse und Hyperlink-Unteradresse ein oder klicken Sie auf das Eingabehilfe-Symbol einer der beiden Eigenschaften, damit Access den Dialog Hyperlink einf1gen bzw. Hyperlink bearbeiten Dffnet. Ein Hyperlink besteht aus einer Adresse, einer Unteradresse und einem Anzeigetext. Die ersten beiden Komponenten legen Sie direkt ,ber die Eigenschaften HyperlinkAdresse und Hyperlink-Unteradresse fest. Der Anzeigetext entf!llt bei Bild-Steuerelementen.
399
Formulare
Hinweis
Eine Beschreibung der Komponenten von Hyperlinks und des Dialogs Hyperlink einf1gen finden Sie in Kapitel 4 Tabellen unter der Pberschrift Hyperlinks in einer Tabelle speichern.
Linien und Rechtecke Linien und Rechtecke sind einfache grafische Elemente zur optischen Gestaltung von Formularen. Um eine Linie zu erstellen, markieren Sie zun!chst das Linien-Symbol in der Toolbox. Klicken Sie dann auf die Position der Arbeitsfl!che, an der die Linie beginnen soll. Positionieren Sie den Mauszeiger bei festgehaltener linker Maustaste auf die Stelle, an der die Linie enden soll. Um ein Rechteck zu erstellen, markieren Sie das Rechteck-Symbol in der Toolbox und ziehen Sie einen Rahmen auf. Sollte das Rechteck bereits bestehende Steuerelemente ,berdecken, w!hlen Sie gegebenenfalls den Befehl Format > In den Hintergrund.
Tipp
Wenn Sie f,r ein Rechteck eine Hintergrundfarbe ausw!hlen, die von der Hintergrundfarbe des Formulars abweicht, entsteht der Eindruck einer Fl!che. Weitere Eigenschaften wie beispielsweise Rahmenbreiten und Spezialeffekte von Linien und Rechtecken kDnnen Sie schnell und effektiv ,ber die Symbolleiste Format (Formular-/Berichtsentwurf) einstellen.
Seitenwechsel Durch das manuelle Einf,gen von Seitenwechseln kDnnen Sie mehrseitige Formulare erstellen. Markieren Sie das gleichnamige Symbol in der Toolbox und klicken Sie auf die Position, an der Access den Seitenwechsel einf,gen soll. Access markiert einen Seitenwechsel durch die Darstellung von drei Punkten am linken Rand des Formulars. Access trennt das Formular genau an der Stelle, an der Sie den Seitenwechsel eingef,gt haben. Achten Sie daher darauf, dass der Seitenwechsel nicht auf gleicher HDhe mit anderen Steuerelementen liegt. Diese werden sonst getrennt. In der Formularansicht stehen die Tasten U und O zur Verf,gung, um in einem mehrseitigen Formular zu bl!ttern. Damit beim Bl!ttern in der Formularansicht keine Pberschneidungen zwischen den Formularseiten entstehen, m,ssen alle Formularseiten gleich groß sein. Das bedeutet wiederum, dass die Abst!nde zwischen den Seitenwechseln identisch sein m,ssen. Verwenden Sie gegebenenfalls das vertikale Lineal oder die Eigenschaft Oben des Seitenwechsel-Steuerelements, um die Abst!nde pr!zise einzustellen.
Tipp
400
Sie kDnnen Access auch veranlassen, vor einem Formularbereich einen Seitenwechsel durchzuf,hren. 0ndern Sie dazu die Eigenschaft Neue Seite des Bereichs, vor dem der Seitenwechsel durchgef,hrt werden soll, auf Ja. Weiter unten in diesem Kapitel finden Sie unter der Pberschrift Formularbereiche und -eigenschaften einen Abschnitt, der die Bereiche eines Formulars erl!utert.
Abb. 6.43 Bei diesem Formular werden die einzelnen Seiten ber Schaltfl!chen aktiviert
Register Mit dem Register-Steuerelement kDnnen Sie Ihre Formulare mit Registern ausstatten. Da ein Register aus zwei oder mehr Seiten besteht, kDnnen Sie mit ihnen viele Informationen auf begrenztem Raum anzeigen. Gute Beispiele f,r Register sind das Eigenschaftenfenster im Formularentwurf und der Dialog, den Sie mit dem Men,befehl Extras > Optionen Dffnen. Mit dem Register-Steuerelement kDnnen Sie solche und andere Register problemlos selbst entwerfen. Das Register-Steuerelement ist bei Access 2.0 und Access 95 nur als Zusatzsteuerelement verf,gbar. Seit Access 97 hat Microsoft es in die Toolbox des Formularentwurfs integriert. Wie nicht anders zu erwarten, wird die Benutzung des
Formulare
Abb. 6.44 Das Register des Dialogs Optionen
Abb. 6.45 Neues Register anlegen
Außerdem kDnnen Sie bereits bestehende Steuerelemente auf die Registerseite kopieren. Dies erfolgt ,ber die Befehle Ausschneiden bzw. Kopieren und Einf1gen des Men,s Bearbeiten oder des Kontextmen,s. Sie kDnnen einer Registerseite beliebige Steuerelemente hinzuf,gen. Es ist jedoch nicht mDglich, auf einer Registerseite weitere Register anzulegen.
402
Die Steuerelementtypen im Einzelnen
Das Verschieben bereits bestehender Steuerelemente auf eine Registerseite durch Ziehen mit der Maus ist nicht mDglich. Wenn Sie es dennoch versuchen, ordnet Access das verschobene Steuerelement hinter dem Register-Steuerelement an. Access beschriftet die Registerkartenzungen mit den Texten Seite1, Seite2 usw. Um die Beschriftung zu !ndern, Dffnen Sie das Eigenschaftenfenster und klicken Sie auf eine Registerseite. 0ndern Sie anschließend die Eigenschaft Beschriftung. Wenn Sie keine Beschriftung eingeben, verwendet Access die Eigenschaft Name als Beschriftung. Mit dem Befehl Seite einf1gen kDnnen Sie dem Register neue Seiten hinzuf,gen. Sie finden diesen Befehl im Kontextmen,, wenn Sie mit der rechten Maustaste auf ein Register klicken. Nach dem Hinzuf,gen sollten Sie die Beschriftung der neuen Seiten anpassen.
Hinweis
Seiten benennen
Seiten hinzuf gen
Abb. 6.46 Das Kontextmen einer Registerseite
Das LDschen von Registerseiten erfolgt ,ber die Auswahl des Befehls Seite l4schen aus dem Kontextmen,. Der Befehl lDscht die aktuelle Seite und alle in ihr enthaltenen Steuerelemente. Der Befehl Seitenreihenfolge Dffnet den gleichnamigen Dialog mit einer Liste aller Registerseiten. Pber die Schaltfl!chen Nach oben und Nach unten verschieben Sie die markierte Registerseite innerhalb der Liste.
Seitenreihenfolge bearbeiten
403
Formulare
Aktivierreihenfolge bearbeiten
Grße eines Registers !ndern
Weitere Eigenschaften
Eine Besonderheit von Registern besteht darin, dass jede Seite eine eigene Aktivierreihenfolge hat. Es ist daher empfehlenswert den Befehl Aktivierreihenfolge f,r jedes Register einmal auszuw!hlen. Die Benutzung des Dialogs Reihenfolge ist die gleiche wie beim Formularentwurf. Weitere Hinweise hierzu finden Sie weiter oben in diesem Kapitel unter der Pberschrift Aktivierreihenfolge 7ndern. Access passt einige Eigenschaften eines Registers automatisch an. Wenn Sie beispielsweise die Beschriftung einer Registerseite !ndern, passt Access die Breite der Registerkartenzunge automatisch so an, dass die neue Beschriftung vollst!ndig angezeigt werden kann. Access stellt außerdem sicher, dass keine Steuerelemente abgeschnitten werden. Aus diesem Grund ist das Verkleinern des Register-Steuerelements manchmal nicht mDglich. In diesem Fall m,ssen Sie zuerst einige Steuerelemente verschieben, bevor Sie das Register verkleinern kDnnen. Weitere Eigenschaften von Registern und Registerseiten finden Sie im Eigenschaftenfenster. Um eine Registerseite zu markieren, klicken Sie am besten auf ihre Pberschrift. Um das Register-Steuerelement zu markieren, klicken Sie auf einen leeren Bereich neben der rechten Pberschrift. Alternativ kDnnen Sie die Steuerelemente auch ,ber das Kombinationsfeld Objekt der Symbolleiste Formatierung (Formular/Bericht) ausw!hlen. Die Eigenschaft Mehrere Zeilen ist nur f,r das Register-Steuerelement und nicht f,r die einzelnen Seiten verf,gbar. Wenn Sie diese Eigenschaft auf Ja !ndern, kann Access die Registerkartenzungen mehrzeilig anzeigen.
Mehrere Zeilen
F,r Registerseiten ist außerdem die Eigenschaft Bild interessant. Mit ihr kDnnen Sie neben der Pberschrift ein Bild oder Symbol anzeigen lassen.
Bild
Hinweis
Bereits bestehende Steuerelemente lassen sich nur auf eine Registerseite kopieren und nicht verschieben. Sie sollten beachten, dass Access beim Kopieren eines Steuerelements einen neuen Namen vergibt. Dies f,hrt dazu, dass an das Steuerelement gebundene Ereignisprozeduren verloren gehen. Dieser Effekt kommt insbesondere beim Kopieren von Befehlsschaltfl!chen zum Tragen.
Diagramme Diagramme eignen sich zur grafischen Auswertung von Daten. Wenn ein Formular ein aufwendiges Diagramm enth!lt, dann ist es oft der wichtigste und manchmal sogar der einzige Bestandteil. Es ist außerdem mDglich, innerhalb eines Formulars zus!tzlich zu den Daten aus einer Abfrage oder Tabelle auch deren Visualisierung in einem Diagramm darzustellen. In diesem Fall wird das Diagramm wie ein Unterformular-Steuerelement ,ber die Eigenschaften Verkn1pfen von und Verkn1pfen nach mit den Formulardaten verkn,pft.
Microsoft Graph
404
Mit dem Diagramm-Assistenten von Access entwerfen Sie Formulare, die Diagramme enthalten. Der Assistent bedient sich dazu des im Lieferumfang von Access enthaltenen Programms Microsoft Graph. Dieses Programm l!uft als OLE-
Die Steuerelementtypen im Einzelnen
Server im Hintergrund ab, so dass Sie davon zun!chst nichts merken. Erst ein Doppelklick auf ein Diagramm im Formularentwurf Dffnet den OLE-Server und Sie kDnnen Ihr Diagramm individuell anpassen. Obwohl die Toolbox von Access kein Symbol zum Entwurf von Diagrammen enth!lt, handelt es sich dennoch um einen eigenen Steuerelementtyp. Der Entwurf eines neuen Diagramms erfolgt ,ber den Men,befehl Einf1gen > Diagramm. Dieser Befehl f,hrt unabh!ngig von der Markierung des Symbols Steuerelement-Assistent immer zum Start des Diagramm-Assistenten von Access. Als weitere Alternative kDnnen Sie ,ber die Auswahl des Eintrags Diagramm-Assistent im Dialog Neues Formular ein neues Formular erstellen, in dem der Assistent automatisch ein Diagramm anordnet. Da die Toolbox des Formularentwurfs eine Symbolleiste wie jede andere auch ist, kDnnen Sie ihr das Symbol zum Entwurf von Diagrammen hinzuf,gen. Gehen Sie dazu wie folgt vor: 1
Klicken Sie mit der rechten Maustaste auf die Toolbox, um ihr Kontextmen, zu Dffnen.
2
W!hlen Sie den Befehl Anpassen aus dem Kontextmen,.
3
Markieren Sie In der Registerkarte Befehle die Kategorie Toolbox.
4
Ziehen Sie das Symbol Diagramm aus dem Dialog in die Toolbox.
5
Klicken Sie auf die Schaltfl!che Schließen, um den Dialog zu beenden.
Diagrammassistent
Toolbox konfigurieren
Nun kDnnen Sie den Diagramm-Assistenten von Access alternativ ,ber den Befehl Einf1gen > Diagramm oder die Toolbox starten. Folgen Sie anschließend den Anweisungen des Diagramm-Assistenten. Das folgende Beispiel zeigt, wie einfach der Entwurf von Diagrammen mit dem Assistenten ist. Ziel des Beispiels ist ein Diagramm, das die Ums!tze der Projektetabelle nach Adressen kumuliert und in einem Tortendiagramm anzeigt. Aufgrund der Anordnung in einem Tortendiagramm werden dabei die Herkunft der Ums!tze und damit die wichtigsten Gesch!ftspartner besonders deutlich.
Formular mit Tortendiagramm
Um es ,bersichtlich zu halten, soll das Diagramm nur die Summen ,ber 10.000 DM ber,cksichtigen. Die Definition eines solchen Kriteriums ist im Diagramm-Assistenten leider nicht vorgesehen. Sie m,ssen das Kriterium und die Berechnung der Summen daher in einer Abfrage vornehmen.
405
Formulare
Abb. 6.47 Abfrage mit kumulierten Nettobetr!gen ber 10.000 DM
Zur Definition der Abfrage gehen Sie wie folgt vor: Abfrage erstellen
1
Erstellen Sie eine neue Abfrage und f,gen Sie die Projekte- und die Adressentabelle hinzu.
2
Das Diagramm soll die kumulierten Nettobetr!ge aus der Projektetabelle und den Namen der zugeordneten Adresse anzeigen. Definieren Sie daher eine Inklusionsverkn,pfung, die alle Datens!tze aus der Projektetabelle anzeigt.
3
Ziehen Sie aus der Feldliste f,r die Adressentabelle das Feld Name und aus der Feldliste f,r die Projektetabelle das Feld Ist Nettobetrag in den Entwurfsbereich der Abfrage.
4
Klicken Sie auf das Funktionen-Symbol und w!hlen Sie f,r das Namensfeld den Eintrag Gruppierung.
5
W!hlen Sie anschließend f,r das Feld Ist Nettobetrag den Eintrag Summe aus der Funktionen-Zeile.
6
Tragen Sie f,r den kumulierten Nettobetrag das Kriterium > 10000 ein.
7
Speichern Sie die Abfrage unter dem Namen Kumulierte Nettobetr7ge 1ber 10 Tsd nach Adressen.
Summen berechnen
Abfrage speichern
406
Die Steuerelementtypen im Einzelnen
8
Beachten Sie bei der Eingabe des Betrages, dass Access Punkte in Namen nicht akzeptiert. Verzichten Sie daher auf die Eingabe eines Punktes f,r die Abk,rzung Tsd.
9
Schließen Sie das Abfragefenster nicht, sondern w!hlen Sie direkt den Eintrag Formular aus dem Symbol Neues Objekt, damit Access den Dialog Neues Formular Dffnet und den Namen der Abfrage anzeigt.
10
F,hren Sie einen Doppelklick auf den Eintrag Diagramm-Assistent durch, um den Diagramm-Assistenten zu starten.
Diagramm-Assistent starten
Abb. 6.48 Der Startdialog des Diagramm-Assistenten
Der Diagramm-Assistent stellt einige Fragen, wie Ihr Formular aussehen soll. Zur Beantwortung dieser Fragen gehen Sie wie folgt vor: 1
Im ersten Dialog ,bernehmen Sie die Felder Name und Summe von Ist Nettobetrag in die Liste der Diagrammfelder.
2
Im zweiten Dialog markieren Sie das Symbol f,r 3-D-Kreisdiagramme.
3
Im dritten Dialog ,bernehmen Sie die Vorgabe, dass der Wert Summe von Ist Nettobetrag innerhalb des Diagramms und das Feld Name als Legende angezeigt werden solenl.
4
Klicken Sie ggf. auf die Schaltfl!che Diagrammvorschau, um einen Eindruck von dem Aussehen des sp!teren Diagramms zu bekommen.
Diagrammvorschau
407
Formulare
5
Im vierten und letzten Dialog des Diagramm-Assistenten ,bernehmen Sie die Pberschrift Kumulierte Nettobetr7ge 1ber 10 Tsd Mark nach Adressen.
6
Klicken Sie auf die Schaltfl!che Fertig stellen, um den Entwurf des Formulars einzuleiten.
Abb. 6.49 Diagrammvorschau einsehen
Formular speichern
Funktionsweise des Formulars
Tipp 408
Es vergehen einige Sekunden, bis Access das Diagramm fertig erstellt hat und es in der Formularansicht Dffnet. Speichern Sie das Formular unter dem Namen Kumulierte Nettobetr7ge 1ber 10 Tsd Mark nach Adressen(Diagramm). Sie kDnnen jetzt das Formular- und das Abfragefenster wieder schließen. Access f,hrt beim Rffnen des Formulars automatisch die zugrunde liegende Abfrage aus und berechnet das Diagramm neu. Das Diagramm zeigt nach dem Rffnen daher stets die aktuellen Werte aus der Projektetabelle an. Solange das Formularfenster geDffnet ist, aktualisiert Access die Anzeige jedoch nicht automatisch. Wenn Access beispielsweise im Netzwerk eingesetzt wird, erscheinen 0nderungen an den Projektdaten nicht automatisch auch im Diagramm. Wenn Sie sichergehen wollen, dass das Diagramm die aktuellen Werte anzeigt, m,ssen Sie das Formular zun!chst schließen und dann erneut Dffnen. Um die einem Formular zugrunde liegende Tabelle oder Abfrage erneut zu Dffnen und die Formulardaten zu aktualisieren, kDnnen Sie auch die Tastenkombination H) bet!tigen.
Die Steuerelementtypen im Einzelnen
Das Diagramm zeigt die Werte der zugrunde liegenden Abfrage lediglich grafisch an. Wenn Sie wollen, dann kDnnen Sie das Formular um eine Auflistung der Zahlenwerte erg!nzen. Gehen Sie wie folgt vor: 1
Entwerfen Sie mit dem AutoFormular-Assistenten ein tabellarisches Formular f,r die Abfrage Kumulierte Nettobetr7ge 1ber 10000 nach Adressennummern.
2
Der Assistent !ndert die Formulareigenschaft Standardansicht auf den Wert Datenblatt.
3
Speichern Sie das Formular unter dem Namen Kumulierte Nettobetr7ge 1ber 10 Tsd Mark nach Adressen (Tabelle).
4
Ziehen Sie das neue Formular in die Entwurfsansicht des Formulars Kumulierte Nettobetr7ge 1ber 10 Tsd Mark nach Adressen(Diagramm).
Diagramm um Zahlenwerte erg!nzen
Abb. 6.50 Ziehen Sie das tabellarische Formular aus dem Datenbankfenster in die Entwurfsansicht des Diagramm-Formulars
Access ordnet damit automatisch ein Unterformular f,r die Anzeige der Daten aus der zugrunde liegenden Abfrage an. Weitere Einzelheiten zu Haupt- und Unterformularen finden Sie im Abschnitt Unterformulare und -berichte weiter oben in diesem Kapitel.
409
Formulare
Formular optimieren
Wenn Sie einmal in die Formularansicht wechseln, dann sehen Sie, wie Access eine Tabelle mit den Daten der zugrunde liegenden Abfrage und das Diagramm gleichzeitig im Formular anzeigt. Die Anzeige ist jedoch keineswegs optimal. Es ist daher erforderlich, die GrDße der Steuerelemente im Formularentwurf anzupassen und sie eventuell zu verschieben.
Abb. 6.51 Das Formular in der Entwurfsansicht
Diagramm bearbeiten
Datenbeschriftungen anpassen
Außerdem sollten Sie einmal einen Doppelklick auf das Diagramm durchf,hren, um den OLE-Server MS Graph zu starten. Hier kDnnen Sie ,ber Men,befehl und Kontextmen,s weitere Einstellungen vornehmen. Die wahrscheinlich wichtigste davon ist die GrDßenanpassung des Diagrammobjekts. VergrDßern oder verkleinern Sie es einfach durch Ziehen mit der Maus. Klicken Sie einmal mit der rechten Maustaste auf das Diagramm und w!hlen Sie den Befehl Diagramm-Optionen aus dem Kontextmen,. Klicken Sie in dem sich Dffnenden Dialog auf das Register Datenbeschriftungen. Hier kDnnen Sie beispielsweise die Anzeige von Prozentzahlen einblenden. Ein weiterer Verbesserungsvorschlag besteht darin, die Legende durch Ziehen mit der Maus schmaler zu machen. Anschließend m,ssen Sie eventuell weitere Elemente des Diagramms durch Ziehen mit der Maus ver!ndern. Das Ergebnis Ihrer Bem,hungen sieht unter Umst!nden wie in Abbildung 6.52 aus.
410
Die Steuerelementtypen im Einzelnen
Abb. 6.52 Tabelle und Diagramm in einem Formular anzeigen
Sie m,ssen bei der Arbeit mit Diagrammen leider in Kauf nehmen, dass die ansprechende Gestaltung grafischer Objekte unter Umst!nden recht zeitaufwendig ist. Es bedarf schon eines recht h!ufigen Wechsels zwischen dem Formularentwurf und der Formularansicht, bis ein Formular mit einem Diagrammobjekt gut aussieht. Aber die Arbeit lohnt sich, denn ein Bild sagt mehr als tausend Worte.
Kalender Access bietet schon in der Version 2.0 die MDglichkeit, die Palette der Steuerelementtypen zu erweitern. Diese auch unter dem Namen OCX-Controls oder OLE-Zusatzsteuerelemente bekannten Zusatzsteuerelemente stellen neue Steuerelementtypen mit vollkommen neuen Funktionen zur Verf,gung. Microsoft hat diese Technologie weiterentwickelt. Unter dem Namen ActiveX sind diese Steuerelemente in alle Anwendungen von Office XP integriert. Im Lieferumfang von Access XP sind diverse ActiveX-Steuerelemente enthalten. Eines davon ist das Kalender-Steuerelement 10.0.
Kalender-Steuerelement 10.0
Wie der Name schon vermuten l!sst, stellt das Kalender-Steuerelement einen Kalender dar, wie Sie ihn von den einschl!gigen Terminplanungsprogrammen wie beispielsweise Microsoft Outlook her kennen. Ein solcher Kalender eignet sich besonders zur Programmierung von Formularen, die zeitgebundene Informationen enthalten. Sinnvolle Einsatzgebiete finden sich unter anderem im Bereich der Terminverwaltung und des Kontaktmanagements. 411
Formulare
Weitere Steuerelemente
Um das Kalender-Steuerelement in den Formularentwurf einzuf,gen, w!hlen Sie den Befehl Einf1gen > ActiveX-Steuerelement aus der Men,leiste und f,hren in dem sich Dffnenden Dialog einen Doppelklick auf den Eintrag Calendar Control 10.0 durch. Alternativ kDnnen Sie auch auf das Symbol Weitere Steuerelemente der Toolbox klicken und den Eintrag aus der sich Dffnenden Liste ausw!hlen.
Abb. 6.53 Zusatzsteuerelement einf gen
Kalender-Steuerelement an ein Datenfeld binden
Weitere Eigenschaften
412
Access f,gt dem Formular dann einen Kalender als ActiveX-Steuerelement hinzu. Im Eigenschaftenfenster kDnnen Sie nun die Eigenschaften bearbeiten, die f,r alle ActiveX-Steuerelemente verf,gbar sind. Das sind die typischen Eigenschaften wie beispielsweise der Steuerelementname und die Sichtbar-Eigenschaft. Pber die Daten-Eigenschaft Steuerelementinhalt kDnnen Sie den Kalender auch an ein Datenfeld der zugrunde liegenden Tabelle oder Abfrage binden. Dar,ber hinaus gibt es zus!tzliche Eigenschaften, die sozusagen im Kalender-Steuerelement enthalten sind. Sie kDnnen diese Eigenschaften ebenfalls ,ber das Eigenschaftenfenster von Access oder besser ,ber das im Kalender-Steuerelement integrierte Fenster bearbeiten. Klicken Sie dazu mit der rechten Maustaste auf das Steuerelement und w!hlen Sie den Befehl Kalender-Steuerelement-Objekt > Eigenschaften aus dem Kontextmen,.
Die Steuerelementtypen im Einzelnen
Abb. 6.54 Das Eigenschaftenfenster des Kalender-Steuerelements
Das Eigenschaftenfenster des Kalender-Steuerelements hat die drei Register Allgemein, Schriftart und Farbe. Im Register Allgemein finden Sie die Eigenschaften, die den grunds!tzlichen Aufbau des Kalenders betreffen. Hier kDnnen Sie beispielsweise den ersten Wochentag und den Aufbau der Titelleiste des Kalender-Steuerelements einstellen. In den Registern Schriftart und Farbe bestimmen Sie die Schriftarten und Farben f,r die verschiedenen Bereiche des Kalenders. Sie gehen am besten so vor, dass Sie das Kalender-Steuerelement zun!chst auf die GrDße bringen, in der es angezeigt werden soll. Anschließend Dffnen Sie das Eigenschaftenfenster und experimentieren mit den Eigenschaften so lange, bis die Anzeige des Kalender-Steuerelements zu Ihrem Formular passt. Um eine ge!nderte Einstellung im Formularentwurf zu sehen, klicken Sie jeweils auf die Schaltfl!che 9bernehmen. Abschließend klicken Sie auf die Schaltfl!che OK, um die Eigenschaften zu ,bernehmen.
Kalender-Steuerelement anpassen
Abb. 6.55 Datumseingabe mit dem Kalender-Steuerelement
413
Formulare
Um das Kalender-Steuerelement perfekt in die Benutzeroberfl!che eines Access-Formulars zu integrieren, benDtigen Sie Programmierkenntnisse. So ist es beispeilsweise vorstellbar, dass bei einem Doppelklick auf ein Steuerelement ein Dialog mit dem Kalender-Zusatzsteuerelement geDffnet wird. W!hlt der Anwender im Dialog ein Datum aus, wird dieses im jeweiligen Steuerelement gespeichert. Ein solcher Dialog ließe sich dann f,r alle Datumsfelder verwenden.
Das KalenderSteuerelement ohne Programmierung nutzen
Sie kDnnen das Kalender-Zusatzsteuerelement jedoch auch ohne Programmierung nutzen. Rffnen Sie dazu das Eigenschaftenfenster, und binden Sie das Steuerelement ,ber die Steuerelementinhalt-Eigenschaft an ein Datumsfeld der zugrunde liegenden Tabelle oder Abfrage. Wenn Sie wie in Abbildung 6.55 neben dem Kalender-Steuerelement ein Textfeld mit dem Datumswert anzeigen wollen, dann m,ssen Sie eine Besonderheit beachten. Beim Anklicken eines neuen Datums im Kalender aktualisiert Access die Anzeige des Textfeldes n!mlich zun!chst nicht. Sie m,ssen den Datensatz beispielsweise durch einen Klick auf den Datensatzmarkierer erst speichern, bevor auch das Textfeld den aktuellen Datumswert anzeigt.
Web-Browser Das Web-Browser-Steuerelement eignet sich zur Darstellung von Webseiten innerhalb eines Access-Formulars. Das Web-Browser-Steuerelement wird erst verf,gbar, wenn Sie den Internet Explorer ab Version 4.0 installiert haben. Die neueste Version (derzeit 5.5) ist unter anderem auf der Access-XP- und der Office-XP-CD enthalten. Das Installationsprogramm des Internet Explorers registriert das Web-Browser-Steuerelement automatisch. Um das Web-Browser-Steuerelement einem Formular hinzuzuf,gen, gehen Sie wie folgt vor:
Web-Browser hinzuf gen
Web-Browser nutzen
414
1
Klicken Sie im Formularentwurf auf das Symbol Weitere Steuerelemente.
2
W!hlen Sie den Eintrag Microsoft Web Browser-Steuerelemente aus der Liste.
3
Ziehen Sie auf der Arbeitsfl!che einen Rahmen aus.
Um das Web-Browser-Steuerelement nutzen zu kDnnen, m,ssen Sie ein wenig in VBA programmieren. Das folgende Beispiel zeigt, wie Sie die Webseite http://www.fullAccess.de in einem Access-Formular anzeigen kDnnen. Gehen Sie wie folgt vor: 1
Rffnen Sie das Eigenschaftenfenster des Web-Browser-Steuerelements.
2
0ndern Sie den Steuerelementnamen auf MeinBrowser.
Die Steuerelementtypen im Einzelnen
Abb. 6.56 Formular mit WebBrowser entwerfen
Abb. 6.57 Das Web-Browser-Steuerelement im Einsatz
3
Legen Sie eine neue Befehlsschaltfl!che an.
4
W!hlen Sie den Befehl Ereignis aus dem Kontextmen, der Schaltfl!che. Daraufhin Dffnet sich die Programmieroberfl!che von Visual Basic.
415
Formulare
5
Erg!nzen Sie die Ereignisprozedur im Modulfenster um folgende Anweisung: Me!MeinBrowser.Navigate "http://www.fullAccess.de"
6
Schließen Sie die Visual-Basic-Programmieroberfl!che.
Bevor Sie das Beispiel testen kDnnen, m,ssen Sie zuerst eine Internet-Verbindung herstellen. Klicken Sie anschließend auf die Schaltfl!che, damit Access nach kurzer Zeit die Webseite innerhalb Ihres Formulars anzeigt. Access XP und Office XP enthalten eine Reihe weiterer ActiveX-Steuerelemente. Dar,ber hinaus entwickeln Microsoft und Dritthersteller weitere ActiveX-Steuerelemente, so dass sich deren Liste kontinuierlich erweitert. Sie haben sicher Verst!ndnis daf,r, dass dieses Buch nur auf das Kalender-Steuerelement eingeht. Zu den meisten ActiveX-Steuerelemente gibt es jedoch eine ausf,hrliche Dokumentation, die als Text- oder Hilfedatei im Lieferumfang enthalten ist. Das Web-Browser-Steuerelement ist ein typisches Beispiel f,r die Art und Weise der Dokumentation von ActiveX-Steuerelementen.
Formularbereiche und -eigenschaften Access sieht f,r die Gestaltung von Formularen verschiedene Bereiche vor, die alle f,r bestimmte Aufgaben pr!destiniert sind. Sie kDnnen diese Bereiche nutzen, um Ihre Formulare vielseitiger zu gestalten. So lassen sich mit nur wenigen Einstellungen Formulare, die urspr,nglich nur zur Bildschirmanzeige gedacht waren, auch f,r den Ausdruck auf Papier gestalten. Das erspart h!ufig den Entwurf eines eigenen Berichts (siehe Kapitel 7 Berichte).
Formularbereiche einblenden Formularkopf und -fuß
Seitenkopf und -fuß
416
Access blendet f,r jedes Formular automatisch den Detailbereich ein. Der Formularkopf und der Formularfuß sind korrespondierende Bereiche, die sich nur gemeinsam ,ber den Befehl Ansicht > Formularkopf/-fuß einblenden lassen. Wenn Sie nur den Formularkopf- oder nur den Formularfußbereich anzeigen lassen wollen, dann setzen Sie die Eigenschaft Sichtbar des jeweils anderen Bereichs auf Nein. Access blendet diesen Bereich dann aus. Der Seitenkopf und der Seitenfuß eines Formulars bilden ebenfalls korrespondierende Bereiche, die sich nur ,ber den Befehl Ansicht > Seitenkopf/-fuß einblenden lassen. Hier ist die Eigenschaft Sichtbar jedoch nicht verf,gbar. Um diese Bereiche getrennt auszublenden, m,ssen Sie den Bereich mit der Maus so weit verkleinern, dass die aktuelle und die folgende Bereichsmarkierung direkt beieinander liegen.
Formularbereiche und -eigenschaften
Abb. 6.58 (bersicht der Formularbereiche
Formularkopf Access zeigt den Formularkopf in der Formularansicht stets oben im Formular an. FormularkDpfe eignen sich daher f,r Pberschriften und berechnete Steuerelemente, die beispielsweise das Systemdatum anzeigen. Aber auch Befehlsschaltfl!chen f,r die Steuerung eines Formulars sind hier gut aufgehoben. Gebundene Steuerelemente sind in der Regel besser im Detailbereich eines Formulars aufgehoben. Beim Drucken oder in der Seitenansicht eines Formulars erscheint der Formularkopf einmalig zu Beginn der Ausgabe. Hier ,bernimmt der Formularkopf daher die Funktion eines Vorspanns.
Seitenkopf Der Seitenkopf wird nur beim Ausdruck von Formularen ber,cksichtigt und ist in der Formularansicht daher nicht sichtbar. Er eignet sich f,r Informationen, die zu Beginn jeder Druckseite erscheinen sollen. Das sind in der Regel Pberschriften, das Druckdatum und gegebenenfalls die Druckseite.
Detailbereich Jedes Formular hat stets auch einen Detailbereich. Sie kDnnen den Detailbereich zwar nicht ausblenden, ihn aber soweit verkleinern, dass er bei der Anzeige nicht mehr sichtbar ist. Der Detailbereich eignet sich vorwiegend zur Anzeige von Steuerelementen, die mit den Datenfeldern der zugrunde liegenden Tabelle oder Abfrage verbunden sind. Access zeigt im Detailbereich jeweils nur den aktuellen Datensatz an. 417
Formulare
Abb. 6.59 Seitenansicht des Formulars aus Abbildung 6.58
Tipp
Abb. 6.60 Formularansicht des Formulars aus Abbildung 6.58
418
Sie kDnnen mit Formularen eine !hnliche Anzeige erreichen wie in der Datenblattansicht. Halten Sie den Detailbereich verh!ltnism!ßig klein und setzen die Formulareigenschaft Standardansicht auf Endlosformular. Access wiederholt den Detailbereich dann so oft, wie es die FenstergrDße oder die PapiergrDße zul!sst.
Formularbereiche und -eigenschaften
Beachten Sie in Abbildung 6.60, dass Access den Detailbereich insgesamt dreimal anzeigt. Der Bereich wird einmal f,r jeden Datensatz der zugrunde liegenden Tabelle oder Abfrage und zus!tzlich einmal f,r den neuen Datensatz angezeigt. Letzteres tritt jedoch nur dann ein, wenn der neue Datensatz auf der aktuellen Formularseite sichtbar ist.
Hinweis
Seitenfuß Der Seitenfuß bildet den zum Seitenkopf korrespondierenden Bereich. Der Seitenfuß erscheint nur beim Ausdruck des Formulars, und zwar am unteren Ende der Seite.
Formularfuß In der Formularansicht erscheint der Formularfuß am unteren Ende des Formularfensters. Beim Ausdruck gibt Access den Formularfuß einmalig am Ende des Formulars aus. Der Formularfuß eignet sich damit f,r Erl!uterungen zum Gebrauch des Formulars, f,r die Anordnung von Befehlsschaltfl!chen und auch f,r die Anzeige von Summen oder anderen berechneten Werten.
Bereichseigenschaften Bereiche zeichnen sich wie Steuerelemente durch Eigenschaften aus. Zur Einsicht der Eigenschaften eines Formularbereichs markieren Sie den Bereich und Dffnen das Eigenschaftenfenster. Das Markieren eines Bereichs erfolgt durch einen Mausklick auf den grauen Balken, in dem Access den Bereichsnamen anzeigt, oder einen Mausklick auf eine leere Position innerhalb des Bereichs. Beachten Sie, dass Access auch f,r korrespondierende Bereiche getrennte Eigenschaften anzeigt. So l!sst sich beispielsweise der Formularkopf ein- und der Formularfuß gleichzeitig ausblenden. Sie kDnnen die HDhe eines Formularbereichs mit der Maus oder ,ber die gleichnamige Eigenschaft einstellen. Positionieren Sie die Maus auf das untere Ende des Bereichs, so dass sich der Mauszeiger in einen vertikalen Pfeil mit zwei Spitzen !ndert. Ziehen Sie dann die untere Begrenzung des Bereichs in die gew,nschte Richtung.
Hhe
Statt die Maus zu verwenden, kDnnen Sie die HDhe des Bereichs auch direkt in die gleichnamige Eigenschaft eingeben. Geben Sie die HDhe in der Einheit an, die Sie in den L7ndereinstellungen der Systemsteuerung von Windows festgelegt haben. Das ist in der Regel die Einheit Zentimeter (cm).
419
Formulare
Hinweis
Anzeigen
Neue Seite
Tipp
Neue Spalte oder Zeile
Wenn Sie Steuerelemente erstellen, die ,ber die untere Begrenzung eines Bereichs hinausgehen, passt Access die BereichshDhe automatisch an. Sollte ein Bereich ein Steuerelement enthalten, f,r das die Eigenschaften Vergr4ßerbar oder Verkleinerbar gew!hlt wurden, passt Access die BereichshDhe beim Ausdruck automatisch an. Beachten Sie in diesem Zusammenhang die Beschreibung der beiden Eigenschaften weiter unten in diesem Abschnitt. Die Eigenschaft Anzeigen ist nur f,r den Formularkopf- und den Formularfußbereich sowie f,r den Detailbereich verf,gbar. Die Standardeinstellung auf Immer bewirkt, dass der Bereich sowohl angezeigt als auch gedruckt wird. Die Einstellung auf Nur beim Drucken bewirkt, dass Access den Bereich zwar druckt, in der Formularansicht aber nicht anzeigt. Die Einstellung auf Nur am Bildschirm bewirkt genau das Gegenteil. Die Eigenschaft Neue Seite des Detail-, Formularkopf- und Formularfußbereichs wirkt sich nur beim Ausdruck von Formularen aus. W!hlen Sie den Eintrag Vor Bereich aus dem Kombinationsfeld, damit Access vor dem Bereich einen Seitenwechsel einf,gt. Der Eintrag Nach Bereichs bewirkt, dass Access hinter dem Bereich einen Seitenwechsel durchf,hrt. Der Eintrag Vor & Nach bewirkt einen Seitenwechsel vor und nach dem Bereich. Wenn Sie die Eigenschaft Neue Seite f,r den Formularkopfbereich auf den Wert Nach Bereich setzen, kDnnen Sie den Formularkopf als eine Art Deckblatt nutzen, das nur einmalig zu Beginn des Ausdrucks erscheint. Wenn Sie ein mehrspaltiges Formular erstellen, bestimmt die Eigenschaft Neue Zeile oder Spalte, ob der Bereich beim Ausdruck in einer neuen Zeile oder Spalte beginnt. Der Entwurf eines mehrspaltigen Formulars erfolgt ,ber den Befehl Datei > Seite einrichten und die Auswahl des Registers Spalten. Wenn Sie hier in der Optionsgruppe Rastereinstellungen f,r die Spaltenanzahl einen grDßeren Wert als 1 eingeben, dann kDnnen Sie mit der Optionsgruppe Spaltenlayout bestimmen, ob Access die Spalten zun!chst nach unten und dann quer oder zun!chst quer und dann nach unten f,llen soll. Wenn Sie die Option Nach unten, dann quer markiert haben, beginnt der Bereich immer in einer neuen Spalte. Bei der Option Quer, dann nach unten beginnt der Bereich immer in einer neuen Zeile. Weitere Hinweise zu diesem Thema finden Sie in Kapitel 7 Berichte dieses Buchs unter der Pberschrift Mehrspaltige Berichte und Formulare.
Zusammenhalten
Die Eigenschaft Zusammenhalten bestimmt, ob der Bereich mDglichst auf derselben Druckseite erscheint. Wenn Sie die Eigenschaft auf Ja !ndern, pr,ft Access vor dem Ausdruck des Bereichs, ob er noch auf die aktuelle Druckseite passt. Ist dies nicht gegeben, beginnt der Ausdruck des Bereichs auf der n!chsten Druckseite. Die Eigenschaft Sichtbar ist nur f,r den Formularkopf-, den Formularfuß- und den Detailbereich verf,gbar und bestimmt, ob der Bereich angezeigt oder ausgedruckt wird. Wenn Sie die Eigenschaft auf Nein !ndern, blendet Access den Bereich aus. Er erscheint dann weder bei der Anzeige noch beim Ausdruck des Formulars.
Sichtbar
420
Formularbereiche und -eigenschaften
Abb. 6.61 Einstellungen f r mehrspaltige Formulare
Enth!lt ein Bereich ein Steuerelement, f,r das die Eigenschaften Vergr4ßerbar oder Verkleinerbar gew!hlt sind, setzt Access die gleichnamigen Eigenschaften auch f,r den Bereich.
Vergr-ßerbar und verkleinerbar
Sie benDtigen diese Eigenschaften, wenn ein Steuerelement mehrzeilige Texte enth!lt. Access passt die vertikale Ausdehnung des Steuerelements dann beim Ausdruck automatisch an. Dies bedingt nat,rlich, dass auch die Ausdehnung des Bereichs, der das Steuerelement enth!lt, angepasst werden muss.
Formulareigenschaften Formulareigenschaften bestimmen wichtige Parameter des Formulars. Mithilfe der Formulareigenschaften kDnnen Sie beispielsweise die Datenherkunft, die Standardansicht und die Anzeige des Datensatzmarkierers beeinflussen. Die Bearbeitung der Formulareigenschaften erfolgt im Eigenschaftenfenster. Rffnen Sie das Fenster, indem Sie auf das Eigenschaften-Symbol klicken. W!hlen Sie dann den Befehl Bearbeiten > Formular ausw7hlen. Access zeigt in der Titelzeile des Eigenschaftenfensters den Text Formular an.
Formular ausw!hlen
Sie kDnnen alternativ auch auf einen Bereich der Arbeitsfl!che außerhalb aller Formularbereiche oder auf den Kreuzpunkt des vertikalen und horizontalen Lineals klicken, um das Formular zu markieren. Wenn Sie einen Doppelklick auf diesen Bereich durchf,hren, Dffnet Access automatisch das Eigenschaftenfenster. 421
Formulare
Datenherkunft
Hinweis
Die Eigenschaft Datenherkunft bestimmt, auf welcher Tabelle oder Abfrage das Formular basiert. W!hlen Sie eine Tabelle oder Abfrage aus dem Kombinationsfeld. Sofern Sie bereits Steuerelemente erstellt haben und die Datenherkunft nachtr!glich !ndern, kann dies zu Fehlern f,hren. Wenn Access in der neuen Tabelle oder Abfrage die Feldnamen f,r gebundene Steuerelemente nicht finden kann, zeigt es in der Formular-, Datenblatt- und Seitenansicht den Wert #Name? als Steuerelementinhalt an. Mit der Filter-Eigenschaft kDnnen Sie einen Filter definieren, den Access mit dem Formular speichert. Dieser so genannte Formularfilter wird beim Rffnen des Formulars nicht automatisch aktiviert. Der Anwender muss zun!chst den Men,befehl Datens7tze > Filter/Sortierung anwenden ausw!hlen oder auf das gleichnamige Symbol klicken, damit der Filter wirksam wird.
Filter
Wenn die dem Formular zugrunde liegende Tabelle oder Abfrage einen Filter hat, erbt das Formular die Eigenschaft. Um der Formulareigenschaft einen neuen Wert zuzuweisen, m,ssen Sie einen Ausdruck eingeben, der dem WHERE-Teil einer SQLAnweisung entspricht. Betrachten Sie dazu das folgende Beispiel: [PLZ und Ort] Like "*40211*" Sie kDnnen solche Ausdr,cke unter anderem aus der SQL-Ansicht von Abfragen kopieren. Weitere Hinweise zu Abfragen finden Sie in Kapitel 5 Abfragen.
Sortiert nach
Mit der Eigenschaft Sortiert nach kDnnen Sie eines oder mehrere Felder bestimmen, nach denen die Datens!tze der zugrunde liegenden Tabelle oder Abfrage in der Formularansicht sortiert werden. Wenn Sie mehrere Feldnamen angeben, m,ssen diese durch Semikola getrennt werden. Mit dem Zusatz DESC erreichen Sie, dass Access die Datens!tze absteigend sortiert. So f,hrt beispielsweise der folgende Ausdruck zur absteigenden Sortierung nach dem Feld Name: [Name] DESC Wenn die Eigenschaft Filter nicht gesetzt ist, dann wendet Access die Sortierung automatisch beim Rffnen des Formulars an. Andernfalls muss der Anwender zun!chst den Befehl Datens7tze > Filter/Sortierung anwenden aus der Men,leiste w!hlen oder auf das gleichnamige Symbol klicken. Mit dem Befehl Datens7tze > Filter/Sortierung entfernen wird die durch die Filter-Eigenschaft vorgebene Sortierung wieder aufgehoben. Access zeigt die Datens!tze dann in der Reihenfolge an, wie sie von der zugrunde liegenden Tabelle oder Abfrage vorgegeben ist. Wenn die Eigenschaft Sortiert nach der dem Formular zugrunde liegende Tabelle oder Abfrage einen Wert hat, erbt ihn die gleichnamige Formulareigenschaft. Weitere Hinweise zum Entwurf von Tabellen und Abfragen finden Sie in Kapitel 4 Tabellen und Kapitel 5 Abfragen dieses Buchs.
422
Formularbereiche und -eigenschaften
Der Anwender eines Formulars kann einen Filter definieren, um bestimmte Datens!tze aus der zugrunde liegenden Tabelle oder Abfrage zu selektieren. Wenn Sie dies unterbinden wollen, stellen Sie die Eigenschaft Filter zulassen auf den Wert Nein ein. Access deaktiviert in der Formularansicht dann die Filter-Befehle im Datens!tze- und im Kontextmen, sowie die entsprechenden Schaltfl!chen der Symbolleiste. Access zeigt die Beschriftung eines Formulars in der Titelzeile an. Als Standardwert wird hier der Name des Formulars in der Datenbank eingesetzt. Sie kDnnen die Beschriftung aber auch auf einen anderen Text einstellen. So erreichen Sie beispielsweise mit der Eingabe von Leerzeichen, dass Access eine leere Titelzeile anzeigt. Die Eigenschaft Standardansicht bestimmt, in welcher Ansicht das Formular geDffnet wird. Die Einstellung Einzelnes Formular bewirkt, dass Access den Detailbereich einmalig im Formularfenster anzeigt. Die Einstellung Endlosformular wiederholt den Detailbereich hingegen so oft, wie es der verf,gbare Platz erlaubt. Die Einstellung Datenblatt Dffnet das Formular in der Datenblattansicht. Der Formular-Assistent Tabellarisch erstellt Formulare mit der Standardansicht Endlosformular. Da Endlosformulare den Detailbereich mehrfach wiederholen, entsteht der Eindruck einer Tabelle. Diese Form der Tabellendarstellung hat den Vorteil, dass sich auch grafische Objekte und beispielsweise Befehlsschaltfl!chen im Detailbereich anzeigen lassen.
Filter zulassen
Beschriftung
Standardansicht
Endlosformular
Abb. 6.62 Beispiel f r ein Endlosformular
Die Einstellung der Standardansicht auf Datenblatt ist besonders f,r Unterformulare interessant. Access verwendet beim Einbinden von Unterformularen in das Hauptformular n!mlich automatisch die Standardansicht. Bei Unterformularen ist die Einbindung mit der Standardansicht Datenblatt ,blich.
Datenblatt
423
Formulare
Zugelassene Ansichten
Bearbeitungen zulassen
Mit der Eigenschaft Zugelassene Ansichten bestimmen Sie, ob der Anwender Ihres Formulars nur die Datenblatt- oder nur die Formular- oder beide Ansichten aktivieren kann. Die Einstellungen dieser Eigenschaft lauten dementsprechend Beide, Formular und Datenblatt. Stellen Sie die Eigenschaft Bearbeitungen zulassen auf Ja ein, wenn mit Ihrem Formular das Bearbeiten von gespeicherten Datens!tzen mDglich sein soll.
L-schen zulassen
Stellen Sie die Eigenschaft L4schen zulassen auf Ja ein, wenn mit Ihrem Formular das LDschen von gespeicherten Datens!tzen mDglich sein soll.
Anf3gen zulassen
Stellen Sie die Eigenschaft Anf1gen zulassen auf Ja ein, wenn mit Ihrem Formular das Anf,gen neuer Datens!tze mDglich sein soll.
Daten eingeben
Stellen Sie die Eigenschaft Daten eingeben auf Ja ein, wenn Ihr Formular nur der Eingabe neuer Datens!tze dienen soll. Access positioniert dann beim Rffnen des Formulars automatisch auf den neuen Datensatz und zeigt zun!chst keine gespeicherten Datens!tze an. Der Anwender kann dann ,ber die Navigationsschaltfl!chen nur die neu eingegebenen Datens!tze einsehen. Diese Eigenschaft entspricht daher der Auswahl des Befehls Datens7tze > Daten eingeben. Erst wenn der Anwender den Befehl Datens7tze > Filter/Sortierung entfernen ausw!hlt, kann er alle gespeicherten Datens!tze einsehen.
Bildlaufleisten
Datensatzmarkierer
Navigationsschaltfl(chen
Die Eigenschaft Bildlaufleisten bestimmt, ob und welche Rolleisten im Formularfenster angezeigt werden. W!hlen Sie einen der Eintr!ge aus dem Kombinationsfeld, um nur die vertikale, die horizontale, keine oder beide Rolleisten anzeigen zu lassen. Bei einigen Formularen ist die Anzeige des Datensatzmarkierers stDrend. Stellen Sie in diesem Fall die Eigenschaft Datensatzmarkierer auf Nein. Access zeigt dann in der Formularansicht keinen Datensatzmarkierer an. Die Eigenschaft hat keine Auswirkung auf die Anzeige des Datensatzmarkierers bzw. der Indikatorspalte in der Datenblattansicht des Formulars. Um die Anzeige von Navigationsschaltfl!chen zu unterbinden, setzen Sie die gleichnamige Eigenschaft auf den Wert Nein. Access zeigt dann in der Formularansicht keine Navigationsschaltfl!chen an. Die Befehle des Men,s Bearbeiten > Gehe zu stehen aber weiterhin zur Verf,gung. Pber die Eigenschaft Bild kDnnen Sie ein Hintergrundbild f,r das Formular einbinden. Sie kDnnen entweder direkt den Pfad und den Namen einer Bilddatei in die Eigenschaft eingeben oder Sie klicken auf das Eingabehilfe-Symbol. Access Dffnet dann den Dialog Bild einf1gen, ,ber den Sie eine Bilddatei ausw!hlen kDnnen.
Bild
Access unterst,tzt praktisch alle f,r Bilder gebr!uchlichen Formate. Die meisten von Access vordefinierten AutoFormate (z.B. Nacht, Stein und Wolken) zeigen, welche Effekte Sie mit der Bild-Eigenschaft erzielen kDnnen. 424
Formulare optimieren
Abb. 6.63 Formular mit Hintergrundbild
Mit der Einstellung der Eigenschaft Bildtyp auf Eingebettet erreichen Sie, dass Access ein Hintergrundbild als Bestandteil des Formulars in der Datenbank speichert. Die GrDße der Datenbankdatei erhDht sich damit um die GrDße der Bildatei. Wenn Sie stattdessen die Einstellung Verkn1pft w!hlen, speichert Access lediglich den Pfad und den Namen der Bilddatei in der Datenbank. In diesem Fall vergrDßert sich die Datenbankdatei nicht. Das Bild kann aber nur so lange angezeigt werden, wie sich dessen Pfad und Dateiname nicht !ndern. Mit der Eigenschaft Bildgr4ßenmodus bestimmen Sie, wie Access die GrDßenanpassung eines Hintergrundbildes vornehmen soll. Die Eigenschaft hat damit dieselbe Bedeutung wie die Eigenschaft Bildgr4ßenanpassung eines Objektfeldes. Sie haben die Wahl zwischen den BildgrDßenmodi Abschneiden, Dehnen und Zoomen. Mit der Eigenschaft Bildausrichtung bestimmen Sie die Anordnung eines Hintergrundbildes innerhalb eines Formulars. So kDnnen Sie das Bild beispeilsweise oben links, unten rechts oder mittig anordnen. Die Eigenschaft Bild nebeneinander ist zur Herstellung von Mustern wie beispielsweise Wellen oder Steinen interessant. Wenn Sie diese Eigenschaft auf den Wert Ja einstellen, zeigt Access nebeneinander angeordnete Wiederholungen des Hintergrundbildes eines Formulars an.
Bildgr-ßenmodus
Bildausrichtung
Bild nebeneinander
Formulare optimieren Bei Access gibt es f,r praktisch alle Aufgaben mehrere Wege zum Ziel. Einige dieser Wege sind zwar leicht zu merken, aber nicht ganz optimal. Dasselbe gilt nat,rlich f,r den Formularentwurf. Selbst eingefleischte Profis ,bersehen hier gelegentlich die eine oder andere Kleinigkeit, was zu einer Leistungsminderung bei der Ausf,hrung eines Formulars f,hrt. 425
Formulare
LeistungsanalyseAssistent
Es ist daher empfehlenswert, Formulare nach der Fertigstellung einer Leistunganalyse durch den in Access integrierten Assistenten zu unterziehen. Der Assistent sp,rt unter Umst!nden Schwachpunkte im Formularentwurf auf und macht Vorschl!ge zu deren Beseitigung. Zur Analyse eines Formulars gehen Sie wie folgt vor: 1
Falls es geDffnet sein sollte, schließen Sie das Formular.
2
W!hlen Sie den Befehl Extras > Analyse > Leistung aus der Men,leiste, um den Leistungsanalyse-Assistenten zu starten.
3
W!hlen Sie die Registerkarte Formular.
4
Kreuzen Sie das Formular an, dessen Leistung Sie analysieren wollen.
5
Klicken Sie auf die Schaltfl!che OK.
Der Assistent untersucht neben dem Formular auch die zugrunde liegende Tabelle oder Abfrage und macht Vorschl!ge zur Leistungssteigerung, die er in einem weiteren Dialog anzeigt. Die Verbesserungsvorschl!ge sind ausf,hrlich dokumentiert und Sie kDnnen f,r jeden Punkt entscheiden, ob der Assistent die 0nderung durchf,hren soll oder Sie das selbst erledigen wollen.
Abb. 6.64 Ergebnis der Leistungsanalyse eines Formulars
Der Leistungsanalyse-Assistent eignet sich nicht nur zur Analyse von Formularen, sondern f,r alle Datenbankobjekte. Weitere Hinweise finden Sie in Kapitel 9 Eine Datenbank verwalten dieses Buchs.
426
Berichte Bericht entwerfen Ansichten eines Berichts Bericht speichern Besondere Steuerelementeigenschaften Besondere Steuerelementtypen Berichtsbereiche und -eigenschaften Daten sortieren Daten gruppieren Daten markieren Beispiel: Projekte eines Jahres Mehrspaltige Berichte und Formulare Unterberichte und -formulare
428 431 433 435 439 439 447 450 455 457 467 471
7
Berichte
Berichte sind das flexibelste und leistungsf!higste Werkzeug von Access zum Drucken von Daten. Der Schwerpunkt dieses Kapitels ist der manuelle Entwurf von Berichten. Weitere Abschnitte besprechen einige spezielle Aspekte der Berichts-Assistenten, soweit diese in Kapitel 3 Daten auswerten und pr7sentieren Daten auswerten und pr!sentieren dieses Buchs noch nicht erw!hnt wurden. Der Entwurf von Berichten ist mit dem von Formularen weitgehend identisch. Um unnDtige Wiederholungen zu vermeiden, konzentriert sich dieses Kapitel daher auf die Unterschiede und Erweiterungen von Berichten zu Formularen und setzt gute Kenntnisse des Formularentwurfs (siehe Kapitel 6 Formulare) voraus. Die meisten der Unterschiede zwischen Formularen und Berichten ergeben sich aus der Tatsache, dass Berichte in erster Linie f,r den Ausdruck von Daten auf Papier oder anderen Medien und Formulare f,r die Datenanzeige und -bearbeitung am Bildschirm gedacht sind. Die beiden wichtigsten Unterschiede sind die folgenden: In Berichten kDnnen Sie anders als bei Formularen keine Daten bearbeiten. In Berichten verf,gen Sie ,ber weitergehende Funktionen zur Sortierung und Gruppierung Ihrer Daten. Wie in Kapitel 6 Formulare bereits erw!hnt wurde, eignen sich Formulare ebenfalls zum Ausdruck von Daten. Dabei ist jedoch zu beachten, dass die meisten Formulare f,r die Ausgabe auf einem Monitor zugeschnitten sind. Formulare verwenden h!ufig Befehlsschaltfl!chen, Farben und andere Gestaltungsmerkmale, die f,r die Ausgabe auf Papier ungeeignet sind. Damit der Ausdruck eines Formulars zu zufriedenstellenden Ergebnissen f,hrt, m,ssen Sie es auf die Bed,rfnisse des Mediums Papier zuschneiden. An dieser Stelle ist es empfehlenswert, stattdessen einen Bericht zu entwerfen. Nur hier kDnnen Sie weitergehende Gruppierungsfunktionen verwenden. Außerdem verf,gt Access ,ber eine Reihe von Assistenten, die ansprechende Berichte zum Ausdruck von Daten quasi automatisch entwerfen.
Bericht entwerfen Die Vorgehensweise zum Kopieren, Speichern, Umbenennen, LDschen usw. von Berichten ist dieselbe wie bei Formularen. Auch die Techniken zum Anordnen und Formatieren von Steuerelementen, zur Verwendung der AutoFormat-Funktion und zum Einsatz von Berichten als Vorlage f,r andere Berichte sind dieselben wie bei Formularen. Weitere Hinweise finden Sie in Kapitel 6 Formulare dieses Buchs.
Berichtsbereiche
428
Auch die Vorgehensweise zum Entwurf von Berichten ist dieselbe wie bei Formularen. Statt der Formularbereiche finden Sie hier Berichtsbereiche. Selbst die Steuerelemente und deren Eigenschaften sind dieselben, mit Ausnahme einiger spezieller Typen wie beispielsweise Befehlsschaltfl!chen, die in Berichten nicht sinnvoll verwendet werden kDnnen. Die Einschr!nkungen ergeben sich direkt aus der Tatsache,
Bericht entwerfen
dass sich Berichte nicht zur Datenbearbeitung eignen. Bevor dieses Kapitel auf die Besonderheiten des Berichtsentwurfs eingeht, folgt zun!chst eine Pbersicht der Vorgehensweisen zum Entwurf eines neuen Berichts. Mit Access verf,gen Sie ,ber mehrere MDglichkeiten zum Entwurf eines Berichts. Einige davon kennen Sie bereits aus dem ersten Teil dieses Buchs. So entwirft beispielsweise der Datenbank-Assistent automatisch die zu bestimmten Tabellen passenden Berichte. Mit weiteren Assistenten entwerfen Sie in wenigen Sekunden Berichte f,r Ihre eigenen Tabellen. Den besten Pberblick ,ber die MDglichkeiten zum Berichtsentwurf erhalten Sie, wenn Sie wie folgt vorgehen:
Datenbank-Assistent
Markieren Sie im Datenbankfenster das Register Berichte und klicken Sie auf die Schaltfl!che Neu oder w!hlen Sie den Befehl Einf1gen > Bericht aus der Men,leiste.
Abb. 7.1 Neuen Bericht anlegen
Access Dffnet in beiden F!llen den Dialog Neuen Bericht, der eine Pbersicht der MDglichkeiten zum Berichtsentwurf enth!lt. Mit dem ersten Eintrag Entwurfsansicht beginnen Sie den manuellen Entwurf eines neuen Berichts. Die weiteren Abschnitte dieses Kapitels besch!ftigen sich vorwiegend mit dem manuellen Berichtsentwurf.
Entwurfsansicht
429
Berichte
Berichts-Assistent
Alternativ kDnnen Sie den Berichtsentwurf auch einem der Assistenten von Access ,berlassen. Der Eintrag Berichts-Assistent bietet dabei die grDßte Flexibilit!t. Mit dem Berichts-Assistenten kDnnen Sie Berichte entwerfen, die Daten aus einer oder mehreren Tabellen darstellen. Das Zusammenf,gen der Daten muss seit Access 97 im Unterschied zu Vorg!ngerversionen nicht unbedingt zuvor in einer Abfrage erfolgt sein. In den meisten F!llen erstellt der Berichts-Assistent automatisch eine SQL-Anweisung, die Daten aus mehreren Tabellen zusammenstellt. Außerdem enth!lt der Berichts-Assistent seit Access 97 komfortable Funktionen zur Gruppierung von Daten und zur Formatierung von gruppierten Berichten. Bei den 16-Bit-Programmversionen bis Access 2.0 gab es hierf,r einen eigenen Gruppierungs-Assistenten, der jedoch schon mit Access 95 entfiel. Der Berichts-Assistent ist leichter zu bedienen und enth!lt sogar einige Erweiterungen gegen,ber dem ehemaligen Gruppierungs-Assistenten. Ein Abschnitt weiter unten in diesem Kapitel geht auf die Gruppierung von Daten in Berichten ein.
AutoBerichte
Diagramm-Assistent
Etiketten-Assistent
Formulare in Berichte umwandeln
430
Mit den AutoBericht-Assistenten kommen Sie am schnellsten zu einem neuen Bericht. Im Dialog Neuer Bericht gen,gt die Auswahl einer Tabelle oder Abfrage und ein Doppelklick auf einen der Eintr!ge AutoBericht: Einspaltig oder AutoBericht: Tabellarisch. Der Preis f,r den schnellen Berichtsentwurf besteht in der geringeren Flexibilit!t der Assistenten. Access setzt mit Ausnahme der Datenherkunft f,r alle Parameter Standardwerte ein. Der Diagramm-Assistent von Access eignet sich zur grafischen Aufbereitung von Daten aus der Tabelle oder Abfrage, die Sie im Dialog Neuer Bericht ausw!hlen. Der Einsatz des Diagramm-Assistenten in Berichten funktioniert genauso wie bei Formularen. Sie finden die Beschreibung dieses Assistenten in Kapitel 6 Formulare dieses Buchs. Mit dem Etiketten-Assistenten von Access entwerfen Sie Berichte, die die Daten einer Tabelle oder Abfrage auf ein- oder mehrbahnigen Etiketten ausdrucken. Der Etiketten-Assistent verf,gt ,ber eine Reihe vordefinierter Etikettenformate, die den Entwurf solcher Berichte stark vereinfachen. Dar,ber hinaus kDnnen Sie aber auch Ihre eigenen Etikettenformate definieren. Die mit dem Etiketten-Assistenten erstellten Berichte sind gute Beispiele f,r den Entwurf mehrspaltiger Berichte. Sie finden die Beschreibung des Etiketten-Assistenten in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs. In der Praxis entwerfen Sie h!ufig zuerst ein Formular zur Anzeige und Bearbeitung von Daten. Anschließend entsteht der Bericht, der mehr oder weniger dieselben Daten drucken soll. Es ist daher oft sinnvoll, einen Bericht auf der Basis eines bereits bestehenden Formulars zu entwickeln. Sie erreichen dies, indem Sie wie folgt vorgehen: 1
Markieren Sie im Datenbankfenster das Formular, auf dessen Basis der Bericht entstehen soll.
2
Rffnen Sie den Dialog Speichern unter... mit dem gleichnamigen Befehl aus dem Kontextmen, des Formularnamens.
Ansichten eines Berichts
3
Geben Sie einen Namen f,r den Bericht ein und w!hlen Sie den Eintrag Bericht aus dem Kombinationsfeld.
Access entwirft aus der Formulardefinition dann einen Bericht mit denselben Eigenschaften wie das Formular. Sie brauchen an diesem Bericht dann nur die 0nderungen vorzunehmen, die f,r den Ausdruck auf Papier erforderlich sind.
Abb. 7.2 Speichern eines Formulares als Bericht
Ansichten eines Berichts Access kann einen Bericht in der Entwurfsansicht, in der Layout-Vorschau und in der Seitenansicht anzeigen. Der Wechsel zwischen den drei Ansichten erfolgt ,ber die Schaltfl!chen der Symbolleiste, die Befehle des Men,s Ansicht und den Befehl Datei > Seitenansicht.
Seitenansicht In der Seitenansicht zeigt Access den Bericht und die enthaltenen Daten so an, wie er sp!ter gedruckt wird. Die Seitenansicht ist daher eine gute MDglichkeit, den Berichtsentwurf vor dem Ausdruck zu ,berpr,fen. Auch wenn Sie nur bestimmte Informationen eines Berichts interessieren, kann die Seitenansicht ein gutes Hilfsmittel sein. Lesen Sie die gew,nschten Informationen einfach am Bildschirm ab, und notieren Sie sie auf einem elektronischen oder traditionellen Notizblock. 431
Berichte
Abb. 7.3 Seitenansicht eines Berichts
Layoutvorschau Sollte Ihr Bericht auf einer sehr großen Tabelle oder Abfrage basieren, kann der Wechsel in die Seitenansicht manchmal zu zeitaufwendig sein. Schließlich muss Access mDglicherweise große Datenbest!nde sortieren und gruppieren, bevor es die Seitenansicht anzeigen kann. Sie sollten dann den Befehl Ansicht > Layoutvorschau oder einen Mausklick auf das gleichnamige Symbol ausprobieren. Dieser Befehl liest nur einen kleinen Ausschnitt aus der zugrunde liegenden Tabelle oder Abfrage und zeigt dann eine zwar eingeschr!nkte, aber daf,r schnellere Variante der Seitenansicht an. Die Layoutvorschau zeigt zwar alle Bereiche eines Berichts an, ignoriert jedoch Verkn,pfungen und einige Kriterien der zugrunde liegenden Abfrage. Außerdem zeigt die Layoutvorschau bei gruppierten Berichten nur einen Datensatz je Detailgruppe an. Access f,hrt die Sortierungen und Gruppierungen im Detailbereich aber immerhin auch in der Layoutvorschau durch.
432
Bericht speichern
Entwurfsansicht In der Entwurfsansicht gestalten Sie Ihre Berichte. Sie kDnnen die mit den Assistenten erstellten Berichte weiter verfeinern oder auch neue Berichte anlegen. Access unterst,tzt Sie bei der Gestaltung von Berichten mit denselben Hilfsmitteln wie bei der Gestaltung von Formularen. Weitere Hinweise zur Toolbox, zur Feldliste, zum Eigenschaften-Fenster und zur Format-Symbolleiste finden Sie in Kapitel 6 Formulare dieses Buchs.
Abb. 7.4 Entwurfsansicht eines Berichts
Nachdem Sie nun einen Pberblick ,ber die Vorgehensweisen zum Entwurf neuer Berichte erhalten haben, gehen die folgenden Abschnitte auf die Besonderheiten von Berichten gegen,ber Formularen ein. Im Anschluss daran finden Sie die Beschreibung einiger besonderer Aspekte der Berichts-Assistenten von Access. Dort erfahren Sie beispielsweise mehr ,ber das Gruppieren von Daten in Berichten.
Bericht speichern Ein Bericht wird ,blicherweise dazu erstellt, um bestimmte Daten in einer festgelegten Formatierung auf Papier auszudrucken. Nachdem dies geschehen ist, kDnnen Sie nur dann eine exakte Kopie dieses Ausdrucks erstellen, wenn Sie keine der dem Bericht zugrunde liegenden Daten ver!ndert haben. Der Grund daf,r ist, dass ein Bericht selbst keine Daten enth!lt, sondern nur ein Abbild der Daten in den Tabellen ist. Wenn also Daten ge!ndert werden, die einem Bericht zugrunde liegen, sieht auch der Bericht entsprechend anders aus.
433
Berichte
Sie stehen also vor einem Problem, wenn Sie einen Bericht, den Sie auf der Grundlage veralteter Daten erstellt haben, erneut ausdrucken mDchten. Weiterhin ist es nicht mDglich, Berichte in Dateiform zu verbreiten, z.B. per E-Mail. Stattdessen kDnnen Sie nur einen Ausdruck des Berichts vervielf!ltigen und in Papierform verbreiten. Mit Access XP kDnnen Sie Berichte in der Berichtsansicht speichern und anschließend mit einem geeigneten Viewer betrachten und drucken. Den gespeicherten Bericht kDnnen Sie dann auch per E-Mail versenden oder auf einer Webseite zur Verf,gung stellen. Um einen Bericht zu speichern, gehen Sie wie folgt vor: 1
Markieren Sie den Bericht im Datenbankfenster.
2
W!hlen Sie den Befehl Datei > Exportieren.
3
Geben Sie einen Dateinamen ein und w!hlen Sie als Dateityp den Eintrag Snapshot-Format.
4
Bet!tigen Sie die Speichern-Schaltfl!che.
Abb. 7.5 Der Dialog zum Exportieren von Berichten im Snapshot-Format
Access speichert den Bericht im Snapshot-Format. Im Exportieren-Dialog kDnnen Sie ,ber das Kontrollfeld Autostart festlegen, ob der Bericht direkt in dem dazu vorgesehenen Viewer angezeigt werden soll. Bei diesem Viewer handelt es sich um den Snapshot-Viewer.
434
Besondere Steuerelementeigenschaften
Beim Speichern des Berichts werden die aktuellen Sortiert nach- und Filter-Eigenschaften ber,cksichtigt. Falls zum Erstellen des Berichts Parameter wie z.B. Zeitr!ume eingegeben m,ssen, erfolgt dies genauso wie beim Erstellen der Entwurfsansicht eines Berichts. Sie kDnnen den gespeicherten Bericht aber auch sp!ter noch aufrufen. Dazu klicken Sie einfach doppelt auf den gew,nschten Bericht mit der Endung .snp. Der Snapshot-Viewer wird dann automatisch gestartet. MDglicherweise ist der Snapshot-Viewer noch nicht installiert. Dies wird jedoch nach dem ersten Aufrufen einer Datei mit den Endung .snp automatisch geschehen.
Abb. 7.6 Der Snapshot-Viewer
Besondere Steuerelementeigenschaften Die folgenden Abschnitte beschreiben einige Steuerelementeigenschaften, die f,r den Berichtsentwurf besonders geeignet sind.
Duplikate ausblenden Berichte basieren h!ufig auf Tabellen oder Abfragen, in denen sich wiederholende Datens!tze vorkommen. So wiederholt beispielsweise eine Abfrage mit einer 1:n-Beziehung zweier Tabellen den Datensatz der Master-Tabelle f,r alle zugeordneten Datens!tze der Detailtabelle (siehe auch Kapitel 5 Abfragen).
1:n-Beziehung
435
Berichte
Es ist aber nicht immer sinnvoll, die sich wiederholenden Daten auch wirklich auszudrucken. Wenn Sie dies verhindern wollen, dann !ndern Sie die Format-Eigenschaft Duplikate ausblenden f,r die entsprechenden Steuerelemente auf Ja. Dazu gehen Sie folgendermaßen vor: 1
Klicken Sie das Steuerelement (z.B. Name) mit der rechten Maustaste an.
2
W!hlen Sie aus dem Kontextmen, den Befehl Eigenschaften.
3
Klicken Sie auf das Register Format und stellen Sie die Format-Eigenschaft Duplikate ausblenden auf Ja.
4
Schließen Sie den Eigenschaftendialog.
Abb. 7.7 Bei diesem Bericht wurde die Eigenschaft Duplikate ausblenden nur f r das Feld Name gesetzt
Die Format-Eigenschaft Duplikate ausblenden ist f,r die meisten Steuerelemente eines Berichts verf,gbar.
Tipp
436
Access erkennt Duplikate nur in aufeinander folgenden Datens!tzen. Wenn die Eigenschaft Duplikate ausblenden ihre Wirkung nicht verfehlen soll, ist es empfehlenswert, die dem Bericht zugrunde liegende Tabelle oder Abfrage vorher nach dem entsprechenden Datenfeld zu sortieren. W!hlen Sie dazu den Befehl Ansicht > Sortieren und Gruppieren aus der Men,leiste. Weitere Hinweise zu diesem Thema finden Sie weiter unten in diesem Kapitel.
Besondere Steuerelementeigenschaften
Laufende Summe Die Daten-Eigenschaft Laufende Summe ermDglicht die kontinuierliche Anzeige von Summen f,r numerische Felder. Die Standardeinstellung f,r diese Eigenschaft ist Nein. Sie kDnnen Access veranlassen, in jeder Zeile des Berichts die Summe f,r ein bestimmtes numerisches Feld anzuzeigen. Erstellen Sie dazu ein Steuerelement und binden es an das numerische Feld. Das geht am einfachsten, indem Sie in der Toolbox das Textfeld-Symbol markieren und das Datenfeld aus der Feldliste auf den Arbeitsbereich ziehen. Wenn Access die Summe f,r dieses Feld ,ber alle Datens!tze der zugrunde liegenden Tabelle oder Abfrage laufend anzeigen soll, dann !ndern Sie die Daten-Eigenschaft Laufende Summe auf 9ber alles. Soll die laufende Summe nur ,ber die Datens!tze einer Gruppe gebildet werden, dann !ndern Sie die Eigenschaft auf 9ber Gruppe.
Abb. 7.8 Bei diesem Bericht wird die Brutto-Summe fortlaufend kumuliert
437
Berichte
Vergr&ßerbar und verkleinerbar Insbesondere bei der Gestaltung von tabellarischen Berichten tritt der Fall auf, dass die Breite eines Steuerelements kleiner gew!hlt wird, als es die Breite des l!ngsten darzustellenden Textes erfordert (siehe Abbildung 7.9). Manchmal ist dies die einzige MDglichkeit, um eine gewisse Anzahl Steuerelemente nebeneinander anzuordnen.
Vergr-ßerbar
Beim Ausdruck eines solchen Berichts schneidet Access die ,bersch,ssigen Zeichen des Steuerelements kurzerhand ab. Sie kDnnen dies verhindern, indem Sie die Eigenschaft Vergr4ßerbar auf den Wert Ja einstellen. Sie erreichen damit, dass Access die im Steuerelement enthaltenen Texte mehrzeilig ausdruckt. Dies bedingt nat,rlich, dass auch die Ausdehnung des entsprechenden Berichtsbereichs angepasst wird. Das ist der Grund daf,r, dass Access beim Einstellen der Steuerelementeigenschaft Vergr4ßerbar auf Ja automatisch die gleichnamige Bereichseigenschaft auf Ja einstellt.
Abb. 7.9 Hier vergrßert Access die vertikale Ausdehnung des Textfeldes, soweit es der Steuerelementinhalt erfordert
Dieser Zusammenhang gilt gleichermaßen f,r die Eigenschaft Verkleinerbar. Wenn Sie diese Eigenschaft auf Ja einstellen, staucht Access das Steuerelement in vertikaler Richtung, soweit es die L!nge des enthaltenen Textes zul!sst.
438
Berichtsbereiche und -eigenschaften
Besondere Steuerelementtypen Dieser Abschnitt weist auf die Besonderheiten einiger Steuerelementtypen im Berichtsentwurf hin.
Befehlsschaltfl%chen Mit Befehlsschaltfl!chen lassen sich Arbeitsabl!ufe in Formularen automatisieren. Die Befehlsschaltfl!che wird dazu mit einem Makro oder einer Access-Basic-Prozedur verbunden, das bzw. die bestimmte Aktionen durchf,hrt. So lassen sich beispielsweise neue Formulare, Berichte oder Abfragen Dffnen. In Berichten sollten Sie keine Befehlsschaltfl!chen anordnen, denn Access druckt Befehlsschaltfl!chen zwar aus, sie kDnnen jedoch nicht angeklickt werden. Die mit den Befehlsschaltfl!chen verbundenen Makros und Access-Basic-Prozeduren bleiben daher ohne Wirkung.
Auch Berichte kDnnen programmiert werden. Dies geschieht jedoch nicht ,ber Befehlsschaltfl!chen, sondern ,ber die Ereigniseigenschaften des Berichts und der Berichtsbereiche.
Tipp
Umschaltfl%chen Auch Umschaltfl!chen sollten Sie in Berichten nicht verwenden. Der aktivierte und nicht-aktivierte Zustand von Umschaltfl!chen kann nach dem Ausdruck auf Papier nur schwer ermittelt werden. Verwenden Sie statt der Umschaltfl!chen daher besser Kontrollk!stchen oder Optionsfelder.
Seitenwechsel Seitenwechsel haben bei Berichten eine andere Bedeutung als bei Formularen. Ein ,ber das gleichnamige Symbol eingef,gter Seitenwechsel bewirkt, dass der Ausdruck auf dem n!chsten Blatt Papier fortgesetzt wird. Die Seitensteuerung erfolgt nur in Ausnahmef!llen ,ber manuell eingef,gte Seitenwechsel. Es ist in der Regel besser, die Seitensteuerung ,ber die Eigenschaften des Berichts, der Berichtsbereiche und der Steuerelemente zu realisieren.
Tipp
Berichtsbereiche und -eigenschaften Wenn Sie einmal von den MDglichkeiten zur Gruppierung von Daten absehen, besteht ein Bericht aus den gleichen Bereichen wie ein Formular. Es gibt dennoch einige Unterschiede, die in der besonderen Qualifikation von Berichten f,r den Ausdruck auf Papier begr,ndet sind.
439
Berichte
Berichtsbereiche einblenden Das Ein- und Ausblenden der Berichtsbereiche erfolgt ,ber die Befehle Ansicht > Kopf-/Fußzeile des Berichts und Ansicht > Seitenkopf/-fuß. Der Detailbereich eines Berichts l!sst sich nur durch Ziehen mit der Maus oder durch das 0ndern der Bereichseigenschaft H4he auf den Wert 0 ausblenden.
Abb. 7.10 Berichtsbereiche
Berichtskopf Access druckt den Berichtskopf einmalig zu Beginn des Berichts. BerichtskDpfe eignen sich daher vorwiegend f,r Erl!uterungen zum Bericht oder berechnete Steuerelemente, die beispielsweise das Druckdatum ausgeben. Gebundene Steuerelemente sind in der Regel besser im Detailbereich eines Berichts aufgehoben.
Seitenkopf Der Seitenkopf erscheint zu Beginn jeder Druckseite eines Berichts. SeitenkDpfe eignen sich daher gut f,r Spalten- und andere Pberschriften sowie das Druckdatum.
Format-Eigenschaft: Sichtbar
440
Wenn Sie die Format-Eigenschaft Sichtbar des Seitenkopfs auf Nein stellen, blendet Access den Seitenkopf beim Ausdruck aus. Sie haben so die MDglichkeit, nur den Seitenfuß ausdrucken zu lassen.
0ndern Sie die Berichtseigenschaft Seitenkopf, wenn Access den Seitenkopf auf der Seite f,r den Berichtskopf- oder den Berichtsfußzeilenbereich nicht drucken soll. Die Beschreibung der Eigenschaft finden Sie im Abschnitt Berichtseigenschaften weiter unten in diesem Kapitel.
Hinweis
Gruppenkopf Wenn Sie im Dialog Sortieren und Gruppieren f,r ein Gruppenkriterium die Eigenschaft Gruppenkopf auf Ja einstellen, erstellt Access den gleichnamigen Bereich. Der Gruppenkopf eignet sich f,r Pberschriften, die sich auf die Gruppe beziehen. Der Gruppenkopf sollte generell eine Bezeichnung der Gruppe enthalten (z.B. Ums7tze von Kundennummer: 0815). Weiter unten in diesem Kapitel finden Sie einen Abschnitt, der den Entwurf von gruppierten Berichten beschreibt. Hinweis
Detailbereich Access zeigt im Berichtsentwurf stets auch den Detailbereich an. Wenn Sie diesen Bereich durch Ziehen mit der Maus schließen, wird er jedoch nicht gedruckt. Der Detailbereich eignet sich vorwiegend zur Anzeige von Steuerelementen, die mit den Datenfeldern der zugrunde liegenden Tabelle oder Abfrage verbunden sind. Access druckt den Detailbereich f,r jeden Datensatz der zugrunde liegenden Tabelle oder Abfrage.
Gruppenfuß Wenn Sie im Dialog Sortieren und Gruppieren f,r ein Gruppenkriterium die Eigenschaft Gruppenfuß auf Ja einstellen, erstellt Access den gleichnamigen Bereich. Der Gruppenfuß bildet den zum Gruppenkopf korrespondierenden Bereich. Access druckt den Gruppenfuß einmalig am Ende jeder Gruppe aus. Der Gruppenfuß eignet sich damit f,r Summen und andere Berechnungen, die f,r die Gruppe gebildet werden sollen.
Seitenfuß
Berichte
Hinweis
0ndern Sie die Berichtseigenschaft Seitenfuß, wenn Access den Seitenfuß auf der Seite f,r den Berichtskopf- oder den Berichtsfußzeilenbereich nicht drucken soll. Die Beschreibung der Eigenschaft finden Sie im Abschnitt Berichtseigenschaften weiter unten in diesem Kapitel.
Berichtsfuß Access druckt den Berichtsfuß einmalig am Ende des Berichts. Der Berichtsfuß eignet sich damit f,r Summen und andere Berechnungen, die f,r den gesamten Bericht gebildet werden sollen.
Bereichseigenschaften Bereiche zeichnen sich wie Steuerelemente durch Eigenschaften aus. Zur Einsicht der Eigenschaften eines Berichtsbereichs markieren Sie den Bereich und Dffnen Sie das Eigenschaftenfenster. Das Markieren eines Bereichs erfolgt durch einen Mausklick auf den grauen Balken, in dem Access den Bereichsnamen anzeigt, oder einen Mausklick auf einen leeren Bereich der Arbeitsfl!che innerhalb des Bereichs. Beachten Sie, dass Access auch f,r korrespondierende Bereiche getrennte Eigenschaften besitzt. So l!sst sich beispielsweise der Berichtskopf anzeigen, w!hrend der Berichtsfuß ausgeblendet wird.
Abb. 7.11 Eigenschaften des Detailbereichs eines Berichts
442
Berichtsbereiche und -eigenschaften
Die Format-Eigenschaft Neue Seite bewirkt Seitenwechsel vor und/oder nach einem Bereich. W!hlen Sie den Eintrag Vor Bereich aus dem Kombinationsfeld, damit Access vor dem Bereich einen Seitenwechsel einf,gt. Der Eintrag Nach Bereich bewirkt, dass Access hinter dem Bereich einen Seitenwechsel durchf,hrt. Der Eintrag Vor & Nach bewirkt einen Seitenwechsel vor und nach dem Bereich. Wenn Sie die Format-Eigenschaft Neue Seite f,r den Berichtskopfbereich auf den Wert Nach Bereich setzen, kDnnen Sie den Berichtskopf als eine Art Deckblatt nutzen, das nur einmalig zu Beginn des Ausdrucks erscheint. Wenn Sie einen mehrspaltigen Bericht entwerfen, bestimmt die Eigenschaft Neue Zeile oder Spalte, ob der Bereich beim Ausdruck in einer neuen Zeile oder Spalte beginnt. Die Eigenschaft kommt wie die gleichnamige Formulareigenschafte nur bei der Gestaltung mehrspaltiger Berichte zur Geltung. Weitere Hinweise zu mehrspaltigen Berichten finden Sie in einem Abschnitt weiter unten in diesem Kapitel. Die Format-Eigenschaft Zusammenhalten bestimmt, dass der Bereich mDglichst auf derselben Druckseite erscheint. Wenn Sie die Eigenschaft auf Ja !ndern, pr,ft Access vor dem Ausdruck des Bereichs, ob er noch auf die aktuelle Druckseite passt. Ist dies nicht gegeben, beginnt der Ausdruck des Bereichs auf der n!chsten Druckseite. Die Format-Eigenschaft Sichtbar bestimmt, ob ein Bereich gedruckt wird. Wenn Sie die Eigenschaft auf Nein !ndern, blendet Access den Bereich aus. So lassen sich korrespondierende Bereiche getrennt ausblenden. Enth!lt ein Bereich ein Steuerelement, f,r das die Format-Eigenschaften Vergr4ßerbar m4glich ist, setzt Access die gleichnamige Eigenschaft auch f,r den Bereich. Dies gilt nicht f,r die Eigenschaft Verkleinerbar. Sie benDtigen diese Eigenschaften, wenn ein Steuerelement mehrzeilige Texte enth!lt. Access passt die vertikale Ausdehnung des Steuerelements dann beim Ausdruck automatisch an. Dies bedingt nat,rlich, dass auch die Ausdehnung des Bereichs, der das Steuerelement enth!lt, angepasst werden muss. Bei gruppierten Berichten steht f,r den Kopfbereich jeder Gruppe die Eigenschaft Bereich wiederholen zur Verf,gung. Wenn Sie diese Eigenschaft auf den Wert Ja einstellen und eine Gruppe mehr als eine Seite bzw. Spalte umfasst, wiederholt Access den Gruppenkopf auf der n!chsten Druckseite oder -spalte. Sie erreichen damit beispielsweise, dass die Pberschriften einer Gruppe mit tabellarisch angeordneten Steuerelementen auf jeder neuen Druckseite oder -spalte wiederholt werden. Sie kDnnen die HDhe eines Berichtsbereichs mit der Maus oder ,ber die gleichnamige Format-Eigenschaft einstellen. Positionieren Sie die Maus auf das untere Ende des Bereichs, so dass sich der Mauszeiger in einen vertikalen Pfeil mit zwei Spitzen !ndert. Ziehen Sie dann die untere Begrenzung des Bereichs in die gew,nschte Richtung.
Format-Eigenschaft: Neue Seite
Tipp
Format-Eigenschaft: Neue Spalte oder Zeile
Format-Eigenschaft: Zusammenhalten
Format-Eigenschaft: Sichtbar
FormatEigenschaften: Vergr-ßerbar und Verkleinerbar
Bereich wiederholen
Format-Eigenschaft: H-he
443
Berichte
Alternativ kDnnen Sie die HDhe des Bereichs auch direkt in die gleichnamige Eigenschaft eingeben. Geben Sie die HDhe in der Einheit an, die Sie in den L7ndereinstellungen der Systemsteuerung von Windows festgelegt haben. Das ist in der Regel die Einheit Zentimeter (cm).
Hinweis
EreignisEigenschaften
Wenn Sie Steuerelemente entwerfen, die ,ber die untere Begrenzung eines Bereichs hinausgehen, passt Access die BereichshDhe automatisch an. Sollte ein Bereich ein Steuerelement enthalten, f,r das die Format-Eigenschaften Vergr4ßerbar oder Verkleinerbar gew!hlt wurden, passt Access die BereichshDhe beim Ausdruck automatisch an. Beachten Sie in diesem Zusammenhang die Beschreibung der beiden Format-Eigenschaften weiter oben in diesem Abschnitt. Die Ereignis-Eigenschaften Beim Formatieren, Beim Drucken und Bei R1cknahme sind nur f,r Programmierer interessant.
Berichtseigenschaften Berichtseigenschaften bestimmen wichtige Parameter des Berichts. Mithilfe der Berichtseigenschaften kDnnen Sie beispielsweise die Datenherkunft und die verf,gbaren Schriften beeinflussen. Die Bearbeitung der Berichtseigenschaften erfolgt im Eigenschaftenfenster. Um die Berichtseigenschaften einzusehen, gehen Sie wie folgt vor: 1
Rffnen Sie das Eigenschaftenfenster mit einem Klick auf das gleichnamige Symbol.
2
Markieren Sie das Berichtsobjekt.
Das Markieren des Berichtsobjekts kann alternativ ,ber die Auswahl des Men,befehls Bearbeiten > Bericht ausw7hlen oder einen Mausklick auf das Rechteck im Schnittpunkt zwischen dem horizontalen und vertikalen Lineal erfolgen. Access zeigt in der Titelzeile des Eigenschaftenfensters den Text Bericht an.
Tipp
Daten-Eigenschaft: Datenherkunft
Hinweis
444
Sie kDnnen alternativ auch auf einen Bereich der Arbeitsfl!che außerhalb aller Berichtsbereiche klicken, um den Bericht zu markieren. Hier und im Rechteck, das den Schnittpunkt des horizontalen und vertikalen Lineals bildet, kDnnen Sie das Eigenschaftenfenster des Berichtobjekts auch ,ber das Kontextmen, Dffnen. Die Daten-Eigenschaft Datenherkunft bestimmt, auf welcher Tabelle oder Abfrage der Bericht basiert. W!hlen Sie eine Tabelle oder Abfrage aus dem Kombinationsfeld. Wenn Sie bereits Steuerelemente erstellt haben und Sie !ndern die Datenherkunft nachtr!glich, kann dies zu Fehlern f,hren. Wenn Access in der neuen Tabelle oder Abfrage die Feldnamen f,r gebundene Steuerelemente nicht finden kann, zeigt es in der Seitenansicht und im Ausdruck den Wert #Name? als Steuerelementinhalt an.
Berichtsbereiche und -eigenschaften
Abb. 7.12 (bersicht aller Berichtseigenschaften
Die Berichtseigenschaft Filter hat die gleiche Bedeutung wie die gleichnamige Formulareigenschaft und eignet sich zur Definition eines Filters. Access ,bernimmt den Wert der Eigenschaft standardm!ßig aus der gleichnamigen Eigenschaft der zugrunde liegenden Tabelle oder Abfrage. Weitere Hinweise finden Sie in Kapitel 6 Formulare dieses Buchs. Bei Berichten besteht im Unterschied zu Formularen jedoch keine MDglichkeit f,r den Anwender, den Filter ,ber Men,befehle oder die Symbolleiste zu aktivieren. Hier bestimmen Sie ,ber die Eigenschaft Filter aktiv im Berichtsentwurf, ob Access den Filter ber,cksichtigen soll. Falls Sie dies w,nschen, !ndern Sie die Eigenschaft auf den Wert Ja. F,r die Eigenschaften Sortiert nach und Sortierung aktiv gilt derselbe Zusammenhang wie f,r die Eigenschaften Filter und Filter aktiv (siehe oben und Kapitel 6 Formulare). Mit der Eigenschaft Sortiert nach geben Sie eines oder mehrere Datenfelder zur Sortierung der Berichtsdaten an. Auch hier ,bernimmt Access den Wert der Eigenschaft standardm!ßig aus der gleichnamigen Eigenschaft der zugrunde liegenden Tabelle oder Abfrage. Die Eigenschaft Filter aktiv bestimmt, ob diese Sortierung angewendet wird. Die Definition einer Sortierreihenfolge ,ber den Befehl Ansicht > Sortieren und Gruppieren ist komfortabler als ,ber die Eigenschaft Sortiert nach. Weitere Hinweise zu diesem Befehl finden Sie weiter unten im Abschnitt Daten sortieren und gruppieren. In die Eigenschaft Beschriftung geben Sie einen bis zu 255 Zeichen langen Text ein, den Access in der Titelzeile des Berichtsfensters anzeigt.
Filter und Filter aktiv
Sortiert nach und Sortierung aktiv
Tipp
Beschriftung
445
Berichte
Datens(tze sperren
FormatEigenschaften: Seitenkopf und Seitenfuß
Datumsgruppierung
Die Eigenschaft Datens7tze sperren beeinflusst das Verhalten eines Berichts in einer Mehrbenutzerumgebung. Weitere Hinweise zum Einsatz von Access in Netzwerken finden Sie in Kapitel 12 Access im Netzwerk dieses Buchs. Access druckt den Seitenkopfbereich und den Seitenfußbereich standardm!ßig f,r alle Seiten eines Berichts. Dies entspricht der Standardeinstellung der Format-Eigenschaft Seitenkopf auf Alle Seiten. Wenn Sie Berichtskopf- oder -fußbereiche definieren, bei denen SeitenkDpfe oder -f,ße stDrend sind, sollten Sie die Eigenschaft auf Außer Berichtskopf, Außer Berichtsfuß oder Außer Berichtskopf/-fuß !ndern. Access druckt den Seitenkopf bzw. -fuß f,r diese Bereiche nicht. Die Eigenschaft Datumsgruppierung entscheidet in gruppierten Berichten ,ber den ersten Wochentag. Bei der Einstellung US-Standard setzt Access den Sonntag als ersten Wochentag und den 1. Januar als Beginn der ersten Woche des Jahres ein. Im deutschsprachigen Raum ist es ,blich, diese Eigenschaft auf dem Wert Systemeinstellungen verwenden zu belassen, damit Access die entsprechenden Parameter dem Gebietsschema der L7ndereinstellungen der Systemsteuerung von Windows entnimmt.
Gruppe zusammenhalten
Mit der Eigenschaft Gruppe zusammenhalten bestimmen Sie, ob Access die Gruppen eines Berichts, deren Eigenschaft Zusammenhalten auf Ja eingestellt ist, pro Seite oder pro Spalte zusammenhalten soll.
Format-Eigenschaft: Breite
Mit der Format-Eigenschaft Breite bestimmen Sie die Breite des Druckbereichs eines Berichts. Der kleinstmDgliche Wert f,r diese Eigenschaft ist die rechte Begrenzung des am weitesten rechts angeordneten Steuerelements des Berichts.
FormatEigenschaften: Raster X und Raster Y
Hinweis
446
Die beiden Format-Eigenschaften Raster X und Raster Y bestimmen die Einteilung des Rasters des Berichts in der Entwurfsansicht. Die beiden Eigenschaften haben keinen Einfluss auf die Seitenansicht oder den Ausdruck. Die Einteilung des Rasters richtet sich nach der in den L7ndereinstellungen der Systemsteuerung von Windows eingestellten Einheit. Dies ist in der Regel die Einheit Zentimeter (cm). Raster X und Raster Y bestimmen, wie oft diese Einheit zur Anzeige des Rasters unterteilt wird. So bewirkt beispielsweise der Wert 2, dass die Rasterpunkte in Abst!nden von einem halben Zentimeter angeordnet werden. Das Einund Ausblenden des Rasters erfolgt im Berichtsentwurf ,ber den Befehl Ansicht > Raster. Weitere Einzelheiten zur Verwendung des Rasters, der Lineale und zum Ausrichten von Steuerelementen finden Sie in den Abschnitten Lineale und Raster in Kapitel 6 Formulare dieses Buchs.
Daten sortieren
Die Format-Eigenschaft Drucklayout bestimmt, ob in Berichten nur Drucker- oder auch Bildschirmschriftarten verf,gbar sind. Die Standardeinstellung der Eigenschaft auf Ja bewirkt, dass nur die Druckerschriftarten verf,gbar sind. Wenn Sie die Eigenschaft auf Nein !ndern, verf,gen Sie beim Erstellen von Steuerelementen zus!tzlich ,ber die Bildschirmschriften. Die Pbereinstimmung zwischen Bildschirm- und Druckerschriften ist nur f,r die TrueType-Schriften von Windows gew!hrleistet. Es gibt auch einige Schriftenprogramme, wie beispielsweise den Adobe Type Manager, die die Pbereinstimmung von Bildschirm- und Druckerschriften gew!hrleisten. Mit der Berichtseigenschaft Schneller Laserdruck kDnnen Sie den Ausdruck eines Berichts auf den g!ngigen Laserdruckern beschleunigen. Wenn Sie die Eigenschaft auf den Wert Ja einstellen, druckt Access Linien und Berichte durch so genannte Blockzeichen. Bei der Standardeinstellung Nein druckt Access Linien und Rechtecke als Grafiken. Der Ausdruck als Blockzeichen f,hrt zu einer hDheren Druckgeschwindigkeit, die jedoch meistens mit geringerer Qualit!t erkauft wird. Die Eigenschaft hat keine Auswirkung auf den Ausdruck mit PostScript-Druckern, Nadeldruckern und !lteren Laserdruckern, die keine Blockzeichen kennen. Mit der Format-Eigenschaft Palettenherkunft kDnnen Sie eine andere Farbpalette f,r den Bericht ausw!hlen. Die Ereignis-Eigenschaften Beim ffnen, Beim Schließen, Bei Aktivierung, Bei Deaktivierung, Bei ohne Daten, Bei Seite und Bei Fehler sind nur f,r Programmierer interessant.
Format-Eigenschaft: Drucklayout
Hinweis
Schneller Laserdruck
Format-Eigenschaft: Palettenherkunft EreignisEigenschaften
Daten sortieren Manchmal ist es erforderlich, die Daten in einem Bericht nach anderen Kriterien zu sortieren, als dies von der zugrunde liegenden Tabelle oder Abfrage vorgesehen ist. Um dies zu erreichen, brauchen Sie den Tabellen- oder Abfrageentwurf nicht zu !ndern. Stattdessen legen Sie die neue Sortierreihenfolge einfach im Berichtsentwurf fest.
Sortierreihenfolge entwerfen Die MDglichkeit zum Sortieren von Daten in Berichten kennen Sie bereits aus der Verwendung der Berichts-Assistenten in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs. Die Berichts-Assistenten fragen in einem eigens daf,r vorgesehenen Dialog, nach welchen Datenfeldern Sie sortieren wollen. Die folgenden Ausf,hrungen konzentrieren sich jedoch auf die manuelle Definition von Sortierreihenfolgen. In diesem Zusammenhang lernen Sie unter anderem spezielle Techniken kennen, die Sie mit dem Berichts-Assistenten nicht umsetzen kDnnen.
Berichts-Assistenten
447
Berichte
Sortierreihenfolge manuell definieren
In Berichten kDnnen Sie bis zu zehn Sortierkriterien definieren. Als Sortierkriterien eignen sich Datenfelder und – im Unterschied zum Berichts-Assistenten – auch berechnete Ausdr,cke. Das Festlegen von Sortierkriterien erfolgt im Fenster Sortieren und Gruppieren. Um das Fenster zu Dffnen, klicken Sie auf das GruppierungsSymbol oder w!hlen den Befehl Ansicht > Sortieren und Gruppieren.
Abb. 7.13 Berichtsdaten sortieren
Sofern Sie den Bericht mit einem der Berichts-Assistenten erstellt und Sortierkriterien angegeben haben, zeigt das Fenster die Datenfelder an, nach denen sortiert wird. Andernfalls kDnnen Sie das Fenster zur Definition einer Sortierreihenfolge verwenden, die von der zugrunde liegenden Tabelle oder Abfrage abweicht.
Hinweis
Felder ausw!hlen
Nach Ausdr cken sortieren
Im unteren Teil des Fensters Sortieren und Gruppieren finden Sie die Eigenschaften Gruppenkopf und Gruppenfuß. Sie benDtigen diese beiden Eigenschaften zur Definition von Gruppenkriterien. Weiter unten in diesem Kapitel beschreibt der Abschnitt Daten gruppieren, wie gruppierte Berichte erstellt werden. Klicken Sie in die Spalte Feld/Ausdruck der ersten Zeile des Fensters und w!hlen Sie ein Datenfeld aus dem Kombinationsfeld. Access setzt die Sortierreihenfolge standardm!ßig auf Aufsteigend. Alternativ kDnnen Sie auch die absteigende Sortierreihenfolge aus dem Kombinationsfeld Sortierreihenfolge w!hlen. Neben Datenfeldern eignen sich auch Ausdr,cke als Sortierkriterien. Achten Sie jedoch darauf, dass Sie Ausdr,cke mit einem vorangestellten Gleichheitszeichen eingeben m,ssen. Ausdr,cke d,rfen sich auf die Datenfelder der zugrunde liegenden Tabelle oder Abfrage beziehen. So sortiert beispielsweise der Ausdruck =[Ist Nettobetrag]/[Plan Nettobetrag] nach dem Verh!ltnis zwischen dem geplanten und dem tats!chlichen Nettobetrag eines Projekts (siehe Abbildung 7.14). Sie kDnnen diesen Plan-/Ist-Vergleich auf- oder absteigend sortieren lassen.
448
Daten sortieren
Abb. 7.14 Projekte mit Plan-/IstVergleich
Wenn Sie mehrere Sortierkriterien benDtigen, tragen Sie diese einfach untereinander in das Fenster Sortieren und Gruppieren ein. Access sortiert zuerst nach dem obersten Kriterium. Stimmen die Werte des obersten Kriteriums ,berein, entscheidet das zweite Kriterium usw. In Abbildung 7.14 werden die Projekte beispielsweise zun!chst nach dem Verh!ltnis von geplanten und tats!chlichen Nettobetr!gen sortiert. Bei ,bereinstimmenden Werten entscheidet das Datenfeld Titel ,ber die Sortierung.
Mehrere Sortierkriterien
Bereiche fr Sortierkriterien Mit den beiden Eigenschaften Gruppieren nach und Intervall kDnnen Sie Bereiche f,r Sortierkriterien definieren. So l!sst sich ein Bericht beispielsweise nicht nur nach einem Datumswert, sondern auch nach Quartalen sortieren. Die Bildung von Bereichen f,r Sortierkriterien erfolgt nach denselben Regeln wie bei Gruppenkriterien. Da die Bereichsbildung f,r Gruppen eine wichtigere Rolle spielt, wird sie weiter unten im Abschnitt Bereiche f,r Gruppenkriterien besprochen.
Sortierung %ndern Sie kDnnen Sortierkriterien !ndern und lDschen. Klicken Sie auf das GruppierungsSymbol oder w!hlen den Befehl Ansicht > Sortieren und Gruppieren, so dass Access den gleichnamigen Dialog anzeigt.
449
Berichte
Sortierkriterium !ndern
Sortierkriterium lschen Sortierhierarchie !ndern
Wenn Sie ein Sortierkriterium !ndern wollen, dann klicken Sie auf das Eingabefeld im oberen Teil des Dialogs. W!hlen Sie ein anderes Datenfeld aus dem Kombinationsfeld oder geben einen neuen Ausdruck ein. Um eines oder mehrere Sortierkriterien zu lDschen, markieren Sie die entsprechenden Zeilen und bet!tigen Sie die _-Taste. Die Hierarchie der Sortierkriterien ergibt sich aus ihrer Anordnung im Dialog Sortieren und Gruppieren. Wenn Sie die Hierarchie !ndern wollen, dann markieren Sie eine Zeile und ziehen sie an die neue Position.
Daten gruppieren Das Gruppieren von Daten ist eine sehr beliebte Anwendung f,r Berichte. Berichte kDnnen nicht nur einzelne Datens!tze je Gruppe drucken, sondern auch zusammenfassende Berechnungen auf Gruppenebene durchf,hren. Das macht den eigentlichen Vorteil des Gruppierens gegen,ber dem Sortieren aus.
Gruppieren mit dem Berichts-Assistenten Bei Access 2.0 eignen sich der Gruppierungs- und der Zusammenfassungs-Assistent zum Entwurf von Berichten, die Daten gruppieren und auf Gruppenebene Berechnungen durchf,hren. Ab Access 7.0 suchen Sie diese beiden Assistenten vergeblich. Da der Berichts-Assistent um die entsprechenden Funktionen erweitert wurde, konnten die einzelnen Assistenten entfallen.
Abb. 7.15 Datengruppierung mit dem Berichts-Assistenten
450
Daten gruppieren
Als Beispiel f,r den Einsatz des Berichts-Assistenten zum Gruppieren und Zusammenfassen von Daten finden Sie weiter unten in diesem Kapitel den Abschnitt Beispiel: Projekte eines Jahres. Die folgenden Abschnitte erl!utern zun!chst das manuelle Gruppieren von Daten in Berichten.
Daten manuell gruppieren Den Entwurf von Gruppen erfolgt im Dialog Sortieren und Gruppieren. Klicken Sie auf das Gruppierungs-Symbol oder w!hlen Sie den Befehl Ansicht > Sortieren und Gruppieren, so dass Access den gleichnamigen Dialog Dffnet. Geben Sie das Gruppenkriterium in die Spalte Feld/Ausdruck ein und w!hlen eine Sortierreihenfolge. Als Gruppenkriterien eignen sich Datenfelder oder Ausdr,cke. Bei Ausdr,cken m,ssen Sie ein Gleichheitszeichen voranstellen. Access sortiert automatisch nach Gruppenkriterien. Sie brauchen daher keine weitere Zeile mit dem gleichen Feld oder Ausdruck f,r die Sortierung anzulegen.
Gruppenkriterium eingeben
Die bisherige Verfahrensweise ist die gleiche wie bei der Festlegung von Sortierkriterien. Aus dem Sortier- wird ein Gruppenkriterium, indem Sie die Eigenschaften Gruppenkopf und Gruppenfuß im unteren Teil des Dialogs ver!ndern. Die Standardeinstellung f,r die Eigenschaft Gruppenkopf ist Nein. Wenn Sie die Eigenschaft auf Ja !ndern, wandelt Access das Sortier- in ein Gruppenkriterium um. Gleichzeitig erstellt es im Bericht einen Gruppenkopfbereich f,r das Kriterium.
Gruppenkopf
Die Standardeinstellung f,r die Eigenschaft Gruppenfuß ist Nein. Wenn Sie die Eigenschaft auf Ja !ndern, wandelt Access das Sortier- in ein Gruppenkriterium um. Gleichzeitig erstellt es im Bericht einen Gruppenfußbereich f,r das Kriterium.
Gruppenfuß
Sie kDnnen f,r jedes Gruppenkriterium nur eine oder beide der Eigenschaften Gruppenkopf und Gruppenfuß ausw!hlen, um das Sortier- in ein Gruppenkriterium umzuwandeln. Access markiert im Dialog Gruppieren und Sortieren Gruppenkriterien zur besseren Unterscheidung von Sortierkriterien durch das Gruppierungs-Symbol.
Abb. 7.16 Mehrere Gruppen- und Sortierkriterien
451
Berichte
Bereichseigenschaften
Mehrere Gruppenkriterien
Sowohl der Gruppenkopf- als auch der Gruppenfußbereich verf,gen ,ber eigene Eigenschaften. Wenn Sie die Eigenschaften !ndern wollen, dann markieren Sie zun!chst den Bereich und Dffnen dann das Eigenschaftenfenster. Die Beschreibung der Bereichseigenschaften finden Sie im gleichnamigen Abschnitt weiter oben in diesem Kapitel. Sie kDnnen auch mehrere Gruppenkriterien definieren. In diesem Fall gilt das Gleiche wie f,r Sortierkriterien. Die Daten werden zun!chst nach dem obersten Kriterium gruppiert. Innerhalb einer Gruppe entscheidet dann das zweite Kriterium usw. Gruppen- und Sortierkriterien lassen sich auch mischen. So kDnnen Sie die Daten zun!chst gruppieren und dann die Sortierreihenfolge f,r die Gruppe unterster Ebene angeben. Ein Beispiel w!re das Gruppieren von Projekten nach Adressennummern. Innerhalb einer Gruppe gleicher Adressennummern kDnnen die Projekte nach Titel sortiert werden.
Abb. 7.17 Bericht mit mehreren Gruppenkriterien und Berechnungen
Steuerelemente anordnen
452
Nach dem Erstellen des Gruppenkopf- und des Gruppenfußbereichs kDnnen Sie in beiden Bereichen Steuerelemente anordnen. Verwenden Sie dazu wie gewohnt die Toolbox der Entwurfsansicht.
Daten gruppieren
Sie sollten jedoch darauf achten, dass Sie im Gruppenkopfbereich eine Pberschrift einf,gen. Diese Pberschrift sollte ein Steuerelement enthalten, das an das gleiche Feld oder den gleichen Ausdruck wie das Gruppenkriterium gebunden ist. Die Pberschrift zeigt so, welcher Gruppe die folgenden Daten zugeordnet werden.
(berschrift
Gruppierung %ndern Sie kDnnen Gruppenkriteren und -bereiche !ndern und lDschen. Klicken Sie auf das Gruppierungs-Symbol oder w!hlen den Befehl Ansicht > Sortieren und Gruppieren, so dass Access den gleichnamigen Dialog anzeigt. Wenn Sie ein Gruppenkriterium !ndern wollen, dann klicken Sie auf das Eingabefeld im oberen Teil des Dialogs. W!hlen Sie ein anderes Datenfeld aus dem Kombinationsfeld oder geben Sie einen neuen Ausdruck ein. Das 0ndern einer der Eigenschaften Gruppenkopf oder Gruppenfuß bewirkt automatisch auch das LDschen des gleichnamigen Gruppenbereiches. Beachten Sie, dass das LDschen eines Gruppenbereichs automatisch auch zum LDschen aller in ihm enthaltenen Steuerelemente f,hrt.
Gruppenkriterium !ndern
Gruppenbereich lschen
Wenn der Gruppenbereich bereits Steuerelemente enth!lt, macht Access mit einer Warnung auf das LDschen des Gruppenbereichs und der enthaltenen Steuerelemente aufmerksam. Klicken Sie auf OK, um den Gruppenbereich zu lDschen. Die Schaltfl!che Abbrechen bricht den Vorgang ab. Die Hierarchie der Gruppenkriterien ergibt sich aus ihrer Anordnung im Dialog Sortieren und Gruppieren. Wenn Sie die Hierarchie !ndern wollen, markieren Sie eine Zeile und ziehen sie an die neue Position. Access verschiebt dann automatisch die korrespondierenden Gruppenbereiche und die in ihnen enthaltenen Steuerelemente.
Gruppenhierarchie !ndern
Bereiche fr Gruppenkriterien Mit den beiden Eigenschaften Gruppieren nach und Intervall kDnnen Sie Bereiche f,r Gruppenkriterien definieren. So l!sst sich beispielsweise ein Bericht zun!chst nach den Quartalen eines Datumsfeldes gruppieren, um dann innerhalb des Quartals nach Ums!tzen zu sortieren. In diesem Fall m,ssten Sie die in Tabelle 7.1 aufgef,hrten Kriterien definieren.
Gruppenkriterien
Sortierkriterium
Datumsfeld
Umsatz
Gruppenkopf
Ja
Nein
Gruppenfuß
Ja
Nein 453
Berichte
Gruppenkriterien (Forts.)
Sortierkriterium
Datumsfeld
Umsatz
Gruppieren nach
Quartal
Jedem Wert
Intervall
1
1 Tabelle 7.1
Die folgenden Abschnitte beschreiben die MDglichkeiten zur Bereichsbildung f,r Gruppenkriterien im Einzelnen.
Gruppieren nach
Die Standardeinstellung f,r die Eigenschaft Gruppieren nach ist Jedem Wert. Access unterscheidet bei dieser Einstellung nach jedem Wert des Gruppenkriteriums. So ist beispielsweise das Datum 5.10.2000 kleiner als das Datum 31.10.2000. Mit der Eigenschaft Gruppieren nach kDnnen Sie auch Bereiche f,r das Gruppenkriterium bilden. So l!sst sich beispielsweise ein Datumsfeld nach Quartalen gruppieren. Da die Daten 5.10.2000 und 31.10.2000 im selben Quartal liegen, sind sie in der Gruppierung gleichgeordnet. Sie sollten dann ein weiteres Sortierkriterium definieren, das die Sortierung innerhalb eines Bereichs festlegt. Der Standardwert f,r die Eigenschaft Intervall ist 1. Dieser Wert bestimmt, dass Access jeden Wert des Kriteriums unterscheidet. Wenn Sie das Intervall auf den Wert 2 !ndern, ber,cksichtigt Access nur jeden zweiten Wert usw.
Intervall
Die Eigenschaft Intervall erfordert unabh!ngig vom Datentyp des Gruppenkriteriums die Eingabe einer Zahl. Die Zahl bestimmt sozusagen, der wievielte Wert eines Sortier- oder Gruppenkriteriums ber,cksichtigt werden soll. Wenn Sie beispielsweise ein numerisches Gruppenkriterium definiert haben, bestimmt das Intervall 10, dass die Zahlen 0 bis 9, die Zahlen 10 bis 19, die Zahlen 20 bis 29 usw. jeweils einen Gruppenbereich bilden. Die Werte eines Gruppenbereichs sind dabei gleichgeordnet. Sie sollten daher auch bei der Intervallbildung zus!tzliche Kriterien definieren, die die Datens!tze eines Bereichs sortieren.
Gruppenbereiche f r Zahl-, AutoWertund W(hrungFelder Gruppenbereiche f r Datum/ZeitFelder
454
Bei Zahl-, AutoWert- und W7hrung-Feldern kDnnen Sie f,r die Eigenschaft Gruppieren nach nur die Werte Jedem Wert und Intervall ausw!hlen. In diesem Fall dient das Intervall der Bildung von Gruppenbereichen, die sich nach den Wertebereichen des Gruppenkriteriums richten (Beispiel siehe oben). F,r Datum/Zeit-Felder kDnnen Sie Bereiche bilden, die die Daten eines Jahres, eines Quartals, eines Monats, einer Woche, eines Tages, einer Stunde oder einer Minute zusammenfassen. W!hlen Sie dazu den jeweils gleichnamigen Eintrag aus dem Kombinationsfeld.
Daten markieren
Mit der zus!tzlichen Angabe eines Intervalls kDnnen Sie bestimmen, dass Access immer zwei, drei oder mehr Jahre, Quartale usw. zu einem Gruppenbereich zusammenfasst.
Abb. 7.18 Hier werden die Daten nach Halbjahren gruppiert
Wenn Sie beispielsweise f,r die Eigenschaft Gruppieren nach den Wert Quartal und f,r Intervall den Wert 2 festlegen, dann gruppiert Access nach Halbjahren. Textfelder lassen sich nach ihrem gesamten Inhalt oder nur nach einer bestimmten Anzahl Anfangszeichen gruppieren. Sollen Textfelder nach ihrem gesamten Inhalt gruppiert werden, dann w!hlen Sie f,r die Eigenschaft Gruppieren nach den Eintrag Jedem Wert.
Gruppenbereiche f r Textfelder
W!hlen Sie hingegen f,r die Eigenschaft Gruppieren nach den Wert Anfangszeichen, dann bestimmt die Eigenschaft Intervall, wie viele Anfangszeichen Access zur Gruppierung ber,cksichtigen soll. Das Intervall 1 legt in diesem Fall fest, dass nur nach dem Anfangsbuchstaben des Textfeldes gruppiert wird.
Daten markieren Access XP ermDglicht die Markierung bestimmter Daten innerhalb eines Berichts durch eine geeignete Formatierung. Auch fr,here Access-Versionen erlauben das Markieren von Daten mit bestimmten Eigenschaften. Allerdings sind dazu Programmierkenntnisse erforderlich. Um bestimmte Daten in einem Bericht optisch auff!llig zu gestalten, wird die Bedingte Formatierung eingesetzt. Wenn Sie bereits Kapitel 6 Formulare gelesen haben, wird Ihnen dieser Begriff nicht neu sein. Dort wird die bedingte Formatierung in Text- und Kombinationsfeldern benutzt, um Daten mit vorher festgelegten Eigenschaften in einem anderen Format anzuzeigen.
Bedingte Formatierung
Auch die Ausgabe von Daten in Berichten kann durch den Einsatz der Bedingten Formatierung sehr viel effektiver werden. Dies wird am besten an einem Beispiel deutlich. 455
Berichte
Auf der diesem Buch beiliegenden CD finden Sie die Datenbank Projekte, die alle Tabellen, Abfragen, Formulare und Berichte enth!lt, die in diesem Buch beschrieben werden. Darunter befindet sich auch der Bericht Projekte: Plan/Ist-Vergleich. In diesem Bericht werden die geplanten und die tats!chlichen Nettobetr!ge miteinander verglichen. Berichte dieser Art sind pr!destiniert f,r den Einsatz der bedingten Formatierung. Sie werden den Bericht nun derart ab!ndern, dass alle IstBetr!ge unter dem Sollbetrag gr,n und kursiv und alle Ist-Betr!ge ,ber dem Sollbetrag rot und unterstrichen angezeigt werden. Die Ist-Betr!ge, die mit den geplanten Betr!gen ,bereinstimmen, sollen ihr Format beibehalten. Gehen Sie folgendermaßen vor: 1
Rffnen Sie den Bericht in der Entwurfsansicht.
2
Markieren Sie das Textfeld Ist-Nettobetrag.
3
F,hren Sie den Befehl Format > Bedingte Formatierung aus.
4
Geben Sie Bedingungen und Formate gem!ß Abbildung 7.19 an. Der Vergleichswert ist das Feld [Plan Nettobetrag] des gleichen Datensatzes.
5
Best!tigen Sie die Eingabe mit OK.
Abb. 7.19 Der Dialog Bedingte Formatierung
Nach der Festlegung der Bedingungen und Formate kDnnen Sie sich das Ergebnis ansehen. Wechseln Sie dazu in die Seitenansicht des Berichts. Weitere Informationen entnehmen Sie der Beschreibung der bedingten Formatierung im Kapitel 6 Formulare. Die Handhabung der Bedingten Formatierung ist f,r Formulare und Berichte nahezu identisch. Allein die MDglichkeit der Markierung des Steuerelements, das den Fokus hat, ist bei der Ausgabe von Berichten logischerweise nicht mDglich. 456
Beispiel: Projekte eines Jahres
Abb. 7.20 Der Bericht mit bedingter Formatierung
Beispiel: Projekte eines Jahres Der Berichts-Assistent von Access ermDglicht den Entwurf von Berichten, die die Daten der zugrunde liegenden Tabelle oder Abfrage nach einem oder mehreren Kriterien gruppieren. Als Beispiel entwerfen Sie zun!chst eine Parameterabfrage, die die Projekte eines Jahres ermittelt. Anschließend entwerfen Sie einen Bericht, der die Projekte eines Jahres nach Adressen gruppiert. Der Bericht summiert gleichzeitig die Nettobetr!ge der Projekte je Adressennummer f,r das Jahr. So sind die nach Adressennummern aufgeschl,sselten Ums!tze auf einen Blick zu erkennen.
Beispielabfrage entwerfen Als Voraussetzung f,r den Bericht benDtigen Sie eine Abfrage, die die Daten aus der Projekte- und der Adressentabelle zusammenf,hrt. Erstellen Sie eine neue Abfrage und f,gen Sie die Projekte- und die Adressentabelle hinzu. Definieren Sie f,r beide Tabellen eine Inklusionsverkn,pfung, die alle Datens!tze aus der Projektetabelle enth!lt. Aus der Adressentabelle benDtigen Sie die Felder Adresse-Nr und Name. Ziehen Sie beide Felder in den Entwurfsbereich.
Abfragebeispiel
Inklusionsverkn pfung und Felder der Adressentabelle
457
Berichte
Felder der Projektetabelle
Abfragekriterien definieren
Parameter f r das Jahr
Aus der Projektetabelle sind die Projektnummer (Projekt-Nr), der Titel (Titel), das Zahlungsdatum (Ist Zahlung) und der Nettobetrag (Ist Nettobetrag) von Interesse. Ziehen Sie die Felder in den Entwurfsbereich. F,r den Ausdruck interessieren nur die Nettobetr!ge, die bereits bezahlt wurden. Tragen Sie daher f,r die Spalte Ist Zahlung das Abfragekriterium Ist Nicht Null ein. Außerdem sind nur diejenigen Projekte zu ber,cksichtigen, deren Nettobetrag ungleich Null ist. Tragen Sie daher f,r die Spalte Ist Nettobetrag das Abfragekriterium Ist Nicht Null ein. Da der Bericht nur die Projekte eines bestimmten Jahres enthalten soll, benDtigen Sie einen Abfrageparameter zur Bestimmung des Jahres. F,gen Sie der Abfrage eine neue Spalte hinzu und tragen in die Feldzeile folgenden Ausdruck ein: Jahr([Ist Zahlung])
Abfrageparameter
Dieser Ausdruck ermittelt die Jahreszahl aus dem Zahlungsdatum. Da das Jahr nicht im Bericht erscheinen soll, leeren Sie das Kontrollk!stchen Anzeigen f,r diese Spalte. Die Abfrage soll den Anwender vor der Ausf,hrung nach der gew,nschten Jahreszahl fragen. Tragen Sie daher f,r die berechnete Spalte den folgenden Parameter als Abfragekriterium ein: [Bitte geben Sie eine Jahreszahl ein:]
Datentyp des Abfrageparameters
Denken Sie daran, dass Sie Abfrageparameter mit eckigen Klammern eingeben m,ssen. Da der Abfrageparameter nicht dem Standarddatentyp Text entspricht, m,ssen Sie den Datentyp explizit festlegen.
Abb. 7.21 Abfrageparameter festlegen
W!hlen Sie den Befehl Abfrage > Parameter aus der Men,leiste, so dass Access den gleichnamigen Dialog anzeigt. Geben Sie den Text 458
Beispiel: Projekte eines Jahres
Bitte geben Sie eine Jahreszahl ein: als Parameter ein und w!hlen den Datentyp Single aus dem gleichnamigen Kombinationsfeld. So kDnnen Sie sp!ter eine Jahreszahl wie beispielsweise 2000 als Abfragekriterium eingeben.
Abb. 7.22 Abfrage Projekte eines Jahres
Wenn Sie die Abfrage einmal probeweise ausf,hren lassen, fordert ein Dialog zur Eingabe einer Jahreszahl auf. Geben Sie eine Jahreszahl (z.B. 2000) ein und klicken Sie auf OK. Access f,hrt die Abfrage aus und zeigt nur die Projekte an, deren Zahlungsdatum in dem spezifizierten Jahr liegen. Zu jedem Projekt werden zus!tzlich die zugeordnete Adressennummer und der Name angezeigt.
Abfrage testen
Beispielbericht entwerfen Vor allen weiteren Aktionen sollten Sie die Abfrage unter dem Namen Projekte eines Jahres speichern. Klicken Sie dann auf das Neues Objekt > Bericht-Symbol, so dass Access den Dialog Neuer Bericht Dffnet.
Berichts-Assistent starten
Access gibt erwartungsgem!ß den Namen der Abfrage als Grundlage f,r den Bericht an. F,hren Sie einen Doppelklick auf den Eintrag Berichts-Assistent durch, um diesen zu starten.
459
Berichte
Feldauswahl und -reihenfolge
Der erste Dialog des Berichts-Assistenten dient zur Auswahl der Felder f,r den Bericht. Da die Abfrage nur die gew,nschten Felder enth!lt, kDnnen Sie auf das Symbol klicken, das zwei GrDßerzeichen (>>) darstellt. Access ,bernimmt dann automatisch alle Datenfelder in die Liste ausgew7hlte Felder.
Abb. 7.23 Felder ausw!hlen
Gruppierung ausw!hlen
Ein Klick auf die Schaltfl!che Weiter best!tigt die Einstellungen und Dffnet die zweite Dialogseite des Berichts-Assistenten. Da die Datenherkunft aus zwei relational verkn,pften Tabellen besteht, macht der Assistent automatisch den Vorschlag, die Daten nach Adressen zu gruppieren. Sie erkennen dies daran, dass der Eintrag nach Adressen markiert ist. Klicken Sie auf die Schaltfl!che Weiter, um die Einstellung zu ,bernehmen. Alternativ kDnnen Sie an dieser Stelle auch den Eintrag nach Projekte markieren, um die vom Assistenten vorgegebene Gruppierung nicht zu ,bernehmen. In beiden F!llen kDnnen Sie auf der folgenden Dialogseite bis zu vier Kriterien angeben, nach denen Sie die Berichtsdaten gruppieren wollen.
Gruppierungsoptionen
Auf der folgenden Dialogseite zeigt Access zun!chst einmal die Gruppierung nach Adressen an. Um Berichte mit mehreren Gruppen zu definieren, kDnnen Sie jedes der aufgef,hrten Felder in die Vorschau des Berichts ,bernehmen. Markieren Sie dazu eines der Felder und klicken Sie auf die Schaltfl!che mit dem GrDßer-als-Zeichen (>). Mit einem Klick auf die Schaltfl!che Gruppierungsoptionen kDnnen Sie dann f,r das jeweils markierte Gruppierungsfeld ein Intervall definieren.
460
Beispiel: Projekte eines Jahres
Abb. 7.24 Daten nach Adressen gruppieren
Abb. 7.25 Weitere Gruppierungen festlegen
Da Sie die Vorgabe des Assistenten nicht zu !ndern brauchen, klicken Sie auf die Schaltfl!che Weiter, um zur n!chsten Dialogseite zu gelangen. Der folgende Dialog fordert Sie zur Auswahl der Felder auf, nach denen sortiert werden soll. Da Sie die Adresse bereits als Gruppenkriterium ausgew!hlt haben, sind die Felder Adresse-Nr und Name nicht in der Liste enthalten. Die Ursache hierf,r besteht darin, dass Access die Daten automatisch nach dem Gruppenkriterium sortiert.
Sortierung festlegen
461
Berichte
Abb. 7.26 Sortierreihenfolge festlegen
Nach Titeln sortieren
Die Einstellungen dieses Dialogs bestimmen ,ber die Sortierreihenfolge innerhalb einer Gruppe. W!hlen Sie das Feld Titel aus dem ersten Kombinationsfeld, damit Access die Projekte mit gleichen Adressennummern aufsteigend nach Titeln sortiert.
Zusammenfassungsoptionen
Mit einem Klick auf die Schaltfl!che Zusammenfassungsoptionen Dffnen Sie einen weiteren Dialog, in dem Access die numerischen Felder, die keine Gruppenkriterien sind, der zugrunde liegenden Tabelle oder Abfrage anzeigt. Im Beispiel ist dies nur das Feld Ist Nettobetrag.
Abb. 7.27 Zusammenfassungsoptionen
462
Beispiel: Projekte eines Jahres
Mit dem Dialog Zusammenfassungsoptionen kDnnen Sie Ihren Bericht um Berechnungen erg!nzen. Sie kDnnen f,r jedes Feld die Summe, den Mittelwert, das Maximum und das Minimum auf Gruppen- und Berichtsebene ermitteln lassen. Pber ein Kontrollk!stchen kDnnen Sie zus!tzlich f,r jedes der Felder den prozentualen Anteil der Gruppensummen an der Gesamtsumme berechnen lassen. F,r den Beispielbericht kreuzen Sie das Kontrollk!stchen Summe an und markieren Sie die Option Details und Zusammenfassung. Anschließend klicken Sie auf OK und dann auf Weiter, um zur n!chsten Dialogseite zu gelangen. Mit dem n!chsten Dialog des Assistenten w!hlen Sie ein Layout f,r Ihren Bericht aus. F,r unser Beispiel markieren Sie das Layout Gliederung 1 und klicken auf die Schaltfl!che Weiter.
Berichts-Layout
Abb. 7.28 Berichts-Layout ausw!hlen
Pber die Optionsgruppe Ausrichtung kDnnen Sie in diesem Dialog einstellen, ob das Papier im Hoch- oder im Querformat bedruckt werden soll. Dies entspricht der gleichnamigen Einstellung im Dialog Seite einrichten, den Sie aus dem Berichtsentwurf ,ber den gleichnamigen Befehl des Men,s Datei Dffnen kDnnen. Das Hochformat hat den Vorteil, dass mehr Zeilen auf eine Seite passen. Im Querformat haben Sie in horizontaler Richtung mehr Platz, den Sie sich aber mit weniger bedruckbaren Zeilen erkaufen. Der Berichts-Assistent erstellt Berichte standardm!ßig in der Form, dass alle Felder in der benDtigten Breite nebeneinander angeordnet werden. Da die Summe der Feldbreiten oft die Papierbreite ,berschreitet, ordnet der Assistent die Felder auf mehreren nebeneinander liegenden Seiten an. Sie kDnnen diese Seiten dann nach dem Ausdruck zusammenkleben.
Alle Felder auf einer Seite
463
Berichte
Der Dialog enth!lt das Kontrollk!stchen Feldbreite so anpassen, dass alle Felder auf eine Seite passen. Kreuzen Sie dieses Kontrollk!stchen an, damit der Assistent die Feldbreiten so weit verkleinert, dass alle Felder nebeneinander auf eine Seite passen.
Abb. 7.29 Berichtsstil ausw!hlen
W!hlen Sie im folgenden Dialog den Berichtsstil Gesch7ftlich aus, und klicken Sie auf Weiter. Der letzte Dialog des Berichts-Assistenten gibt den Namen der zugrunde liegenden Abfrage als Berichts,berschrift vor. Sie kDnnen die Vorgabe ,bernehmen.
Berichtsstil
Abb. 7.30 Berichts-Assistent starten
464
Beispiel: Projekte eines Jahres
Klicken Sie auf die Schaltfl!che Fertigstellen, damit der Entwurf des Berichts beginnt. Nach nur wenigen Augenblicken ist dieser Vorgang abgeschlossen, und Access Dffnet den Bericht in der Seitenansicht. Beim Rffnen des Berichts f,hrt Access zun!chst die Abfrage aus, auf der der Bericht basiert. Sie werden folglich zun!chst aufgefordert, eine Jahreszahl einzugeben. Geben Sie beispielsweise den Wert 1998 ein und best!tigen Sie mit OK.
Jahreszahl eingeben
Abb. 7.31 Jahreszahl eingeben
Access f,hrt die Abfrage aus und ermittelt alle Projekte, bei denen das Zahlungsdatum im angegebenen Jahr liegt. Anschließend wird der Bericht mit den Daten des Dynasets ausgef,hrt und in der Seitenansicht geDffnet. Er enth!lt zus!tzlich zu den einzelnen Projektdaten auch die f,r jeweils eine Adresse und als Gesamtbetrag aufsummierten Nettobetr!ge.
Abb. 7.32 Bericht Projekte eines Jahres
465
Berichte
Bericht berarbeiten
Entwurfsansicht
Der Bericht kommt dem gew,nschten Ergebnis schon recht nahe. Es gibt jedoch noch einige Verbesserungsvorschl!ge. So formatiert der Berichts-Assistent manchmal nicht alle Summenfelder im W!hrungsformat. Außerdem wird der verf,gbare Platz einer Seite nicht optimal ausgenutzt. Der Assistent w!hlt die Steuerelementbreite f,r den Text Ist Zahlung zu schmal und f,r die Adressen-Nr daf,r zu breit. Klicken Sie daher auf die Befehlsschaltfl!che Schließen und Dffnen Sie den Bericht in der Entwurfsansicht, um im Berichtsentwurf folgende 0nderungen vorzunehmen: 1
Verringern Sie die Steuerelementbreite f,r die Adressennummer.
2
VergrDßern Sie die Steuerelementbreite f,r den Text Ist Zahlung. Sie gewinnen den daf,r erforderlichen Platz am einfachsten, indem Sie die Steuerelementbreite des Feldes Titel verkleinern.
3
Wenn Sie wollen, kDnnen Sie in vertikaler Richtung weiteren Platz einsparen, indem Sie die Steuerelemente weiter zusammenr,cken lassen und die HDhe der verschiedenen Druckbereiche verringern.
4
Formatieren Sie die Summen- als W7hrung-Felder.
Wechseln Sie wieder in die Seitenansicht, um den Erfolg der 0nderungen zu kontrollieren. Wenn Sie mit dem Ergebnis noch nicht zufrieden sind, wechseln Sie erneut in die Entwurfsansicht, und machen Sie dort weitere 0nderungen. Speichern Sie abschließend den ,berarbeiteten Bericht schließlich und lassen Sie ihn drucken.
Abb. 7.33 (berarbeitete Version des Berichts
466
Mehrspaltige Berichte und Formulare
Wenn Sie wollen, kDnnen Sie den Abfrageparameter f,r die Jahreszahl als berechnetes Steuerelement der Berichts,berschrift hinzuf,gen. So kann der Betrachter des Berichts auf einen Blick ermitteln, aus welchem Jahr die Projekte stammen. Wandeln Sie dazu das Bezeichnungsfeld im Berichtskopf in ein Textfeld um. Ersetzen Sie den Inhalt der Daten-Eigenschaft Steuerelementinhalt durch den folgenden Ausdruck: =\(Projekte des Jahres \( & [Bitte geben Sie eine Jahreszahl ein:] Der Text ist also der gleiche wie in der Abfrage. Achten Sie jedoch darauf, dass Sie die eckigen Klammern und den Doppelpunkt mit in die Eigenschaft Steuerelementinhalt eingeben m,ssen. Der Beispielbericht zeigt, dass Sie mit dem Berichts-Assistenten von Access XP sowohl Gruppierungen als auch Zusammenfassungen vornehmen kDnnen.
Mehrspaltige Berichte und Formulare Access ermDglicht den Entwurf von mehrspaltigen Berichten und Formularen. Sie kDnnen sich den Aufbau mehrspaltiger Berichte und Formulare am ehesten anhand einer Tageszeitung verdeutlichen. Der Zeitungstext fließt zun!chst bis zum Ende der ersten Spalte. Dann geht es oben in der zweiten Spalte weiter usw. Der Aufbau von mehrspaltigen Berichten ist ganz !hnlich.
Abb. 7.34 Beispiel f r einen dreispaltigen Bericht
467
Berichte
Access ber,cksichtigt die mehrspaltige Anordnung nur in der Seitenansicht und beim Ausdruck von Formularen und Berichten. In der Entwurfsansicht, in der Formularansicht und in der Datenblattansicht bleibt die mehrspaltige Anordnung ohne Wirkung.
Hinweis
Tipp
Die mehrspaltige Anordnung ist in erster Linie f,r Berichte interessant. Sie kDnnen die im Folgenden beschriebene Vorgehensweise aber genauso gut auf Formulare anwenden. Wenn Sie mehrspaltige Berichte zum Bedrucken von Etiketten entwerfen wollen, dann sollten Sie den Etiketten-Assistenten verwenden. Sie finden die ausf,hrliche Beschreibung des Etiketten-Assistenten in Kapitel 3 Daten auswerten und pr7sentieren dieses Buchs.
Mehrspaltige Berichte entwerfen Der Entwurf eines mehrspaltigen Berichts erfolgt durch das 0ndern der Spaltenanzahl vom Standardwert 1 auf einen grDßeren Wert. Zur Definition der Spaltenanzahl Dffnen Sie mit Datei > Seite einrichten den gleichnamigen Dialog und klicken Sie auf das Register Spalten.
Abb. 7.35 Der Dialog Seite einrichten
Hinweis 468
Access speichert die Einstellungen des Dialogs Seite einrichten mit dem Bericht ab. Sie kDnnen daher f,r jeden Bericht der Datenbank eine eigene Seiteneinrichtung definieren und speichern.
Mehrspaltige Berichte und Formulare
Im oberen Teil des Dialogs finden Sie die Eigenschaft Spaltenanzahl. Tragen Sie in diese Eigenschaft die Anzahl der Spalten ein, die Ihr Bericht enthalten soll.
Spaltenanzahl
Die Aufteilung auf mehrere Spalten wirkt sich nur auf den Detailbereich sowie die Gruppenkopf- und Gruppenfußbereiche aus. Die Randeinstellungen f,r den Berichtskopf- und Berichtsfuß- sowie f,r den Seitenkopf- und Seitenfußbereich ergeben sich direkt aus dem gew!hlten Papierformat und den Seitenr!ndern. Diese Einstellungen nehmen Sie ,ber die Register R7nder und Seite des Dialogs Seite einrichten vor. Die Eigenschaft Zeilenabstand bestimmt den Zeilenabstand in Zentimetern (cm) oder einer anderen in der Systemsteuerung von Windows festgelegten Einheit. Bei der Standardeinstellung 0 cm richtet sich der Zeilenabstand nach der ausgew!hlten Schriftart und -grDße der Steuerelemente. Bei Bedarf kDnnen Sie jedoch einen zus!tzlichen Zeilenabstand eingeben. Sie kDnnen den Zeilenabstand sowohl f,r ein- als auch f,r mehrspaltige Berichte !ndern. Die Eigenschaft Spaltenabstand ist nur bei mehrspaltigen Berichten aktiv. Sie bestimmt den Zwischenraum der Spalten in Zentimetern (cm) oder einer anderen in der Systemsteuerung von Windows festgelegten Einheit. Mit den Eigenschaften der Optionsgruppe Spaltengr4ße bestimmen Sie die Breite und HDhe des Detailbereichs. Wenn Sie das Kontrollk!stchen Wie Detailbereich ankreuzen, ergibt sich die SpaltengrDße direkt aus der GrDße des Detailbereichs in der Entwurfsansicht. Die DruckhDhe entspricht damit der Bereichseigenschaft H4he des Detailbereichs. Die Druckbreite ergibt sich aus der Breite des Detailbereichs in der Entwurfsansicht.
Zeilenabstand
Spaltenabstand
Spaltengrße
Mit den daf,r vorgesehenen Eingabefeldern kDnnen Sie auch eine abweichende DruckhDhe und -breite f,r den Detailbereich eingeben. Access lDscht dann automatisch das Kontrollk!stchen Wie Detailbereich. Sie m,ssen die Werte f,r die DruckhDhe und -breite des Detailbereichs sorgf!ltig berechnen. Wenn Sie beispielsweise auf DIN-A4-Papier mit einer Breite von 21 cm drucken und der rechte und linke Seitenrand jeweils 2 cm betr!gt, dann stehen Ihnen noch 17 cm f,r den Detailbereich zur Verf,gung (denn 21 - 2 - 2 = 17). Bei drei Spalten und einem Spaltenabstand von 1 cm darf die Druckbreite f,r den Detailbereich dann noch maximal 5 cm betragen (denn 17 - 2 = 15 und 15 : 3 = 5). Abbildung 7.34 zeigt die Seitenansicht eines solchen Berichts. Die Abbildungen 7.35 und 7.36 enthalten die Einstellungen, die in den Registern R7nder und Spalten des Dialogs Seite einrichten f,r diesen Bericht vorgenommen sind Die Optionsgruppe Spaltenlayout bestimmt die Ausrichtung der Druckspalten. Die Einstellung Nach unten, dann quer entspricht dem Zeitungs-Layout und ordnet die Spalten vertikal an. Bei dieser Einstellung werden zun!chst die Zeilen einer Spalte gedruckt, bevor die n!chste Spalte beginnt (siehe auch Abbildung 7.34).
Layout-Elemente
469
Berichte
Abb. 7.36 R!nder des Berichts aus Abbildung 7.34
Die Standardeinstellung Quer, dann nach unten ordnet die Spalten horizontal an. Bei dieser Einstellung werden zun!chst die Spalten einer Zeile bedruckt, bevor die n!chste Zeile beginnt.
Neue Spalte oder Zeile
Sie kDnnen f,r jeden Bereich eines mehrspaltigen Berichts einstellen, ob Access vor, nach oder vor und nach dem Bereich einen Seiten-, Spalten- oder Zeilenvorschub einf,gen soll. Die Eigenschaft Neue Zeile oder Spalte bestimmt, ob der Bereich beim Ausdruck in einer neuen Zeile oder Spalte beginnt. Das ergibt sich direkt aus der Auswahl in der Optionsgruppe Spaltenlayout. Das bedeutet, dass der Bereich bei vertikal ausgerichteten Berichten in einer neuen Spalte und bei horizontal ausgerichteten Berichten in einer neuen Zeile beginnt.
Seitenansicht mehrspaltiger Berichte Access zeigt mehrspaltige Berichte in der Seitenansicht in der gleichen Form an, wie sie auch gedruckt werden. Sie kDnnen die Seitenansicht daher gut dazu einsetzen, das Druck-Layout vor dem eigentlichen Ausdruck zu testen. Das spart Zeit, Papier und Nerven. Da die Seiteneinrichtung f,r mehrspaltige Berichte etwas komplexer ist als f,r einspaltige Berichte, werden Sie wahrscheinlich h!ufiger von der Seitenansicht in die Seiteneinrichtung wechseln wollen. F,r diesen Zweck kDnnen Sie der Symbolleiste der Seitenansicht das Seiteneinrichtung-Symbol hinzuf,gen. Gehen Sie dazu wie folgt vor:
470
Unterberichte und -formulare
1
Wechseln Sie in die Seitenansicht des Berichts.
2
Klicken Sie mit der rechten Maustaste auf die Symbolleiste.
3
W!hlen Sie den Befehl Anpassen aus dem Kontextmen,.
4
Markieren Sie die Kategorie Datei auf der Registerkarte Befehle.
5
Ziehen Sie das Symbol Seite einrichten aus dem Dialog Symbolleisten anpassen in die Symbolleiste Seitenansicht.
6
Klicken Sie auf die Schaltfl!che Schließen, um den Dialog Symbolleisten anpassen zu beenden.
Abb. 7.37 Symbol f r die Seiteneinrichtung
Sie kDnnen den Dialog Seite einrichten nun einfach und schnell ,ber ein Klick auf das gleichnamige Symbol Dffnen. Wenn Sie alle Einstellungen vorgenommen und mit OK best!tigt haben, zeigt Access die Auswirkung der 0nderungen direkt in der Seitenansicht an.
Unterberichte und -formulare Unterberichte sind eigenst!ndige Berichte innerhalb des Hauptberichts. Sie eignen sich daher zum Zusammenf,hren mehrerer Berichte und Formulare. Dieser Abschnitt beschreibt den Entwurf von Unterberichten und ihre Verwendung in Hauptberichten. In Kapitel 6 Formulare dieses Buchs erfahren Sie, wie Unterformulare erstellt werden. 471
Berichte
Hauptberichte Als Hauptbericht kDnnen Sie jeden beliebigen Bericht verwenden. Der Bericht wird dadurch zum Hauptbericht, dass Sie in der Entwurfsansicht ein Steuerelement f,r Unterformulare oder -berichte entwerfen.
Unterbericht entwerfen
Unterberichte Um einen Unterbericht zu entwerfen, markieren Sie das Unterbericht-Symbol in der Toolbox und ziehen Sie einen Rahmen f,r den Unterbericht auf. Rffnen Sie dann das Eigenschaftenfenster und w!hlen Sie f,r die Daten-Eigenschaft Herkunftsobjekt den Namen des Unterberichts oder -formulars aus. Access markiert in der herunterklappenden Liste des Kombinationsfeldes Formulare durch den Text Formular und Berichte durch den Text Bericht. Als Alternative kDnnen Sie auch einen Bericht aus dem Datenbankfenster in die Entwurfsansicht eines Hauptberichts ziehen. Aktivieren Sie mit der ?-Taste das Datenbankfenster, und klicken Sie auf das Register Berichte. Ziehen Sie dann einen Unterbericht in den Hauptbericht.
Verwenden von Haupt- und Unterbericht Schachtelungsebenen
Tipp
Access behandelt Unterberichte als eigenst!ndige Berichte innerhalb des Hauptberichts. Sie kDnnen somit mehrere Berichte zusammenf,hren. Ein Hauptbericht kann mehrere Unterberichte enthalten, die wiederum weitere Unterberichte enthalten. Die Schachtelung ist jedoch auf zwei Ebenen begrenzt. Wenn folglich ein Hauptbericht einen Unterbericht enth!lt, der wiederum einen Unterbericht enth!lt, dann darf dieser Unterbericht keine weiteren Unterberichte enthalten. Sie kDnnen einen ungebundenen Hauptbericht entwerfen, um mehrere Berichte nacheinander zu drucken. Erstellen Sie dazu einen neuen Bericht, ohne ihn an eine Tabelle oder Abfrage zu binden. Ordnen Sie dann mehrere Unterberichte in der Reihenfolge an, wie sie gedruckt werden sollen. Sie erreichen damit eine Art Batch-Betrieb. Access druckt die Hauptberichte nacheinander aus, ohne dass Sie sie selbst Dffnen m,ssten. Voraussetzung f,r das Gelingen ist lediglich, dass der Papiervorrat Ihres Druckers ausreicht.
Verknpfen von Haupt- und Unterbericht Solange Sie den Haupt- und den Unterbericht nicht verkn,pft haben, besteht kein Bezug zwischen den beiden Berichten. Die Auswahl von Datens!tzen erfolgt unabh!ngig voneinander. Dies gilt auch dann, wenn beide Berichte auf Tabellen basieren, f,r die eine Beziehung definiert wurde.
472
Die Kombination von Haupt- und Unterberichten eignet sich besonders gut f,r die Darstellung von verkn,pften Tabellen. Der Hauptbericht zeigt dann die Daten aus der Master- und der Unterbericht die Daten aus der Detailtabelle an.
Unterberichte und -formulare
Soll der Unterbericht jedoch nur diejenigen Datens!tze anzeigen, die dem Datensatz des Hauptberichts zugeordnet sind, m,ssen Sie die beiden Berichte verkn,pfen. Rffnen Sie dazu das Eigenschaftenfenster des Unterberichts. Tragen Sie in die Eigenschaft Verkn1pfen von das Verkn,pfungsfeld des Unterberichts und in die Eigenschaft Verkn1pfen nach das Verkn,pfungsfeld des Hauptberichts ein. Diese Felder haben h!ufig denselben Namen.
Berichte verkn pfen
Wenn Sie einen Bericht aus dem Datenbankfenster in den Hauptbericht ziehen, tr!gt Access die Verkn,pfungseigenschaften h!ufig automatisch ein. Voraussetzung hierf,r ist, dass beide Berichte auf Tabellen und nicht auf Abfragen basieren. Außerdem m,ssen Sie entweder eine Beziehung definiert haben oder Access findet zwei gleichnamige Datenfelder. Das Datenfeld des Hauptberichts muss dabei gleichzeitig den Prim!rschl,ssel der zugrunde liegenden Tabelle bilden. Wenn Sie die Verkn,pfung durchgef,hrt haben und den Bericht drucken, druckt der Unterbericht nur diejenigen Datens!tze aus, die mit dem aktuellen Datensatz des Hauptberichts verkn,pft sind. Dieses Verfahren eignet sich besonders gut f,r gruppierte Berichte. Sie kDnnen so beispielsweise innerhalb eines Gruppenfußbereichs einen Unterbericht anordnen, der detaillierte Informationen druckt.
>ndern des Unterberichts Sobald der Unterbericht eingebunden ist, sollten Sie ihn an das Layout des Hauptberichts anpassen. Sofern sich der Hauptbericht in der Entwurfsansicht befindet, brauchen Sie nur einen Doppelklick auf das Steuerelement f,r den Unterbericht durchzuf,hren, um ihn in der Entwurfsansicht zu Dffnen. Alternativ kDnnen Sie den Unterbericht auch vom Datenbankfenster aus Dffnen. 0nderungen an einem Unterbericht machen sich in der Seitenansicht des Hauptberichts erst dann bemerkbar, wenn Sie das Hauptberichtsfenster schließen und erneut Dffnen. Alternativ kDnnen Sie in der Entwurfsansicht des Hauptberichts auch auf das Steuerelement f,r den Unterbericht klicken, bis Access die Eingabemarke anzeigt. Bet!tigen Sie dann die -Taste, um die Anzeige des Unterberichts zu aktualisieren.
Hinweis
Da der Unterbericht ein eigenst!ndiger Bericht ist, kDnnen Sie die 0nderungen wie an jedem anderen Bericht vornehmen. 0ndern Sie einfach die Steuerelement-, Bereichs- und Berichtseigenschaften. Die Verbindung von Haupt- und Unterberichten eignet sich am besten zur Darstellung von 1:n-Beziehungen. Der Unterbericht zeigt dabei nur die Datens!tze an, die mit dem Datensatz des Hauptberichts verkn,pft sind.
Tipp
Wenn Sie Berichte f,r eine n:1-Beziehung entwerfen wollen, dann verwenden Sie besser eine Abfrage als Basis f,r den Bericht. Solche Berichte zeigen dann einen Datensatz der Detailtabelle und den jeweils zugeordneten Datensatz der MasterTabelle an. 473
Datenzugriffsseiten Beispiele fr Datenzugriffsseiten ansehen Datenzugriffsseiten per Assistent entwerfen Den Entwurf einer Datenzugriffsseite %ndern Steuerelemente einer Datenzugriffsseite und ihre Eigenschaften
476 484 489 504
8
Datenzugriffsseiten
Datenzugriffsseiten sind die auff!lligste Neuerung von Access 2000 gegen,ber den Vorg!ngerversionen. Selbstverst!ndlich sind sie auch in Access XP enthalten. 0hnlich wie Formulare und Berichte sind auch Datenzugriffsseiten meistens an eine Datenquelle gebunden und enthalten Steuerelemente zur Anzeige und Bearbeitung von Daten. Der wesentliche Unterschied besteht jedoch darin, dass Datenzugriffsseiten nicht in der Datenbank, sondern als externe Dateien auf der Festplatte gespeichert werden. Es handelt sich hierbei um Internet-Seiten, die Sie auch direkt mit dem Internet Explorer ab Version 5.0 Dffnen kDnnen. Datenzugriffsseiten sind daher ideal zur VerDffentlichung von Daten im weltweiten Internet und im firmeneigenen Intranet. Datenzugriffsseiten eignen sich sowohl zur Eingabe und Bearbeitung als auch zur Auswertung und Analyse von Daten. Die Eingabe und Bearbeitung erfolgt !hnlich wie in den Formularen von Access. F,r die Auswertung und Analyse von Daten stehen Ihnen !hnliche Funktionen wie in Abfragen und Berichten und zus!tzlich das PivotTable-Steuerelement zur Verf,gung, das speziell f,r die Datenanalyse geschaffen wurde.
Beispiele f/r Datenzugriffsseiten ansehen Einen Pberblick ,ber die MDglichkeiten von Datenzugriffsseiten vermittelt Ihnen die im Lieferumfang von Access enthaltene Beispieldatenbank Nordwind.mdb. Klicken Sie nach dem Rffnen der Datenbank auf das Register Seiten, um einen Pberblick der vorhandenen Datenzugriffsseiten zu erhalten.
Abb. 8.1 Die Datenzugriffsseiten der Nordwind-Datenbank
476
Beispiele fr Datenzugriffsseiten ansehen
Die in der Nordwind-Datenbank enthaltenen Beispiele vermitteln einen guten Pberblick ,ber die verschiedenen Einsatzgebiete von Datenzugriffsseiten. Bevor Sie selbst mit dem Entwurf von Datenzugriffsseiten beginnen, sollten Sie sich zuerst mit diesen Beispielen vertraut machen. Die folgenden Abschnitte sind Ihnen dabei behilflich.
Artikel mit Access anzeigen Ein Doppelklick auf den Eintrag Artikel anzeigen Dffnet die gleichnamige Datenzugriffsseite in der Datenzugriffsseitenansicht.
Abb. 8.2 Die Datenzugriffsseite Artikel anzeigen unter Access XP
Die Datenzugriffsseite zeigt die Daten aus der Tabelle Artikel und in den Listen der Kombinationsfelder die verkn,pften Daten aus den Tabellen Kategorien und Lieferanten der Nordwind-Datenbank an. Die Anzeige der Daten erfolgt ,ber Textfelder, Kombinationsfelder und Kontrollk!stchen. Sie kennen diese Steuerelemente bereits aus Ihrer Arbeit mit Formularen (siehe Kapitel 7 Berichte).
Anzeige und Bearbeitung von Artikeln
Die Funktionsweise und Bedienung innerhalb einer Datenzugriffsseite ist prinzipiell die gleiche wie bei Formularen. Auch hier kDnnen Sie innerhalb eines Eingabefeldes klicken und die Daten bearbeiten. Datenzugriffsseiten m,ssen jedoch zur Benutzeroberfl!che des Internet Explorer kompatibel sein und haben deshalb nur einen eingeschr!nkten Funktionsumfang. So fehlen beispielsweise die kontextsensitive Symbolleiste und die Kontextmen,s. 477
Datenzugriffsseiten
Das Datensatznavigation-Steuerelement
Die Steuerung der Datenzugriffsseite erfolgt ,ber das so genannte Datensatznavigation-Steuerelement im unteren Teil des Fensters. Dieses Steuerelement sieht wie eine Symbolleiste aus und stellt Schaltfl!chen f,r folgende Funktionen zur Verf,gung: datensatzweise bl!ttern, Datens!tze einf,gen, Datens!tze lDschen, Datensatz speichern, 0nderungen r,ckg!ngig machen, Sortierung !ndern, Filter definieren und wieder aufheben. Anhand dieser Symbolleiste wird deutlich, dass Datenzugriffsseiten die Schnittstelle zur Welt des Internet darstellen und deshalb nicht hundertprozentig in die Benutzeroberfl!che von Access integriert sind. Die Symbolleiste zur Datensatznavigation ist fest an die Datenzugriffsseite gebunden. Anders als die Symbolleisten von Access kDnnen Sie sie nicht durch Ziehen mit der Maus aus ihrer Position lDsen. Wenn Sie mit der rechten Maustaste auf die Symbolleiste klicken, zeigt das keine Reaktion. Die Symbolleiste findet sich nicht in den Auflistungen von Access wieder.
Die Symbole zur Datensatznavigation in einer Datenzugriffsseite
Symbol
Bedeutung Positioniert auf den ersten Datensatz der Datenquelle Positioniert auf den vorhergehenden Datensatz der Datenquelle Zeigt die Nummer des aktuellen Datensatzes und die Gesamtzahl der Datens!tze an Positioniert auf den nachfolgenden Datensatz Positioniert auf den letzten Datensatz Legt einen neuen Datensatz an LDscht den aktuellen Datensat. Speichert die 0nderungen am aktuellen Datensatz Macht die 0nderungen am aktuellen Datensatz r,ckg!ngig Sortiert aufsteigend nach dem Feld, das gerade aktiv ist Sortiert absteigend nach dem Feld, das gerade aktiv ist
478
Beispiele fr Datenzugriffsseiten ansehen
Die Symbole zur Datensatznavigation in einer Datenzugriffsseite (Forts.)
Symbol
Bedeutung Definiert einen auswahlbasierten Filter mit dem Inhalt des Feldes, das gerade aktiviert ist Schaltet den Filter wechselweise ein und aus Rffnet die Hilfe f,r Datenzugriffsseiten Tabelle 8.1
Artikel mit dem Internet Explorer anzeigen Die Besonderheit von Datenzugriffsseiten besteht darin, dass Sie sie nicht nur mit Access, sondern auch mit dem Microsoft Internet Explorer ab Version 5.0 Dffnen kDnnen. Wenn Sie die Datenbankdatei und den Ordner mit den Datenzugriffsseiten freigegeben haben, kDnnen Sie die Seite ,ber das Netzwerk mit jedem beliebigen PC Dffnen. Als Voraussetzungen hierf,r m,ssen der Microsoft Internet Explorer und eine Access-XP-Lizenz installiert sein.
Microsoft Internet Explorer
Abb. 8.3 Die Datenzugriffsseite Artikel anzeigen im Internet Explorer
479
Datenzugriffsseiten
Die Anzeige und Bedienung der Datenzugriffsseite im Internet Explorer ist die gleiche wie bei der Anzeige unter Access. Pber die Men,befehle und die Symbolleiste des Internet Explorer stehen Ihnen jedoch weitere Funktionen zur Verf,gung, die Access nicht zu bieten hat. So kDnnen Sie beispielsweise eine Liste der favorisierten Links abrufen oder direkt auf Ordner der Festplatte und Angebote im Internet zugreifen.
Zugriff ber ein Netzwerk
Nun werden Sie sich vielleicht fragen, ob andere Benutzer im lokalen Netzwerk oder sogar jeder x-beliebige Internet-Benutzer auf Ihre Daten zugreifen kann. Dazu ist Folgendes anzumerken: Die Datensicherheit im Netzwerk und auch im Intraoder Internet wird durch die installierten Netzwerktechnologien und nicht durch Access hergestellt. Jeder Benutzer, der ,ber ein lokales Netzwerk oder das Internet auf einen Ordner Ihrer Festplatte zugreifen kann, kann auch die darin gespeicherte Datenzugriffsseite Dffnen. Der Zugriff von fremden Benutzern ,ber das Internet ist erst mDglich, wenn Sie diese Funktion ,ber spezielle Programme und Funktionen ausdr,cklich aktiviert haben. Sie benDtigen zumindest einen direkten Internet-Zugang und einen Router, mit dem ein Internet-Provider auf Ihren PC zugreifen kann. Außerdem ist die Installation einer speziellen Server-Software wie beispielsweise des Internet Information Servers von Microsoft erforderlich. Weitere Hinweise zu diesem Thema finden Sie in der einschl!gigen Fachliteratur und im Internet.
Artikel nach Kategorie Die Datenzugriffsseite Artikel nach Kategorie ist ein Beispiel f,r die Anzeige von Daten aus zwei relational verkn,pften Tabellen. Nach dem Rffnen der Seite sehen zun!chst Sie eine Liste mit drei Kategorien aus der Nordwind-Datenbank. Mit den Symbolen der Navigationsleiste kDnnen Sie seitenweise in den Kategorien bl!ttern.
Erweiterungssteuerelement
Links neben jeder Kategorie befindet sich ein so genanntes Erweiterungssteuerelement. Ein Klick auf dieses durch ein Pluszeichen symbolisierte Steuerelement Dffnet eine Liste mit den Artikeln der Kategorie. Pber eine zweite Navigationsleiste kDnnen Sie innerhalb der Artikel der Kategorie bl!ttern. Mit Rffnen der untergeordneten Liste !ndert sich die Anzeige des Erweiterungssteuerelements auf ein Minuszeichen. Wenn Sie darauf klicken, schließt sich die untergeordnete Liste wieder. Diese Form der Datenanzeige eignet sich besonders f,r relational verkn,pfte Tabellen. Im Beispiel bildet die Tabelle Kategorien die Master- und die Tabelle Artikel die Detailtabelle der relationalen Beziehung.
480
Beispiele fr Datenzugriffsseiten ansehen
Abb. 8.4 Die Datenzugriffsseite Artikel anzeigen
Kundenbestellungen nach Firma anzeigen Mit dem Rffnen der Datenzugriffsseite Kundenbestellungen sehen Sie zun!chst nur ein Kombinationsfeld zur Auswahl eines Kunden. Erst nach der Auswahl eines Kunden aus der Liste wird die Anzeige um eine Liste der Bestellungen des Kunden erweitert.
Abb. 8.5 Die Datenzugriffsseite Kundenbestellungen nach Firma anzeigen
481
Datenzugriffsseiten
Der weitere Ablauf entspricht dem Aufbau der Datenzugriffsseite Artikel nach Kategorie. Mit einem Klick auf das Erweiterungssymbol, das diesmal durch ein rotes Dreieck symbolisiert wird, Dffnen Sie eine Liste der Bestellpositionen. Auch auf dieser Seite lassen sich keine Daten ver!ndern.
Umsatzanalyse Die Datenzugriffsseite Umsatzanalyse ist ein Beispiel f,r die Verwendung eines PivotTable-Steuerelements. Da diese Steuerelemente teilweise komplexe Berechnungen durchf,hren, erscheint beim Rffnen dieser Datenzugriffsseite – je nachdem, wie schnell Ihr PC ist – die Anzeige PivotTable berechnen. Danach sehen Sie eine ziemlich komplexe Tabelle, die auf den ersten Blick eher verwirrend als aussagekr!ftig ist. F,r mehr Pbersicht sorgt die Auswahl eines Bestimmungslandes. Klicken Sie auf diese Schaltlf!che und kreuzen Sie in der Liste das Land Argentinien an.
Abb. 8.6 Die Datenzugriffsseite Artikel anzeigen
Das PivotTable-Steuerelement zeigt nun alle Bestellungen der Nordwind-Datenbank mit dem Bestimmungsland Argentinien an. Es liegt im Wesen einer Pivot-Tabelle, dass die Daten nach zwei Kriterien gruppiert sind: In der linken Spalte finden Sie eine Liste der Warenempf!nger und in der oberen Zeile eine Liste der Mitarbeiter, die die Bestellungen aufgenommen haben. An den Schnittpunkten zeigt die PivotTabelle die einzelnen Bestellungen mit ihren Summen sowie die jeweilige Anzahl und die Gesamtsumme der Bestellungen an. Die Summenbildung wird auf jeder Ebene fortgesetzt. Wenn Sie also nach unten bl!ttern, sehen Sie die Bestellsumme f,r jeden Mitarbeiter. Wenn Sie nach rechts bl!ttern, sehen Sie die Bestellsummen je Empf!nger. 482
Beispiele fr Datenzugriffsseiten ansehen
Der Clou der Pivot-Tabelle besteht darin, dass Sie den in der Tabelle zu ber,cksichtigen Datenbestand ,ber die Listen der Felder Empf7nger, Nachname und Bestell-Nr weiter einschr!nken kDnnen. So kDnnen Sie sich mit ein paar Mausklicks die einzelnen Bestellungen und die Bestellsummen auch nur f,r ausgew!hlte Empf!nger, ausgew!hlte Mitarbeiter und ausgew!hlte Bestellnummern anzeigen lassen. Zusammen mit der anf!nglichen Auswahl des Bestimmungslandes enth!lt die Pivot-Tabelle damit insgesamt vier Gruppierungsebenen. Auf jeder dieser Ebenen kDnnen alle, einer oder mehrere Eintr!ge ausgew!hlt und Summen gebildet werden. Dieses Beispiel verdeutlicht, dass Pivot-Tabellen zu den leistungsf!higen Mitteln zur Datenauswertung und -analyse z!hlen. Eine Besonderheit der Datenzugriffsseite Umsatzsanalyse besteht in der angezeigten Symbolleiste. Diese Symbolleiste ist ein Bestandteil des PivotTable-Steuerelements und l!sst sich ,ber dessen so genannte Eigenschaften-Toolbox ein- und ausblenden. Sie enh!lt unter anderem einige Schaltfl!chen mit lehrreichen Informationen, die Ihnen beim Entwurf eigener Symbolleisten behilflich sind. So kDnnen Sie beispielsweise direkt die Hilfeseiten zu PivotTable-Steuerelementen aufrufen, die Feldliste der Datenzugriffsseite anzeigen lassen und die Eigenschaften-Toolbox des PivotTable-Steuerelements Dffnen.
Tipp
Verkaufszahlen Die Datenzugriffsseite Verkaufszahlen basiert ebenfalls auf einem PivotTable-Steuerelement. Als zus!tzliches Schmankerl enth!lt die Seite ein Office Chart-Steuerelement zur grafischen Visualisierung des angezeigten Zahlenmaterials
Abb. 8.7 Die Datenzugriffsseite Verkaufszahlen mit PivotTable- und Office Chart-Steuerelement
483
Datenzugriffsseiten
Datenzugriffsseiten per Assistent entwerfen Die prinzipielle Vorgehensweise zum Entwurf von Datenzugriffsseiten ist die gleiche wie bei Formularen. Sie entwerfen die Seite und ordnen Steuerelemente auf ihr an. Dann speichern, testen und verfeinern Sie das Objekt.
Die MicrosoftEntwicklungsumgebung
Web-Steuerelemente
Wesentliche Unterschiede ergeben sich aus der Tatsache, dass sich Datenzugriffsseiten nicht nur mit Access, sondern auch mit dem Internet Explorer Dffnen lassen. Deshalb kDnnen Sie Datenzugriffsseiten auch außerhalb von Access bearbeiten. Die von Access generierten Dateien mit der Erweiterung .htm lassen sich beispielsweise ,ber den Befehl Ansicht > HTML-Quelle auch mit der Microsoft-Entwicklungsumgebung Dffnen. Es handelt sich hierbei um ein eigenst!ndiges Programm, das sich speziell f,r die Bearbeitung von Internet-Seiten eignet und im Lieferumfang von Access enthalten ist. Ein weiterer wesentlicher Unterschied einer Datenzugriffsseite gegen,ber Formularen besteht darin, dass Sie hier teilweise ,ber andere Steuerelemente verf,gen. So machen beispielsweise die Steuerelemente Lauftext und Hotspotbild spezielle f,r Internet-Seiten typische Leistungsmerkmale auch in Datenzugriffsseiten verf,gbar. Die Beschreibung dieser Steuerelemente erfolgt weiter unten in diesem Kapitel.
Vorgehensweise Access stellt Ihnen drei Verfahren zur Anlage von Datenzugriffsseiten zur Verf,gung. Eine Pbersicht erhalten Sie durch einen Klick auf das Register Seiten im Datenbankfenster. Sie sehen die folgenden drei Eintr!ge: Erstellt eine Datenzugriffsseite in der Entwurfsansicht. Erstellt eine Datenzugriffsseite unter Verwendung des Assistenten. Bearbeitet eine vorhandene Webseite. Die ersten beiden MDglichkeiten sind selbsterkl!rend. Mit der dritten MDglichkeit kDnnen Sie eine bereits bestehende Webseite als Basis f,r die Datenzugriffsseite verwenden. Das empfiehlt sich vor allem dann, wenn sich die Datenzugriffsseite in ein bestehendes Internet-Projekt einf,gen soll und Sie das grafische Layout aus einer Musterseite ,bernehmen wollen.
Assistenten Den Seiten-Assistenten starten
484
Als Beispiel erstellen Sie eine Datenzugriffsseite unter Verwendung des Assistenten. Rffnen Sie die Datenbank Projekte.mdb von der CD zu diesem Buch und klicken Sie im Datenbankfenster auf das Register Seiten. F,hren Sie dann einen Doppelklick auf den Eintrag Erstellt eine Datenzugriffsseite unter Verwendung des Assistenten durch.
Datenzugriffsseiten per Assistent entwerfen
Abb. 8.8 W!hlen Sie die Datenfelder f r die Datenzugriffsseite aus einer oder mehreren Tabellen aus
Access startet den Seiten-Assistenten. Auf der ersten Dialogseite des Assistenten stellen Sie die Datenfelder zusammen, die auf der Datenzugriffsseite angezeigt werden sollen. Der Aufbau des Dialogs ist identisch mit dem ersten Dialog des Formular-Assistenten von Access. Sie kDnnen hier insbesondere auch Datenfelder aus mehreren verschiedenen Tabellen ausw!hlen. F,r das Beispiel w!hlen Sie einige Felder aus der Tabelle Adressen und einige Felder aus der Tabelle Projekte aus und klicken dann auf die Schaltfl!che Weiter.
Datenfelder zusammenstellen
Abb. 8.9 Das Feld Adresse-Nr dient als Gruppierungskriterium
485
Datenzugriffsseiten
Gruppierungsebene ausw!hlen
Gruppierungsoptionen einstellen
Auf der zweiten Dialogseite des Seiten-Assistenten kDnnen Sie eine oder mehrere Gruppierungsebenen f,r die Datenzugriffsseite definieren. Der Assistent weist darauf hin, dass mit der Definition der ersten Gruppierungsebene die Seite schreibgesch,tzt wird, d.h. das die MDglichkeit zur Bearbeitung der Daten verloren geht. F,r das Beispiel markieren Sie das Feld Adresse-Nr als Gruppierungsebene. Damit kDnnen Sie die Seite sp!ter so gestalten, dass Sie die Projekte einer Adresse ,ber ein Erweiterungssymbol Dffnen kDnnen. Die Schaltlf!che Gruppierungsoptionen leistet bei der Gruppierung nach numerischen oder Datums- und Zeitwerten wertvolle Hilfe. In dem gleichnamigen Dialog kDnnen Sie Intervalle f,r die Gruppierung definieren. So lassen sich bei der Gruppenbildung nach einem Datumswert die Daten beispielsweise quartalsweise gruppieren. Mit dem Befehl Ansicht > Sortieren und gruppieren kDnnen Sie diese Einstellung auch noch sp!ter in der Entwurfsansicht der Datenzugriffsseite !ndern.
Abb. 8.10 Das Feld Titel dient der Sortierung der Projekte innerhalb einer Adresse
Felder f r die Sortierung ausw!hlen
486
Auf der n!chsten Dialogseite des Assistenten kDnnen Sie eines oder mehrere Felder zur Sortierung der Daten ausw!hlen. Die Sortierung erfolgt nat,rlich nur innerhalb der definierten Gruppenkriterien. Wenn Sie die Projekte einer Adresse aufsteigend nach dem Titel sortieren wollen, ,bernehmen Sie dieses Feld in die Liste der Sortierkriterien.
Datenzugriffsseiten per Assistent entwerfen
Abb. 8.11 Geben Sie der Seite einen Namen
Auf der letzten Dialogseite des Assistenten geben Sie den Namen Adressen und Projekte f,r die Datenzugriffsseite ein. Kreuzen Sie außerdem das K!stchen mit der Beschriftung M4chten Sie Ihrer Seite ein Design zuweisen? an. Dieses K!stchen l!sst sich leider nur ankreuzen, wenn Sie vorher die Option Seitenentwurf 7ndern markieren. Damit erreichen Sie, dass der Assistent kurze Zeit nach dem Klick auf die Schaltfl!che Fertig stellen einen Dialog zur Auswahl eines Designs anzeigt.
Design zuweisen
Abb. 8.12 Auswahl eines Designs
487
Datenzugriffsseiten
Der Dialog Design enth!lt eine Reihe vordefinierter Designs, mit denen Sie das grafische Aussehen Ihrer Datenzugriffsseite beeinflussen. Abbildung 8.12 zeigt als Beispiel das Design Industrie an. Die vollst!ndige Liste der Designs ist nur verf,gbar, wenn Sie diese Option auch installiert haben. Falls Ihnen einzelne Designs fehlen, sollten Sie Ihre Installation vervollst!ndigen.
Design sp!ter !ndern
Schauen Sie sich ruhig einmal verschiedene Designs an und w!hlen Sie dasjenige aus, das Ihnen am besten gef!llt. Die Auswahl ist jedoch keineswegs endg,ltig. In der Entwurfsansicht der Datenzugriffsseite kDnnen Sie das Design jederzeit ,ber den gleichnamigen Befehl des Men,s Format wechseln. Es dauert nicht allzulange, bis der Assistent die Datenzugriffsseite erstellt hat und Access sie in der Entwurfsansicht Dffnet. Nach einem Wechsel in die so genannte Datenzugriffsseitenansicht kDnnen Sie das Ergebnis Ihrer Arbeit begutachten.
Abb. 8.13 Die vom Assistenten generierte Datenzugriffsseite ist wenig
berzeugend
Die vom Assistenten generierte Datenzugriffsseite ist zwar optisch wenig ,berzeugend, zeigt aber immerhin schon einmal die Daten aus der Adressen- und der Projektetabelle an. Mit den beiden Navigationsleisten kDnnen Sie in den Daten bl!ttern. Je l!nger Sie sich mit der Seite besch!ftigen, desto grDßere Zweifel werden Sie an der Anwenderfreundlichkeit hegen. In den folgenden Abschnitten werden Sie diese Datenzugriffsseite deshalb schrittweise weiterentwickeln. Sie werden dabei feststellen, dass die vom Assistenten generierte Seite eine gute Basis f,r die weitere Arbeit ist. 488
Den Entwurf einer Datenzugriffsseite %ndern
Die Datenzugriffsseite speichern Bevor Sie Ihre Arbeit fortsetzen, sollten Sie die Datenzugriffsseite speichern. W!hlen Sie dazu den Befehl Datei > Speichern aus der Men,zeile, und geben Sie Adressen mit Projekten als Dateinamen ein.
Abb. 8.14 Speichern Sie die Datenzugriffsseite
Access speichert die Datenzugriffsseite in dem ausgew!hlten Ordner auf Ihrer Festplatte. Die eigentliche Seite wird in der Datei Adressen mit Projekten.htm gespeichert. Im gleichen Ordner, in dem diese Datei abgelegt ist, legt Access einen zus!tzlichen Unterordner mit dem Namen Adressen mit Projekten-Dateien an. Dieser Ordner enth!lt die Dateien, die zur Anzeige der Datenzugriffsseite benDtigt werden. Hierbei handelt es sich insbesondere um die verwendeten Grafiken (GIF-Dateien). Die Datenquelle, also die Datenbankdatei Projekte.mdb, wird nicht mit der Datenzugriffsseite gespeichert. Die Seite enth!lt jedoch einen Verweis auf den Dateinamen und den Pfad der Datenbankdatei.
Den Entwurf einer Datenzugriffsseite ndern Die Gestaltung einer Datenzugriffsseite erfolgt in der Entwurfsansicht. Diese Ansicht hat starke 0hnlichkeit mit den Entwurfsansichten von Formularen und Berichten. Die folgenden Ausf,hrungen beschr!nken sich daher auf die Besonderheiten, die im Zusammenhang mit Datenzugriffsseiten auftreten. Eine ausf,hrliche Anleitung zum Markieren und Verschieben von Steuerelementen und zu den meisten anderen Verfahren und Techniken finden Sie in Kapitel 6 Formulare und Kapitel 7 Berichte dieses Buchs.
489
Datenzugriffsseiten
Eine 9berschrift erg%nzen Als Einstieg in den Entwurf einer Datenzugriffsseite erg!nzen Sie das Beispiel Adressen und Projekte um eine Pberschrift. Rffnen Sie diese Seite in der Entwurfsansicht, und klicken Sie auf den Text Titeltext durch Klicken hinzuf1gen. Geben Sie den Text Adressen mit zugeordneten Projekten als Titel ein.
Abb. 8.15 Die (berschrift geben Sie direkt in die Datenzugriffsseite ein
Mit dieser Vorgehensweise ordnen Sie die Pberschrift direkt auf der Datenzugriffsseite an. Der Text wird zum Bestandteil der Seite und erh!lt kein eigenes Steuerelement. Wenn Sie einen mehrzeiligen Text eingeben, verschieben sich die darunter angeordneten Kopf- und Navigationsbereiche automatisch. Um weitere Texte einzugeben, klicken Sie einfach an einer beliebigen Stelle und beginnen mit der Eingabe. Um den Text zu formatieren, kDnnen Sie die ,blichen Befehle der Symbolleiste und außerdem das Kombinationsfeld Formatvorlage verwenden. Mit diesem Befehl ver!ndern Sie das Format des markierten Textes. Bei dem Text, den Sie direkt in die Datenzugriffsseite eingeben, handelt es sich um reinen Fließtext. Sie kDnnen diesen Text formatieren, ihn erg!nzen und bestehende Textteile lDschen. Sie kDnnen sogar Steuerelemente innerhalb des Textes anordnen. Wenn Sie dann neue Zeilen hinzuf,gen oder lDschen, verschiebt Access die eingebetteten Steuerelemente mit dem Text.
490
Den Entwurf einer Datenzugriffsseite %ndern
Abb. 8.16 Diese Datenzugriffsseite enth!lt nur Fließtext
Dieser Text bildet den so genannten Body und ist damit praktisch gleichbedeutend mit der eigentlichen HTML-Seite. Die Besonderheit dieses Textes besteht darin, dass er sich in keinem Steuerelement, sondern direkt auf der Seite befindet. Die Seite ist sozusagen der Text und l!sst sich daher !hnlich wie ein Word-Dokument bearbeiten. Erst durch das Hinzuf,gen von Steuerelementen wird aus dem Text-Dokument eine Datenzugriffsseite. Sie kDnnen dies leicht nachvollziehen, indem Sie eine neue leere Datenzugriffsseite in der Entwurfsansicht anlegen und das standardm!ßig erstellte Steuerelement lDschen. Die Seite bietet Ihnen dann eine !hnliche Funktionalit!t wie die Textbearbeitung mit Word.
Die Eigenschaften der Seite bearbeiten Die Datenzugriffsseite hat starke 0hnlichkeit mit einem Textdokument. Sie hat daher auch spezifische Eigenschaften, die Sie ver!ndern kDnnen. Rffnen Sie dazu das Eigenschaftenfenster und klicken Sie auf die Titelleiste des DatenzugriffseitenFensters. Access zeigt dann den Text Seite in der Titelleiste des Eigenschaftenfensters an. Um beispielsweise den linken Rand der Seite zu ver!ndern, klicken Sie auf das Register Andere. Geben Sie f,r die Eigenschaft LeftMargin den Wert 3 cm ein. Da alle Elemente der Datenzugriffsseite in den Fließtext eingebettet sind, erhalten Sie auf diese Weise einen linken Rand von 3 cm. Kein Element der Datenzugriffsseite ragt ,ber diesen Rand hinaus. 491
Datenzugriffsseiten
Abb. 8.17 Mit der Eigenschaft LeftMargin ver!ndern Sie den linken Rand f r die Seite
Mit den Paletten in der Symbolleiste Formatierung (Seite) kDnnen Sie die Hingergrund-, Schrift- und Rahmenfarbe der Seite ver!ndern. Wenn Sie die Einstellungen f,r Schriftart und -grDße !ndern, wirkt sich das nur auf die Texte aus, die das Druckformat Normal haben. Alle anderen Texte beziehen ihre Eigenschaften direkt aus der gew!hlten Formatvorlage. Wie diese Eigenschaften im Einzelnen aussehen, bestimmt das mit Format > Design gew!hlte Design.
Einen Lauftext erg%nzen Lauftexte haben sich bei der Gestaltung von Internet-Seiten schnell zum Standard entwickelt. Sie d,rfen deshalb auch bei Datenzugriffsseiten nicht fehlen. Um einen Lauftext auf der Beispielseite anzuordnen, gehen Sie wie folgt vor:
492
1
Blenden Sie mit dem Befehl Ansicht > Toolbox die Toolbox ein.
2
Markieren Sie das Symbol Lauftext.
3
Klicken Sie an der Stelle der Arbeitsfl!che, an der Sie den Lauftext anordnen wollen.
4
Klicken Sie innerhalb des Lauftext-Steuerelements, bis die blinkende Eingabemarke sichtbar wird.
5
Geben Sie Das Access XP Buch als Text ein.
Den Entwurf einer Datenzugriffsseite %ndern
Abb. 8.18 Access ordnet das neue Steuerelement im Fließtext an
In Abbildung 8.18 sehen Sie, dass Access das Lauftext-Steuerelement links ohne irgendeine Ausrichtung anordnet. Manchmal steht es willk,rlich im Fließtext. Dieser Effekt l!sst sich auch durch Ziehen mit der Maus nicht verhindern. Damit Access den Lauftext oberhalb der Pberschrift anordnet, gehen Sie wie folgt vor: 1
Klicken Sie das Lauftext-Steuerelement mit der rechten Maustaste an und w!hlen Sie den Befehl Ausschneiden aus dem Kontextmen,.
2
Klicken Sie links neben dem A der Pberschrift, so dass Access die Eingabemarke anzeigt.
3
Bet!tigen Sie die -Taste, um eine Leerzeile im Format 9berschrift 1 einzuf,gen.
4
Bet!tigen Sie die Y-Taste, um die Eingabemarke in die Leerzeile zu bewegen.
5
W!hlen Sie den Befehl Bearbeiten > Einf1gen aus der Men,zeile.
6
Access f,gt das Lauftext-Steuerelement aus der Zwischenablage in die Leerzeile ein.
Diese Vorgehensweise erinnert mehr an die Textbearbeitung mit Word denn an den Formularentwurf mit Access. Aufgrund der Tatsache, dass sich Datenzugriffsseiten an die im Internet ,blichen Standards halten und traditionell haupts!chlich aus Fließtext bestehen, muss dies auch nicht weiter verwundern.
493
Datenzugriffsseiten
Weitere Parallelen zur Textbearbeitung ergeben sich, wenn Sie die Pberschrift und den Lauftext links- und rechtsb,ndig aufeinander abstimmen wollen. Gehen Sie wie folgt vor: 1
Klicken Sie auf die Pberschrift.
2
Klicken Sie in der Symbolleiste auf Linksb1ndig, damit Access die Absatzformatierung des Textes !ndert.
3
Ziehen Sie die linke und die rechte Begrenzung des Lauftext-Steuerelements so weit auseinander, bis es mit dem Text der Pberschrift b,ndig abschließt.
Bei einem Wechsel in die Datenzugriffsseitenansicht sehen Sie, dass der Lauftext rechts aus dem Steuerelement herausl!uft, um dann wieder von links in das Steuerelement hinzulaufen. Falls sich der Lauftext statt dessen zwischen der linken und rechten Begrenzung des Steuerelements hin- und herbewegen soll, m,ssen Sie die Eigenschaft Behavior des Steuerelements !ndern. Gehen Sie dazu wie folgt vor:
Abb. 8.19 Mit der Eigenschaft Behavior !ndern Sie das Verhalten des Lauftextes
494
1
Wechseln Sie in die Entwurfsansicht der Datenzugriffsseite.
2
Rffnen Sie das Eigenschaftenfenster.
3
Markieren Sie das Lauftext-Steuerelement.
4
Klicken Sie im Eigenschaftenfenster auf das Register Andere.
5
W!hlen Sie f,r die Eigenschaft Behavior den Wert alternate.
Den Entwurf einer Datenzugriffsseite %ndern
Bei einem erneuten Wechsel in die Datenzugriffsseitenansicht kDnnen Sie beobachten, wie sich der Lauftext zwischen der linken und rechten Begrenzung hin- und herbewegt.
Steuerelemente anordnen Die Datenzugriffsseite enth!lt Felder aus der Adressen- und der Projekttetabelle. Der Assistent hat f,r das Feld Adresse-Nr, das zur Gruppierung der Daten verwendet wird, einen eigenen Bereich angeordnet. Um in diesem Bereich auch die anderen Felder der Adressentabelle anzuordnen, gehen Sie wie folgt vor: 1
Klicken Sie in der Entwurfsansicht auf den Bereich Kopfbereich: ProjekteAdresse-Nr.
2
Access zeigt die Markierung des Bereichs anders als im Formular- und Berichtsentwurf durch symbolisierte Griffe entlang der Bereichsgrenzen an.
3
Um den Bereich zu vergrDßern, positionieren Sie den Mauszeiger auf den mittleren, unteren Griff.
4
Ziehen Sie den Griff bei festgehaltener Maustaste nach unten.
5
Ziehen Sie nun nacheinander alle Felder der Adressentabelle in diesen Bereich.
Access zeigt in der Entwurfsansicht f,r Datenzugriffsseiten eine Symbolleiste zum Ausrichten von Steuerelementen an. Um die Symbolleiste zu nutzen, markieren Sie ein Steuerelement und klicken auf eine der Schaltfl!chen. Access richtet das angeklickte Steuerelement an dem zuvor markierten Steuerelement aus. Wenn Sie mehrere Steuerelemente ausrichten wollen, klicken Sie doppelt auf eines der Symbole. Das Symbol bleibt dann so lange aktiviert, bis Sie es erneut anklicken.
Hinweis
Einen Beschriftungsbereich einblenden Damit eine f,r Haupt- und Unterformular typische Anordnung entsteht, positionieren Sie die Felder der Projektetabelle im Bereich Kopfbereich: AdressenWiz nebeneinander. Hierbei entsteht das Problem, dass die Seite bisher keinen optimalen Bereich f,r die Anordnung der Spaltenbeschriftungen enth!lt. Um dies zu !ndern, gehen Sie wie folgt vor: 1
W!hlen Sie den Befehl Ansicht > Sortieren und Gruppieren aus der Men,zeile.
2
Markieren Sie im gleichnamigen Dialog die Gruppe AdressenWiz.
3
0ndern Sie die Eigenschaft Beschriftungsbereich f,r diese Gruppe auf den Wert Ja.
495
Datenzugriffsseiten
Abb. 8.20 In diesem Dialog blenden Sie den Beschriftungsbereich ein
Im gleichen Augenblick blendet Access die neue Gruppe Beschriftung AdressenWiz ein. Sie kDnnen nun die Beschriftungen f,r die Felder der Projektetabelle in den daf,r vorgesehenen Bereich ziehen. Wenn Sie anschließend noch die BereichsgrDßen optimal anpassen, entsteht die f,r die Anzeige von Haupt- und Unterformularen typische Anordnung.
Abb. 8.21 Die Datenzugriffsseite hat die f r Access-Formulare typische Anordnung
496
Den Entwurf einer Datenzugriffsseite %ndern
Neue Felder hinzufgen Bei einer Datenzugriffsseite ist anders als in Formularen und Berichten jedes einzelne Feld an eine Datenquelle gebunden. Es gibt keine gemeinsame Datenquelle f,r die gesamte Datenzugriffsseite. Die Feldliste enth!lt eine Pbersicht ,ber die f,r den Entwurf der Datenzugriffsseite verf,gbaren Felder. Der Befehl Ansicht > Feldliste Dffnet die Feldliste.
Abb. 8.22 Die Feldliste einer Datenzugriffsseite
Die Feldliste enth!lt zwei Register. Das Register Datenbank zeigt alle Tabellen und Abfragen der zugrunde liegenden Datenbank an. Das Register Seite enth!lt nur die Datenfelder, die auf der Datenzugriffsseite Verwendung finden. Welche Datenbank der Datenzugriffsseite und damit der Feldliste zugrunde liegt, ist auf den ersten Blick nicht ersichtlich. Klarheit verschafft erst ein Mausklick auf den Eintrag Projekte.mdb und die Auswahl des Befehls Verbindung aus dem Kontextmen,.
497
Datenzugriffsseiten
Abb. 8.23 Der Dialog Datenlinkeigenschaften zeigt die Datenquelle der Datenzugriffsseite an
Der Befehl Verbindung Dffnet den Dialog Datenlinkeigenschaften und aktiviert automatisch das Register Verbindung. Hier sehen Sie den Pfad und den Dateinamen der Access-Datenbank, die der Datenzugriffsseite zugrunde liegt. Pber die Register dieses Dialogs kDnnen Sie eine andere Access-Datenbank oder auch eine SQL-ServerDatenbank als Datenquelle ausw!hlen. Falls Sie dies w,nschen, markieren Sie im Register Provider den Eintrag Microsoft OLE DB Provider for SQL Server, klicken auf die Schaltlf!che Weiter, und folgen den Anweisungen des Programms.
Felder aus der Datenherkunft l&schen F,r das Beispiel kDnnen Sie die Verbindung so lassen, wie sie ist. Um wieder die Feldliste in den Vordergrund zu bringen, klicken Sie auf die Schaltfl!che OK. Klicken sie auf die Schaltfl!che Datengliederung in der Symbolleiste. Mit einem Blick stellen Sie fest, dass hier offenbar die vom Assistenten vorgegebene Datenquelle abgebildet wird. Um die Bedeutung dieses Dialogs kennen zu lernen, sollten Sie einmal probeweise die alte Datenquelle lDschen und eine neue definieren. Gehen Sie dazu wie folgt vor:
498
1
Rffnen Sie die Hierarchie AdressenWiz.
2
Klicken Sie in der darunter liegenden Hierarchie den Eintrag AdressenWiz mit der rechten Maustaste an.
3
W!hlen Sie den Befehl L4schen aus dem Kontextmen,.
Den Entwurf einer Datenzugriffsseite %ndern
Abb. 8.24 So lschen Sie die Datenquelle der Datenzugriffsseite
Mit der Auswahl des Befehls verschwinden die meisten Steuerelemente und die Gruppierungsbereiche der Datenzugriffsseite. Lediglich die außerhalb des Datenbereichs angeordneten 9berschriften- und Lauftext-Steuerelemente bleiben erhalten. Daran kDnnen Sie erkennen, dass die Felder der Datenzugriffsseite und der Feldliste direkt miteinander korrelieren. Falls bei Ihnen noch einige Steuerelemente im Datenbereich ,brigbleiben, lDschen Sie diese.
Neue Datenfelder hinzufgen Im n!chsten Schritt bauen Sie die Datenquelle der Datenzugriffsseite neu auf. Die Auseinandersetzung mit dieser Technik lohnt sich gleich doppelt: Sie lernen einerseits, die vom Assistenten vorgegebene Datenquelle zu ver!ndern, und andererseits eine Technik zur optimalen Anordnung von Steuerelementen kennen. Gehen Sie wie folgt vor: 1
Klicken Sie auf das Register Datenbank der Feldliste.
2
Rffnen Sie die Hierarchie Tabellen.
3
Rffnen Sie die Hierarchie Adressen.
4
Starten Sie per Doppelklick auf das Feld den Assistenten, der Ihnen hilft, die gew,nschten Datenfelder der Datenzugriffsseite hinzuzuf,gen.
Beim Hinzuf,gen der Felder f!llt auf, dass Access sie optimal im einspaltigen Layout anordnet. Das manuelle Nachbearbeiten kann deshalb entfallen.
499
Datenzugriffsseiten
Abb. 8.25 So f gen Sie der Datenzugriffsseite neue Felder hinzu
Einen neuen Bereich fr die Felder der Projektetabelle anlegen Wenn Sie die Felder der Projektetabelle nun mit der gleichen Technik anordnen, ordnet Access sie im selben Bereich wie die Felder der Adressentabelle an. Mit der richtigen Vorgehensweise kDnnen Sie die Felder aber auch direkt in einem eigenen Bereich anordnen. Gehen Sie wie folgt vor: 1
Rffnen Sie die Hierarchie Zusammenh7ngende Tabellen.
2
Ziehen Sie das Feld Projekt-Nr genau auf die obere Begrenzung des Bereichs Navigationsbereich: Adressen.
In dem Augenblick, in dem Access dort eine blaue Einf,gelinie anzeigt, lassen Sie die linke Maustaste los. Es startet ein Assistent, der die weiteren Arbeiten ,bernimmt. Auf diese Weise erreichen Sie, dass Access f,r das Feld Projekt-Nr einen neuen Kopfbereich und einen neuen Navigationsbereich anlegt. Um diesem Bereich weitere Felder hinzuzuf,gen, brauchen Sie sie nur doppelt in der Feldliste anzuklicken. Mit dem Befehl Ansicht > Sortieren und Gruppieren kDnnen Sie wie oben beschrieben einen Beschriftungsbereich f,r die Projektetabelle anlegen. Nun brauchen Sie die Beschriftungen und die Steuerelemente nur noch ein wenig zu verschieben, um das urspr,ngliche Layout wiederherzustellen. 500
Den Entwurf einer Datenzugriffsseite %ndern
Abb. 8.26 So f gen Sie der Datenzugriffsseite einen neuen Bereich f r die Felder der Projektetabelle hinzu
Dadurch, dass Sie die Datenquelle der Datenzugriffsseite praktisch neu definiert haben, erhalten Kopf-, Beschriftungs- und Navigationsbereich nun sprechendere Namen. Statt Projekte-Adresse-Nr und AdressenWiz heißen die Bereiche jetzt Adressen und Projekte. W!hrend des Verschiebens der Steuerelemente erweist es sich als hinderlich, dass Access in den an Datenfelder gebundenen Steuerelementen keine Feldnamen anzeigt. Sie kDnnen dem Feld also nicht ansehen, ob es nun die Projektnummer, den Titel, den Nettobetrag oder die Mehrwertsteuer enth!lt. Falls Sie einmal den Pberblick verlieren sollten, Dffnen Sie einfach das Eigenschaftenfenster und klicken auf das Register Daten. Die Eigenschaft ControlSource enth!lt den Namen des Datenfeldes, an das das Steuerelement gebunden ist.
Tipp
Erweiterungseigenschaften festlegen Bei einem Wechsel in die Datenzugriffsseitenansicht f!llt auf, dass Access wie in Endlosformularen mehrere Adressen untereinander anzeigt. Um die zugeordneten Projekte zu sehen, m,ssen Sie zuerst auf das Erweiterungssysmbol klicken. Falls Ihnen das zu un,bersichtlich ist, gehen Sie wie folgt vor: 1
W!hlen Sie in der Entwurfsansicht den Befehl Ansicht > Gruppieren und Sortieren.
2
Markieren Sie die Gruppe Adressen. 501
Datenzugriffsseiten
3
0ndern Sie die Eigenschaft Standardm7ßig erweitern auf Ja.
4
Geben Sie f,r die Eigenschaft Datenseitengr4ße den Wert 1 ein.
Abb. 8.27 Die Datenzugriffsseite zeigt nur noch eine Adresse an und blendet die zugeordneten Projekte automatisch ein
Bei einem erneuten Wechsel in die Datenzugriffsseitenansicht sehen Sie, dass Access nur noch eine Adresse anzeigt. Die zugeordneten Projekte werden automatisch eingeblendet.
Ein Summenfeld hinzufgen In Datenzugriffsseiten stehen Ihnen anders als beim Formular- und Berichtsentwurf keine Makros und keine VBA-Funktionen zur Verf,gung. Falls Sie in Datenzugriffsseiten eine Berechnung von Werten durchf,hren wollen, m,ssen Sie diese entweder direkt in der zugrunde liegenden Abfrage hinterlegen oder Sie verwenden die TotalType-Eigenschaft. Um beispielsweise ein Feld mit der Summe der Nettobetr!ge anzuzeigen, gehen Sie wie folgt vor:
502
1
Markieren Sie in der Toolbox das Symbol Textfeld.
2
Um das Textfeld anzuordnen, klicken Sie innerhalb des Bereichs Kopfbereich: Adressen.
Den Entwurf einer Datenzugriffsseite %ndern
3
Rffnen Sie das Eigenschaftenfenster.
4
Aktivieren Sie das Register Daten.
5
Geben Sie f,r die Eigenschaft ControlSource den Wert Ist Nettobetrag ein. Access ersetzt Ihre Eingabe automatisch durch die Anzeige GruppierungVonIst Nettobetrag: Ist Nettobetrag.
6
W!hlen Sie den Eintrag Sum aus der Liste TotalType.
7
0ndern Sie die Beschriftung des Steuerelements auf Nettosumme.
Abb. 8.28 Hier zeigt Access die Nettosumme an
Das neue Steuerelement gibt die Nettosumme aller Projekte wieder. In Abbildung 8.28 zeigt die Datenzugriffsseite zwar nur die ersten drei von insgesamt f,nf zugeordneten Projekten an, die Summe wird aber ,ber alle f,nf Projekte gebildet. Um die Anzahl der dargestellten Projekte zu ver!ndern, gehen Sie wie folgt vor: 1
W!hlen Sie in der Entwurfsansicht den Befehl Ansicht > Sortieren und Gruppieren.
2
Markieren Sie die Gruppe Projekte.
3
0ndern Sie die Eigenschaft Datenseitengr4ße auf die Anzahl der anzuzeigenden Datens!tze.
503
Datenzugriffsseiten
Steuerelemente einer Datenzugriffsseite und ihre Eigenschaften Die Toolbox enth!lt eine Pbersicht ,ber alle Steuerelementtypen, die Sie auf einer Datenzugriffsseite anordnen kDnnen. Es handelt sich hierbei vorwiegend um die gleichen Steuerelementtypen wie im Formular- und Berichtsentwurf. Sie kennen die wesentlichen Eigenschaften dieser Steuerelemente bereits aus Kapitel 6 Formulare und Kapitel 7 Berichte dieses Buchs. Dar,ber hinaus stellt Access zum Entwurf von Datenzugriffsseiten spezielle Steuerelementtypen wie beispielsweise Office Chart und Office PivotTable zur Verf,gung. Diese als Office-Steuerelemente bezeichneten Steuerelementtypen sind nur in Datenzugriffsseiten verf,gbar. Das Verst!ndnis dieser Steuerelemente sowie weiterer Funktionen von Datenzugriffsseiten erfordert die intensive Besch!ftigung mit dem Thema Internet und der Gestaltung von HTML-Seiten. Dazu gibt es inzwischen in ausreichendem Maße spezielle Fachliteratur. Die Beschreibung s!mtlicher Steuerelementtypen und ihrer Eigenschaften finden Sie außerdem in der Hilfe von Access.
504
Eine Datenbank verwalten Das Datenbankfenster anwenden Access konfigurieren Men- und Symbolleisten verwenden Men- und Symbolleisten anpassen Die Rechtschreibung von Daten berprfen und korrigieren Einstellungen fr Seiten und internationale Einstellungen Eine Datenbank sichern Eine Datenbank konvertieren Eine Datenbank komprimieren Eine Datenbank reparieren Eine Datenbank ver- und entschlsseln Eine Datenbank schtzen Eine Datenbank dokumentieren Eine Datenbank replizieren Eine Datenbank aufteilen Die Leistung einer Datenbank analysieren
506 522 530 536 552 557 557 558 560 563 565 566 592 594 607 609
9
Eine Datenbank verwalten
In diesem Kapitel vervollst!ndigen Sie Ihr Wissen ,ber die Verwaltung einer Datenbank. Es beschreibt Arbeitstechniken, die Sie auf alle Objekte einer Datenbank anwenden kDnnen. Dazu z!hlen unter anderem die Anwendung des Datenbankfensters, die Konfiguration von Access sowie das Sichern, Konvertieren, Komprimieren, Reparieren, Ver- und Entschl,sseln, Sch,tzen, Dokumentieren, Replizieren, Aufteilen und Analysieren einer Datenbank.
Das Datenbankfenster anwenden Das Datenbankfenster von Access gibt den Pberblick ,ber alle Objekte. Es gibt eine Reihe von Aktionen, die Sie ausgehend vom Datenbankfenster einleiten kDnnen. Viele dieser Aktionen haben Sie im Verlauf dieses Buchs bereits kennen gelernt. Die folgenden Abschnitte besch!ftigen sich mit einigen fortgeschrittenen Themen im Zusammenhang mit dem Datenbankfenster.
Die Symbolleiste des Datenbankfensters Tabelle 9.1 enth!lt eine Pbersicht der Symbolleiste bei aktivem Datenbankfenster.
Symbolleiste bei aktivem Datenbankfenster
Symbol
Beschreibung Legt eine neue Datenbank an Rffnet eine Datenbank Speichert ein Objekt Druckt ein Objekt Rffnet ein Objekt in der Seitenansicht Pr,ft die Rechtschreibung von Texten Verschiebt das markierte Objekt in die Zwischenablage Kopiert das markierte Objekt in die Zwischenablage F,gt den Inhalt der Zwischenablage ein Pbertr!gt Formate (ist bei aktivem Datenbankfenster nicht verf,gbar)
506
Das Datenbankfenster anwenden
Symbolleiste bei aktivem Datenbankfenster (Forts.)
Symbol
Beschreibung Macht die letzte 0nderung r,ckg!ngig Sendet Daten an MS-Excel und MS-Word Analysiert Dateanbankobjekte Rffnet das Eigenschaftenfenster f,r das markierte Objekt Rffnet das Fenster Beziehungen Erstellt ein neues Datenbankobjekt Startet den Office-Assistenten Tabelle 9.1
Verknpfung zu einem Datenbankobjekt erstellen Access bietet die MDglichkeit, eine Verkn,pfung zu einem Datenbankobjekt auf dem Desktop von Windows oder einem anderen Ordner abzulegen. Um eine Verkn,pfung zu erstellen, klicken Sie mit der rechten Maustaste auf ein Datenbankobjekt. Die Auswahl des Befehls Verkn1pfung erstellen f,hrt dann zum Rffnen des gleichnamigen Dialogs.
Abb. 9.1 Verkn pfung erstellen
507
Eine Datenbank verwalten
Der Dialog fordert Sie zur Eingabe eines Laufwerks, eines Ordners und eines Dateinamens f,r die Verkn,pfungsdatei auf. Wenn Sie die Vorgabe ,bernehmen, legt Access die Verkn,pfung auf dem Desktop von Windows ab. Es handelt sich hierbei um den Unterordner Desktop des Ordners, in den Sie Windows installiert haben.
Access ber eine Verkn pfung starten
Tipp
Wenn Sie sp!ter einen Doppelklick auf das Verkn,pfungssymbol durchf,hren, startet Windows Access und veranlasst es, die entsprechende Datenbank zu Dffnen. Access Dffnet dann automatisch auch das entsprechende Datenbankobjekt und f,hrt die Standard-Aktion aus. Wenn Sie beispielsweise eine Verkn,pfung zu einer Tabelle erstellt haben, wird diese in der Datenblattansicht geDffnet. Weitere Hinweise zu Standard-Aktionen finden Sie weiter unten in diesem Kapitel. Sie kDnnen eine Verkn,pfung einfach und schnell erstellen, indem Sie ein Objekt aus dem Datenbankfenster auf den Desktop von Windows oder einen anderen Ordner ziehen.
Datenbankobjekte in der Taskleiste Wenn Sie mit großen und komplexen Datenbanken arbeiten, ist es sicherlich schon einmal passiert: Vor lauter geDffneten Tabellen, Abfragen, Formularen und Berichten finden Sie nicht mehr das Objekt, welches Sie bearbeiten wollten. Nun kommen auch noch die Datenzugriffsseiten als weiterer Objekttyp hinzu. Gegen,ber !lteren Access-Versionen hat Access XP den Vorteil, dass s!mtliche geDffneten Objekte der Datenbank in der Taskleiste angezeigt werden kDnnen. Wenn Sie die Taskleiste ein wenig verbreitern, kDnnen Sie sehr komfortabel auf alle geDffneten Objekte zugreifen. Falls Sie diese Funktion nicht nutzen wollen, kDnnen Sie diese auch einfach ausschalten: Rffnen Sie den Dialog Optionen mit dem Men,befehl Extras > Optionen und wechseln Sie in das Register Ansicht. Unter der Pberschrift Anzeige finden Sie die Option Fenster in Taskleiste. Wenn Sie diese Option deaktivieren, wird nur noch die Access XP-Schaltfl!che in der Taskleiste angezeigt.
Objekte ein- und ausblenden Eine Datenbank enth!lt mehr Objekte, als das Datenbankfenster standardm!ßig anzeigt. Um alle Objekte einer Datenbank einzusehen, gehen Sie wie folgt vor:
Ausgeblendete und Systemobjekte einblenden
508
1
W!hlen Sie den Befehl Extras > Optionen aus der Men,leiste.
2
Markieren Sie das Register Ansicht.
3
Kreuzen Sie die Kontrollk!stchen Ausgeblendete Objekte und Systemobjekte in der Optionsgruppe Einblenden an.
4
Klicken Sie auf die Schaltfl!che OK.
Das Datenbankfenster anwenden
Das Datenbankfenster zeigt nun auch die ausgeblendeten und die Systemobjekte an. Systemobjekte sind Datenbankobjekte, die Access zur Verwaltung einer Datenbank benDtigt. Da Access die Systemobjekte selbst erstellt und bearbeitet, sollten Sie diese besser nicht ver!ndern. Anderenfalls kDnnte Ihre Datenbank zerstDrt werden. Damit die Systemobjekte wieder verschwinden, sollten Sie das entsprechende Kontrollk!stchen jetzt wieder leeren. Anders verh!lt es sich mit ausgeblendeten Objekten. Sie kDnnen Ihr Datenbankfenster ,bersichtlich halten, indem Sie selten benDtigte Objekte kurzerhand ausblenden. Gehen Sie dazu wie folgt vor: 1
Klicken Sie mit der rechten Maustaste auf ein Datenbankobjekt.
2
W!hlen Sie den Befehl Eigenschaften aus dem Kontextmen,.
3
Kreuzen Sie das Kontrollk!stchen Ausgeblendet an.
4
Klicken Sie auf die Schaltfl!che OK.
Systemobjekte
Ausgeblendete Objekte
Abb. 9.2 Datenbankobjekt ausblenden
Access zeigt ausgeblendete Datenbankobjekte nur so lange an, wie das entsprechende Kontrollk!stchen im Dialog Optionen angekreuzt ist. Wenn Sie das Kontrollk!stchen leeren, verschwinden die entsprechenden Eintr!ge aus dem Datenbankfenster. Sie kDnnen ausgeblendete Datenbankobjekte aber weiterhin Dffnen und ausf,hren. Wenn Sie beispielsweise den Zugriff auf Datenbankobjekte ,ber ein Pbersichtsformular bewerkstelligen und die Datenbankobjekte nicht mehr im Entwurf Dffnen m,ssen, dann kDnnen Sie sie ausblenden. Sie erreichen damit, dass w!hrend der Arbeit an einer Datenbank nur die benDtigten Datenbankobjekte im Datenbankfenster erscheinen. 509
Eine Datenbank verwalten
Die Ansicht und Anordnung von Symbolen im Datenbankfenster %ndern Detailansicht
Pber die Befehle des Men,s Ansicht und des Kontextmen,s sowie die Schaltfl!chen der Symbolleiste des Datenbankfensters kDnnen Sie die Auswahllisten im Datenbankfenster anordnen. Neben großen Symbolen, kleinen Symbolen und der Listenansicht kDnnen Sie insbesondere die Detailansicht aktivieren. Der Vorteil dieser Ansicht besteht darin, dass Access neben dem Objektnamen auch die Beschreibung, das Datum des Erstellens und das Datum der letzten 0nderung an dem Objekt anzeigt. Diese Eigenschaften sind sonst nur im Eigenschaftenfenster eines Datenbankobjekts zu sehen.
Abb. 9.3 Detailansicht von Datenbankobjekten
Pber den Befehl Symbole anordnen der Men,leiste des Datenbankfensters und des Kontextmen,s kDnnen Sie die Liste im Datenbankfenster sortieren. In der Detailansicht kDnnen Sie diesen Vorgang dadurch vereinfachen, dass Sie auf eine der Spalten,berschriften klicken. Wenn Sie beispielsweise auf die Spalte Bearbeitung klicken, dann sortiert Access die Liste aufsteigend nach dem Zeitpunkt der letzten Bearbeitung. Mit einem erneuten Klick auf dieselbe Spalte erfolgt die Sortierung in absteigender Reihenfolge.
Standard-Aktionen von Objekten Im Verlauf dieses Buchs wurden viele der Aktionen, die Sie im Datenbankfenster ausf,hren kDnnen, bereits im Zusammenhang mit Tabellen, Abfragen, Formularen, Berichten und Datenzugriffsseiten besprochen. Weitere Aktionen werden Sie im Zusammenhang mit Makros und Modulen noch kennen lernen.
Berichte drucken
510
Ausgehend vom Datenbankfenster kDnnen Sie einige Aktionen schnell und effektiv starten. Um beispielsweise mehrere Berichte nacheinander zu drucken, markieren Sie das Register Berichte. Klicken Sie dann jeweils auf einen Berichtsnamen und das Drucken-Symbol. Bei dieser vereinfachten Vorgehensweise ist es nicht notwendig, den Bericht vorher in der Entwurfs- oder Seitenansicht zu Dffnen.
Das Datenbankfenster anwenden
Beachten Sie, dass Access im Kontextmen, eines Datenbankobjekts stets die Standard-Aktion des entsprechenden Objekttyps an erster Stelle anzeigt. Bei Tabellen, Abfragen, Formularen, Berichten und Datenzugriffsseiten ist die Standard-Aktion stets das Rffnen des Objekts in der Datenblatt-, Formular-, Seitenansicht oder Datenzugriffsseitenansicht. Bei Makros ist die Standard-Aktion das Ausf,hren des Makros. Module werden standardm!ßig in der Entwurfsansicht geDffnet.
Standard-Aktion
Access f,hrt die Standard-Aktion mit einem Objekt durch, wenn Sie im Datenbankfenster einen Doppelklick auf das Objekt durchf,hren. Die Standard-Aktion kommt außerdem beim Erstellen einer Verkn,pfung zu einem Objekt zur Geltung. Access f,hrt die Standard-Aktion aus, wenn Sie einen Doppelklick auf ein Verkn1pfungSymbol durchf,hren.
Eigenschaften von Datenbankobjekten und Datenbanken Pber den Befehl Datei > Datenbankeigenschaften kDnnen Sie die Eigenschaften der Objekte einer Datenbank einsehen. Hier sind vor allem die Eigenschaften Beschreibung und Ausgeblendet interessant, da sich diese als einzige bearbeiten lassen. Hinweise zum Ausblenden von Datenbankobjekten finden Sie weiter oben in diesem Kapitel.
Eigenschaften von Datenbankobjekten
In die Eigenschaft Beschreibung kDnnen Sie einen beliebigen Text zur Beschreibung eines Datenbankobjekts eingeben. Access zeigt die Beschreibung im Datenbankfenster an, wenn Sie die Detailansicht aktivieren.
Detailansicht
Um die Eigenschaften einer Datenbank einzusehen, w!hlen Sie den Befehl Datenbankeigenschaften aus dem Men, Datei oder aus dem Kontextmen, des Datenbankfensters. Damit der Befehl im Kontextmen, erscheint, m,ssen Sie mit der rechten Maustaste auf einen grauen Bereich des Datenbankfensters klicken.
Eigenschaften von Datenbanken
Das Eigenschaftenfenster einer Datenbank enth!lt f,nf Register, die die Eigenschaften nach Themen kategorisieren. Die Register Allgemein, Statistik und Inhalt zeigen wichtige Informationen an, die sich jedoch nicht bearbeiten lassen. Das Register Zusammenfassung ist da schon interessanter. Hier kDnnen Sie verschiedene Informationen wie beispielsweise das Thema, den Titel und den Autor der Datenbank eingeben. Einige dieser Informationen kDnnen Sie zur erweiterten Suche nach Datenbanken verwenden. Mit einem Klick auf das Register Anpassen kDnnen Sie weitere Datenbankeigenschaften einsehen und bearbeiten. Diese zus!tzlichen Eigenschaften lassen sich dann in der erweiterten Suche nach Datenbankdateien verwenden.
Datenbankeigenschaften anpassen
511
Eine Datenbank verwalten
Abb. 9.4 Eigenschaften einer Datenbank
Abb. 9.5 Eigenschaften einer Datenbank anpassen
512
Das Datenbankfenster anwenden
Um eine neue Eigenschaft hinzuzuf,gen, gehen Sie wie folgt vor: 1
Geben Sie im Feld Name den Namen einer Eigenschaft ein oder w!hlen Sie einen Namen aus dem darunter liegenden Listenfeld.
2
W!hlen Sie den Typ der Eigenschaft aus dem Kombinationsfeld Typ.
3
Geben Sie den Wert der Eigenschaft in das Feld Wert ein.
4
Klicken Sie auf die Schaltfl!che Hinzuf1gen.
Access zeigt die neue Eigenschaft dann in der Liste an. Klicken Sie eine Eigenschaft in der Liste an, um sie zu lDschen oder zu bearbeiten.
Neue Eigenschaften hinzuf gen
Eigenschaften bearbeiten und lschen
Nach Datenbanken suchen Bei Access enthalten die Dialoge zum Rffnen und Speichern von Dateien weit mehr Funktionen, als nur die Eingabe und Auswahl eines Dateinamens. So Dffnet beispielsweise ein Klick mit der rechten Maustaste auf einen Dateinamen ein Kontextmen,, ,ber das Sie die markierte Datei unter anderem ausschneiden, kopieren, umbenennen und lDschen kDnnen.
Kontextmen im Hffnen-Dialog
Pber das Men, ffnen unten rechts im ffnen-Dialog kDnnen Sie Datenbanken unter verschiedenen Modi Dffnen. Dazu gehDren der exklusive, der schreibgesch,tzte und der exklusive schreibgesch,tzte ffnen-Modus.
Abb. 9.6 Kontextmen im Dialog Hffnen
513
Eine Datenbank verwalten
Erweiterte Suchfunktionen
Dar,ber hinaus stellt Access im Dialog ffnen erweiterte Funktionen f,r die Suche nach Datenbankdateien zur Verf,gung. Wenn Microsoft Office auf Ihrem PC installiert ist, finden Sie die gleichen Funktionen auch in den ffnen-Dialogen der anderen Anwendungsprogramme wie beispielsweise Excel und Word. Außerdem kDnnen Sie den Dialog Office-Dokument 4ffnen ,ber das Startmen, von Windows Dffnen. Dieser Dialog ist mit dem ffnen-Dialog der Office-Anwendungen identisch. Um eine Datenbank mithilfe dieses Dialogs zu suchen, gehen Sie folgendermaßen vor: 1
W!hlen Sie den Befehl Datei > ffnen aus der Men,leiste.
2
W!hlen Sie aus der Men,leiste des ffnen-Dialogs den Befehl Extras > Suchen.
Abb. 9.7 Der Dialog Suchen
Der Dialog Weitere Suche
514
Access Dffnet den Dialog Suchen, mit dem Sie weitere Kriterien f,r die Suche nach Datenbanken eingeben kDnnen. Aktivieren Sie zun!chst durch Anklicken das Register Erweiterte Optionen. Gehen Sie dann wie folgt vor: 1
W!hlen Sie eine Eigenschaft aus dem Kombinationsfeld Eigenschaft oder geben Sie den Namen einer Eigenschaft ein.
2
W!hlen Sie einen Vergleichsoperator aus dem Kombinationsfeld Bedingung.
Das Datenbankfenster anwenden
3
Geben Sie den Suchwert f,r die Eigenschaft in das Feld Wert ein.
4
Klicken Sie auf die Schaltfl!che Zur Liste hinzuf1gen.
Mit dieser Vorgehensweise kDnnen Sie eines oder mehrere Suchkriterien eingeben, die sich auf Datenbankeigenschaften beziehen. Sie kDnnen dabei sowohl in den Eigenschaften des Registers Zusammenfassung als auch in den Eigenschaften des Registers Anpassen suchen. Pber Optionsfelder kDnnen Sie mehrere Suchkriterien Und- oder Oder-verkn,pfen. Außerdem kDnnen Sie eine Suche speichern und gespeicherte Suchen wieder Dffnen. Pber die Schaltfl!che Entfernen l!sst sich ein Kriterium aus der Liste lDschen. Mit der Schaltfl!che Neue Suche lDschen Sie alle Suchkriterien. Nachdem Sie alle Suchkriterien definiert haben, klicken Sie auf die Schaltfl!che Suchen. Access beginnt dann mit der Suche und zeigt die gefundenen Datenbanken im Dialog ffnen an. Klicken Sie hier auf die Schaltfl!che ffnen, um eine Datenbank zu Dffnen.
Abb. 9.8 Liste von Datenbanken als Suchergebnis
Mit den so genannten Favoriten kDnnen Sie auf Dateien und Ordner, die Sie h!ufig benDtigen, schnell zugreifen. Die Definition von Favoriten erfolgt im Dialog ffnen. W!hlen Sie zun!chst ,ber das Dialogfeld Suchen in einen Ordner oder Dateinamen aus und markieren diesen. W!hlen Sie dann aus dem Men, Extras den Befehl Zu Favoriten hinzuf1gen. Der ausgew!hlte Ordner oder Dateiname wird daraufhin dem Ordner Favoriten hinzugef,gt.
515
Eine Datenbank verwalten
In Favoriten suchen
Tipp
Um die Liste der Favoriten einzusehen, klicken Sie auf das Symbol Favoriten im linken Bereich des ffnen-Dialogs. Access zeigt dann die Auswahlliste Ihrer favorisierten Ordner und Datenbanken an. Per Doppelklick kDnnen Sie direkt einen Ordner oder eine Datenbank Dffnen. Die Favoriten sind eine komfortable MDglichkeit, um schnell auf die bevorzugten Ordner und Dateien zuzugreifen. Windows verwaltet die Favoriten als Verkn,pfungen im Ordner Favoriten, der ein Unterordner des Ordners ist, in den Sie Windows installiert haben. Sie kDnnen die Favoriten daher auch mit dem Explorer von Windows verwalten. Um eine Liste der zuletzt geDffneten Dokumente zu erhalten, klicken Sie im linken Bereich des Datenbankfensters auf das Symbol Verlauf. Im ffnen-Dialog wird daraufhin eine Liste aller bisher benutzten Dokumente eingeblendet.
Eigenschaften und Vorschau einblenden
Wechseln in vorherigen Ordner
Pber das Men, Ansicht kDnnen Sie die Art der Darstellung der Verzeichnisse und Dokumente anpassen. Mit den beiden Symbolen Eigenschaften und Vorschau kDnnen Sie die Anzeige der Liste im Dialog ffnen um die Anzeige von Datenbankeigenschaften und einer Vorschau auf eine Datenbank erg!nzen. Bei den Datenbankeigenschaften zeigt Access aber nur die DateigrDße und den Zeitpunkt der letzten 0nderung an. Beim Navigieren durch die Verzeichnisstruktur kDnnen Sie durch Anklicken des Symbols 9bergeordneter Ordner in das n!chsthDhere Verzeichnis wechseln. Seit Access 2000 gibt es nun auch die MDglichkeit, die zuletzt geDffneten Verzeichnisse erneut zu Dffnen. Dieses geschieht durch Anklicken des Verlauf-Symbols in der Symbolleiste des ffnen-Dialogs.
Ein 9bersichtsformular fr die Datenbank erstellen Das Datenbankfenster ist w!hrend der Entwicklungsphase einer Datenbank eine gute MDglichkeit, auf die Datenbankobjekte zuzugreifen. Ist die Datenbankentwicklung aber abgeschlossen, sollten Sie den Zugriff auf die Formulare und Berichte der Datenbank komfortabler gestalten. Mit dem Pbersichts-Manager von Access ist das in wenigen Minuten erledigt und verbessert das Aussehen Ihrer Datenbankanwendung.
Abb. 9.9 Eine (bersicht erstellen
516
Das Datenbankfenster anwenden
Der Start des Pbersichts-Managers erfolgt ,ber den Befehl Extras > DatenbankDienstprogramme > 9bersichts-Manager. Wenn Ihre Datenbank bisher noch keine Pbersicht enth!lt, fragt der Pbersichts-Manager zun!chst, ob er eine solche anlegen soll. Best!tigen Sie den Dialog mit einem Klick auf die Schaltfl!che Ja, damit Access den Pbersichts-Manager starten kann.
(bersichts-Manager starten
Abb. 9.10 Eine (bersicht bearbeiten
Der Pbersichts-Manager erstellt in Ihrer Datenbank das Formular mit dem Namen 9bersicht. Dieses Formular enth!lt Befehlsschaltfl!chen, die bestimmte Aktionen einleiten. Welche Aktionen das sind, definieren Sie im Entwurf eines Pbersichtsformulars. Mit dem Pbersichts-Manager lassen sich auch mehrstufige Pbersichten erstellen. Wenn Sie in einer Pbersicht auf eine Schaltfl!che klicken, kann daher eine weitere Pbersicht geDffnet werden. Der Startdialog zeigt diese Pbersichtsebenen unter der Bezeichnung 9bersichtsseiten an. Die mit dem Datenbank-Assistenten von Access erstellten Beispieldatenbanken enthalten mehrstufige Pbersichten. Sie finden Beispiele f,r den Gebrauch von Pbersichten in Kapitel 1 Direkt loslegen dieses Buchs.
(bersichtsseiten
Tipp
Abb. 9.11 (bersichtsseite hinzuf gen
517
Eine Datenbank verwalten
(bersichtseiten erstellen
Der Pbersichts-Manager erstellt standardm!ßig die Pbersichtsseite Haupt1bersicht, die beim Rffnen eines Pbersichtsformulars automatisch aktiviert wird. Um weitere Pbersichtsseiten zu erstellen, klicken Sie auf die Schaltfl!che Neu und geben einen Namen ein. Beim Rffnen des Formulars 9bersicht zeigt Access die Elemente der Pbersicht an, die mit dem Text Standard markiert ist. Um eine andere Seite als die Haupt1bersicht als Standard zu markieren, markieren Sie die Pbersichtsseite und klicken auf die Schaltfl!che Standard.
Abb. 9.12 (bersichtsseite bearbeiten
(bersichtseiten bearbeiten
(bersichtselemente bearbeiten
Befehle des (bersichts-Managers
518
Um eine Pbersichtsseite zu bearbeiten, markieren Sie den Namen in der Liste und klicken auf die Schaltfl!che Bearbeiten. Access Dffnet dann den Dialog 9bersichtsseite bearbeiten, mit dem Sie die Elemente der Pbersicht festlegen. Klicken Sie in diesem Dialog auf die Schaltfl!che Neu, um ein neues Pbersichtselement hinzuzuf,gen. Die Schaltfl!chen Aufw7rts und Abw7rts dienen der Bearbeitung der Reihenfolge der Pbersichtselemente innerhalb der Pbersichtsseite. Die Schaltfl!che L4schen lDscht ein Pbersichtselement und die Schaltfl!che Schließen schließt den Dialog 9bersichtseite bearbeiten. Ein Pbersichtselement wird sp!ter als Befehlsschaltfl!che innerhalb des Pbersichtsformulars angezeigt. Im Dialog 9bersichtselement bearbeiten sollten Sie zun!chst einen Text eingeben, der die auszuf,hrende Aktion beschreibt. Verwenden Sie hier, wie bei Befehlsschaltfl!chen ,blich, das kaufm!nnische Und-Zeichen (&), damit ein Buchstabe des Textes sp!ter unterstrichen dargestellt wird. Dieser Buchstabe ermDglicht dann bei gedr,ckter A-Taste die vereinfachte Auswahl des Pbersichtselements. Um einen Befehl auszuw!hlen, klicken Sie auf den Pfeil des gleichnamigen Kombinationsfeldes. Die wichtigsten Befehle sind die zum Rffnen einer anderen Pbersichtsseite, zum Rffnen von Formularen und zum Rffnen von Berichten. Mit weiteren Befehlen kDnnen Sie Makros und VBA-Funktionen starten. Der Befehl Anwendung beenden schließt das Pbersichtsformular und die Datenbank. Der Befehl Anwendung entwerfen startet den Pbersichts-Manager aus dem Pbersichtsformular heraus.
Das Datenbankfenster anwenden
Abb. 9.13 (bersichtselement bearbeiten
Nachdem Sie einen Befehl ausgew!hlt haben, fragt der Pbersichts-Manager unter Umst!nden nach weiteren Parametern, indem er im Dialog 9bersichtselement bearbeiten ein weiteres Feld anzeigt. Die Bedeutung dieses Feldes variiert mit dem ausgew!hlten Befehl. Wenn Sie beispielsweise den Befehl Zur 9bersicht gehen ausgew!hlt haben, fordert Sie ein Kombinationsfeld zur Auswahl der Pbersichtsseite auf, die der Befehl aktivieren soll. Um eine mehrstufige Pbersicht zu erstellen, m,ssen Sie mit dem Befehl Zur 9bersicht gehen ausgehend von der Standard-Pbersicht weitere Pbersichtsseiten Dffnen. Achten Sie darauf, dass die untergeordneten Pbersichten ebenfalls ein Element mit dem Befehl Zur 9bersicht gehen enthalten, damit der Anwender wieder zur Standard-Pbersicht zur,ckkehren kann. Nachdem Sie eine Pbersicht fertig gestellt haben, kDnnen Sie sie ,ber das Datenbankfenster Dffnen und testen, ob sie Ihre Anforderungen erf,llt. F,hren Sie einfach im Register Formulare einen Doppelklick auf den Eintrag 9bersicht durch. Access Dffnet dann das Pbersichtsformular. W!hrend der Testphase kDnnen Sie sich die Arbeit erleichtern, indem Sie der Pbersicht ein Element mit dem Befehl Anwendung entwerfen hinzuf,gen. Das gibt Ihnen die MDglichkeit, den PbersichtsManager direkt aus dem Pbersichtsformular heraus zu testen.
Mehrstufige (bersichten erstellen
Eine (bersicht anwenden
519
Eine Datenbank verwalten
(bersichtsformular automatisch ffnen
Wenn Access das Pbersichtsformular beim Rffnen der Datenbank automatisch Dffnen soll, gehen Sie wie folgt vor: 1
W!hlen Sie den Befehl Extras > Start aus der Men,leiste, damit Access den gleichnamigen Dialog Dffnet.
2
W!hlen Sie den Eintrag 9bersicht aus dem Kombinationsfeld Formular anzeigen.
3
Klicken Sie auf OK.
Weitere Hinweise zum Start-Dialog von Access finden Sie im folgenden Abschnitt dieses Kapitels.
Hinweis
Der Pbersichts-Manager f,gt Ihrer Datenbank das Formular 9bersicht und die Tabelle 9bersichtseintr7ge hinzu. Mehrere mit dem Formular verkn,pfte VBA-Prozeduren !ndern die Ansicht des Formulars in Abh!ngigkeit von den Werten der Tabelle 9bersichtseintr7ge. Ohne gute Kenntnisse von VBA sollten Sie weder das Formular noch die Tabelle manuell bearbeiten. Verwenden Sie stets den Pbersichts-Manager, um eine Pbersicht zu !ndern.
Startparameter einer Datenbank Access Dffnet mit einer Datenbank automatisch die Men,leiste, die Symbolleiste und das Datenbankfenster. Außerdem zeigt es die Statuszeile an. Um diese Startparameter zu !ndern, w!hlen Sie den Befehl Extras > Start aus der Men,leiste.
Hinweis
Abb. 9.14 Startparameter einer Datenbank
520
Access speichert die Startparameter mit der aktuellen Datenbank. Beachten Sie, dass die Einstellungen im Dialog Start mit Ausnahme des Anwendungssymbols erst wirksam werden, wenn Sie die aktuelle Datenbank schließen und erneut Dffnen. Wenn Sie eine andere Datenbank Dffnen, werden deren Startparameter aktiv. Wenn Sie eine Datenbank bei festgehaltener H-Taste Dffnen, ,bergeht Access die Einstellungen aus dem Dialog Start.
Das Datenbankfenster anwenden
Mit den beiden Eigenschaften Anwendungstitel und Anwendungssymbol kDnnen Sie die Titelzeile von Access umgestalten. Als Anwendungstitel geben Sie einen Text ein, den Access in der Titelzeile anzeigen soll. Als Anwendungssymbol geben Sie das Laufwerk, den Ordner und den Namen einer .bmp- oder einer .ico-Datei ein. Alternativ kDnnen Sie auch auf das Editor-Symbol klicken, um eine Datei ,ber den ffnen-Dialog auszuw!hlen.
Anwendungstitel und Anwendungssymbol
Access zeigt das Anwendungssymbol in der Titelleiste des Access-Fensters und damit auch in der Taskleiste von Windows an. Wenn Sie eine Datenbank weitergeben, sollten Sie auch das Anwendungssymbol kopieren und den neuen Pfad im Start-Dialog eintragen. Mit einem Klick auf den Pfeil des Kombinationsfeldes Men1leiste zeigt Access eine Auswahlliste aller Makros der aktuellen Datenbank an. Sie haben so die MDglichkeit, ein Men,leisten-Makro auszuw!hlen, das Access beim Rffnen der Datenbank automatisch aktiviert. Auf diese Weise !ndern Sie die Standard-Men,leiste f,r die Zeit, w!hrend der die Datenbank geDffnet ist.
Men leiste
Ein Klick auf das Editor-Symbol startet den Men,-Editor von Access. Mit dem Leeren des Kontrollk!stchens Unbeschr7nkte Men1s anzeigen erreichen Sie, dass Access beim erneuten Rffnen der Datenbank die Men,befehle ausblendet, die dem Entwurf von Datenbankobjekten dienen. So verschwinden beispielsweise s!mtliche Men,befehle, die den Wechsel in die Entwurfsansicht ermDglichen.
Unbeschr!nkte Men s anzeigen
Leeren Sie das Kontrollk!stchen Standard-Kontextmen1s zugelassen, wenn Sie die Kontextmen,s von Access verhindern wollen. Diese Einstellung betrifft nur die Kontextmen,s von Access. Wenn Sie Ihre Formulare mit eigenen Kontextmen,s ausgestattet haben, bleiben diese weiterhin aktiv.
Standard-Kontextmen3s zugelassen
Ein Klick auf den Pfeil des Kombinationsfeldes Formular anzeigen Dffnet eine Auswahlliste der Formulare der aktuellen Datenbank. W!hlen Sie hier das Formular aus, das Access beim n!chsten Rffnen der Datenbank automatisch Dffnen soll. Hier sind Pbersichtsformulare besonders geeignet. Leeren Sie das Kontrollk!stchen Datenbankfenster anzeigen, damit Access das Datenbankfenster beim n!chsten Rffnen der Datenbank nicht einblendet. Der Anwender kann das Datenbankfenster bei Bedarf ,ber den Befehl Fenster > Einblenden oder das Bet!tigen der ?-Taste einblenden. Leeren Sie das Kontrollk!stchen Statuszeile anzeigen, wenn Access beim n!chsten Rffnen der Datenbank die Statuszeile nicht anzeigen soll. Ein Klick auf den Pfeil des Men,s Kontextmen1leiste Dffnet eine Auswahlliste aller Makros der aktuellen Datenbanken. W!hlen Sie ein Kontextmen,-Makro aus, um die Standard-Kontextmen,leiste f,r Formulare und Berichte so lange zu !ndern, wie die aktuelle Datenbank geDffnet ist.
Formular anzeigen
Datenbankfenster anzeigen
Statuszeile anzeigen
Kontextmen3leiste
521
Eine Datenbank verwalten
Eingebaute Symbolleisten zulassen
Leeren Sie das Kontrollk!stchen Eingebaute Symbolleisten zulassen, wenn Access solange keine eigenen Symbolleisten anzeigen soll, wie die aktuelle Datenbank geDffnet ist.
Symbolleisten(nderungen erlaubt
Leeren Sie das Kontrollk!stchen Symbolleisten7nderungen erlaubt, wenn der Anwender ab dem n!chsten Rffnen Ihrer Datenbank keine 0nderungen an Symbolleisten mehr durchf,hren soll.
Access-Spezialtasten verwenden
Deaktivieren Sie das Kontrollk!stchen Access-Spezialtasten verwenden, sind die in Tabelle 9.2 aufgef,hrten Tasten beim n!chsten Rffnen der Datenbank nicht mehr aktiv.
Spezialtasten von Access
Taste
Bedeutung
?
Aktiviert das Datenbankfenster
Sg
Aktiviert die Visual Basic-Oberfl!che
S?
Wechselt zwischen der benutzerdefinierten Men,leiste und Standard-Men,leiste von Access
S;
Unterbricht in einem Access-Projekt das Abrufen von Datens!tzen von einem Server
A?
Startet den Visual Basic Editor Tabelle 9.2
Hinweis
Wenn die Kontrollk!stchen Unbeschr7nkte Men1s anzeigen, Datenbankfenster anzeigen und Access-Spezialtasten verwenden beim n!chsten Rffnen der Datenbank gleichzeitig geleert sind, hat der Anwender keine MDglichkeit mehr, das Datenbankfenster zu aktivieren. Wenn dann noch 0nderungen am Entwurf von Objekten erforderlich sind, muss die Datenbank bei gedr,ckter H-Taste geDffnet werden.
Access konfigurieren Mit dem Befehl Extras > Optionen Dffnen Sie einen Dialog, mit dem Sie die Optionen von Access einstellen kDnnen. Viele der Optionen haben Sie im Verlauf dieses Buchs schon im Zusammenhang mit Tabellen, Abfragen, Formularen, Berichten und Datenzugriffsseiten kennen gelernt. So finden Sie beispielsweise die Beschreibung der Optionen des Registers Formulare/Berichte in Kapitel 6 Formulare und Kapitel 7: Berichte dieses Buchs. Auf die Optionen zu Hyperlinks wird in Kapitel 4 Tabellen und denen zu HTML in Kapitel 10 Datenaustausch eingegangen. Die Optionen des Registers Weitere werden im Zusammenhang mit dem Einsatz von Access 522
Access konfigurieren
im Netzwerk in Kapitel 12 Access im Netzwerk besprochen. Die folgenden Abschnitte erkl!ren die Optionen der anderen Register. Die Register Seiten, International und Rechtschreibung sind erstmals in Access XP enthalten.
Abb. 9.15 Die Optionen im Register Ansicht
Access speichert Optionen in der Arbeitsgruppendatei System.mdw. Sie finden diese Datei in dem Ordner, in den Sie Access installiert haben. Die Einstellungen f,r die Optionen gelten daher ,bergreifend f,r alle Datenbanken, die Sie mit Access Dffnen. Die Ausnahmen von dieser Regel sind die Standards f,r formularbasierte Filter im Register Bearbeiten/Suchen. Access speichert diese Optionen in der aktuellen Datenbank. Mit den Optionen des Registers Ansicht kDnnen Sie die Statusleiste, das Start-Dialogfeld, neue Objektverkn,pfungen, ausgeblendete Objekte und Systemobjekte einund ausblenden. Wenn Sie den Start-Dialog ausblenden, kDnnen Sie es sp!ter ,ber den Befehl Datei > Datenbank 4ffnen oder einen Mausklick auf das Datenbank 4ffnen-Symbol auf den Bildschirm holen. Weiterhin kDnnen Sie festlegen, ob die Taskleiste f,r jedes Dokument benutzt werden soll.
Hinweis
Die Optionen im Register Ansicht
Im unteren Teil dieses Registers bestimmen Sie, ob zum Aufruf eines Objekts der Datenbank ein einfacher oder ein Doppelklick auf den Eintrag des Objekts im Datenbankfenster ausgef,hrt werden muss.
523
Eine Datenbank verwalten
Allgemeine Optionen Abb. 9.16 Optionen im Register Allgemein
Optionen im Register Allgemein
Standard-Datenbankordner
Im Register Allgemein kDnnen Sie die Standarddruckbereiche f,r Access, den Standard-Datenbankordner und die Sortierreihenfolge f,r neue Datenbanken einstellen. Die Standarddruckbereiche setzt Access als Vorgabe f,r den linken, oberen, rechten und unteren Rand in neuen Formularen und Berichten ein. Den Standard-Datenbankordner setzt Access beim n!chsten Programm-Start als Vorgabe im Start- oder ffnen-Dialog ein. Wenn Sie hier nichts eingeben, zeigt Access den Ordner Eigene Dateien an. Geben Sie hier das Laufwerk und den Ordner ein, in dem Access standardm!ßig nach Datenbanken suchen soll. Wenn Sie beispielsweise immer zuerst auf Ihre Favoriten zugreifen wollen und Sie Windows in den Ordner C:\Windows installiert haben, geben Sie den folgenden Ausdruck ein: C:\Windows\Favoriten
Sortierreihenfolge bei neuer DB
Audiofeedback
524
Aus dem Kombinationsfeld Sortierreihenfolge bei neuer DB w!hlen Sie eine l!nderspezifische Sortierung f,r die Datenbanken, die Sie neu anlegen. Die Einstellung Allgemein sortiert die Datenbank f,r die Sprachen Englisch, FranzDsisch, Deutsch, Italienisch, Portugiesisch und Spanisch richtig. Wenn Sie eine andere Sortierung w,nschen, klicken Sie auf den Pfeil des Kombinationsfeldes und w!hlen eine Sprache aus der Liste. Wenn Sie die Option Feedback mit Sound aktiviert haben, werden bei bestimmten Aktionen, z.B. der Ausgabe von Warnungen oder der Beendung von Drucken, SignaltDne ausgegeben. Die Auswahl der unterschiedlichen SignaltDne kDnnen Sie in der Systemsteuerung unter Akustische Signale festlegen.
Access konfigurieren
Das Kontrollk!stchen Beim Schließen komprimieren legt fest, ob die aktuelle Datenbank beim Speichern komprimiert werden soll. Weitere Informationen zum Komprimieren von Datenbanken kDnnen Sie dem Abschnitt Eine Datenbank komprimieren weiter unten in diesem Kapitel entnehmen. Haben Sie die Option Pers4nliche Daten entfernen aktiviert, so werden eine Reihe von Informationen im Eigenschaftendialog der Datenbank nicht mehr angezeigt. Im Kombinationsfeld Liste zuletzt ge4ffneter Dateien kDnnen Sie angeben, wie viele zuletzt geDffnete Datenbanken im unteren Teil des Datei-Men,s angezeigt werden sollen.
Objektnamen-Autokorrektur 0nderungen an den Namen von Objekten wie Tabellen, Abfragen, Formularen und Berichten sowie an Steuerelementen und Feldern f,hren bei !lteren Access-Versionen zu Problemen. Diese resultieren aus der nun fehlenden MDglichkeit f,r andere Objekte, unter Benutzung der alten Namen auf diese Objekte zuzugreifen.
Objektnamen-Autokorrektur
Mit Access XP kann das Auftreten dieser Probleme leider nur teilweise eingeschr!nkt werden, da diese Korrektur nur auf die Kommunikation zwischen Objekten der Datenbank angewendet wird. So wird z.B. kein VBA-Code angepasst, der sich auf das Objekt mit dem ge!nderten Namen bezieht. Weiterhin funktioniert die Autokorrektur nicht bei Tabellen und Tabellenfeldern in Back-End-Datenbanken. Bei der Arbeit mit replizierten Datenbanken wird die Objektnamen-Autokorrektur sogar komplett ausgeschaltet. Die Objektnamen-Autokorrektur ist aber eine große Hilfe, wenn Sie mit einer Datenbank arbeiten, die keine der oben genannten Bedingungen erf,llt. Sie sollten zun!chst ,berpr,fen, ob die Objektnamen-Autokorrektur aktiviert ist. Bei Datenbanken, die mit Access 2000/XP angelegt wurden, ist die Autokorrektur standardm!ßig aktiviert. Nicht aktiviert ist sie hingegen, wenn die Datenbank aus einer fr,heren Access-Version in Access 2000 konvertiert wurde. In diesem Fall gehen Sie folgendermaßen vor: 1
Rffnen Sie mit dem Men,befehl Extras > Optionen den gleichnamigen Dialog.
2
Im Register Allgemein finden Sie die Optionsgruppe Objektnamen-Autokorrektur, in der Sie die notwendigen Einstellungen vornehmen kDnnen.
Durch Ankreuzen der Option Informationen aufzeichnen aktivieren Sie die Aufnahme der benDtigten Informationen, um im Falle der Umbenennung von Datenbankobjekten eine Korrektur vornehmen zu kDnnen. Bei markierter Option Ausf1hren !ndert Access automatisch alle Verkn,pfungen zu dem Objekt, dessen Name ge!ndert wurde. 525
Eine Datenbank verwalten
Wenn Sie zus!tzlich die 0nderungen protokollieren wollen, markieren Sie die gleichnamige Option. Access legt dann eine Tabelle namens Objektnamen-Autokorrektur-Protokoll an, in der alle vorgenommenen 0nderungen aufgezeichnet werden.
Weboptionen
Ein Klick auf die Schaltfl!che Weboptionen Dffnet ein weiteres Dialogfenster. In diesem Fenster kDnnen Sie die Farbe f,r Hyperlinks festlegen.
Optionen im Register Bearbeiten/Suchen Pber die Optionsgruppe Suchen/Ersetzen-Standard des Registers Bearbeiten/Suchen stellen Sie die Vorgabe f,r den Dialog Suchen bei der Suche in Datenbl!ttern und Formularen ein. Tabelle 9.3 enth!lt eine Pbersicht ,ber die Optionen und deren Auswirkung auf die Vorgabe des Dialogs Suchen.
Standards fr Suchen und Ersetzen
Option
Auswirkung im Kontrollk!stchen Aktuelles Feld
Auswirkung im Kombinationsfeld Vergleichen
Schnelle Suche
Angekreuzt (Suche im aktuellen Feld)
Ganzes Feld
Allgemeine Suche
Nicht angekreuzt (Suche in Teil des Feldinhalts allen Feldern)
Feldanfang-Suche
Angekreuzt (Suche im aktuellen Feld)
Anfang des Feldinhalts Tabelle 9.3
Access zeigt vor der Ausf,hrung von Aktionsabfragen einen Dialog an, ,ber den Sie die Ausf,hrung zun!chst best!tigen m,ssen. Leeren Sie das Kontrollk!stchen Aktionsabfragen, damit Access den Dialog nicht anzeigt. Der gleiche Zusammenhang gilt f,r das Best!tigen von Datensatz!nderungen und das LDschen von Datenbankobjekten.
Standards f r formularbasierte Filter
526
Im unteren Teil des Registers Bearbeiten/Suchen finden Sie die Standards f,r formularbasierte Filter. Access speichert die entsprechenden Optionen im Unterschied zu allen anderen Optionen nicht in der Arbeitsgruppen-Datei System.mdw, sondern mit der aktuellen Datenbank. Mit den Kontrollk!stchen der Gruppe Liste anzeigen von Werten in bestimmen Sie, f,r welchen Typ von Feldern Access in formularbasierten Feldern Listen anzeigen soll. Der Aufbau formularbasierter Filter wird erheblich schneller, wenn Sie hier nur das Kontrollk!stchen Lokalen indizierten Feldern ankreuzen. Wenn Sie zus!tzlich die Kontrollk!stchen Lokalen nicht-indizierten Feldern und ODBC-Feldern ankreuzen, wird die Anzeige formularbasierter Filter langsamer.
Access konfigurieren
Abb. 9.17 Optionen im Register Bearbeiten/Suchen
Mit dem Eingabefeld Keine Liste anzeigen, wenn mehr als diese Anzahl Zeilen gelesen wird bestimmen Sie, wie viele unterschiedliche Werte Access in den Listen formularbasierter Felder maximal darstellen soll. Access zeigt in den Listen formularbasierter Felder auch dann unterschiedliche Werte an, wenn die Felder nicht indiziert sind. Je grDßer Sie diesen Wert w!hlen, desto l!nger dauert der Aufbau der Listen in formularbasierten Feldern.
Abb. 9.18 Optionen im Register Datenblatt
527
Eine Datenbank verwalten
Optionen im Register Datenblatt
Mit den Optionen des Registers Datenblatt stellen Sie die Standards f,r die Anzeige von Datenbl!ttern ein. Die MDglichkeiten zur Ver!nderung des Datenblatt-Layouts werden in Kapitel 2 Daten verwalten dieses Buchs besprochen und brauchen daher an dieser Stelle nicht weiter erl!utert zu werden.
Optionen fr Tabellen und Abfragen Abb. 9.19 Optionen im Register Tabellen/Abfragen
Tabellenentwurf
Mit den Optionen der Gruppe Tabellenentwurf im Register Tabellen/Abfragen stellen Sie die Standards f,r neue Datenfelder im Tabellenentwurf ein. Geben Sie die L!nge f,r Textfelder ein, w!hlen Sie den Standardtyp f,r Zahlenfelder und w!hlen Sie den Standard-Felddatentyp. Access erstellt im Tabellenentwurf und beim Importieren f,r neue Datenfelder, deren Namen mit einem der Texte aus der Liste AutoIndex bei Importieren/Erstellen beginnt oder endet, automatisch einen Index. Die Liste ID;SchlLssel;Code;Nummer f,hrt beispielsweise dazu, dass Access f,r die Felder Personalcode und Adressennummer Indizes anlegt, f,r das Feld Scheidung aber nicht.
528
Access konfigurieren
Die Option SQL-Server kompatible Syntax (ANSI 92) ist erstmalig in Access XP in diesem Optionen-Register aufgef,hrt. Die Aktivierung dieser Option aktiviert den ANSI-92-SQL-Abfragemodus, so dass Abfragen mit der ANSI-92-SQL-Syntax ausgef,hrt werden kDnnen. Damit ist Access mit dem SQL-Server kompatibel. Aber gehen Sie mit dieser Einstellung nicht leichtfertig um. MDglicherweise funktionieren danach die anderen Abfragen in Ihrer Datenbank nicht mehr richtig. Die Beschreibung der Optionen der Gruppe Abfrageentwurf finden Sie in Kapitel 5 Abfragen dieses Buchs. Die Beschreibung der Optionsgruppe Ausf1hrungsberechtigungen ist im Zusammenhang mit dem Sicherheitssystem von Access interessant und wird daher weiter unten in diesem Kapitel besprochen.
Optionen fr die Tastatur Abb. 9.20 Optionen im Register Tastatur
Mit den Optionen der Gruppe Cursor mit Eingabetaste bewegen des Registers Tastatur stellen Sie das Verhalten der Einf,gemarke beim Bet!tigen der -Taste in Datenbl!ttern und Formularen ein. Die drei MDglichkeiten sind, dass sich die Einf,gemarke nicht, zum n!chsten Feld oder zum n!chsten Datensatz bewegen soll.
Optionen im Register Tastatur
Pber die Optionen der Gruppe Funktion der Pfeiltasten stellen Sie ein, ob die CursorTasten I und W die Einf,gemarke zum n!chsten Feld oder zum n!chsten Zeichen bewegen. Bei der Standardeinstellung N7chstes Feld m,ssen Sie zun!chst die "-Taste bet!tigen, bevor Sie mit den Pfeiltasten auf das n!chste Zeichen positionieren kDnnen. 529
Eine Datenbank verwalten
Cursorverhalten bei Eintritt in ein Feld
Cursor stoppt bei erstem/letztem Feld
Mit den Optionen der Gruppe Cursorverhalten bei Eintritt in ein Feld stellen Sie das Verhalten von Access f,r den Fall ein, dass ein Feld mit der Tastatur oder der Maus aktiviert wird. Die Standardeinstellung ist hier, dass das ganze Feld markiert wird. Alternativ kDnnen Sie einstellen, dass Access die Einf,gemarke auf den Feldanfang oder auf das Feldende positioniert. Wenn Sie den Cursor vom ersten oder letzten Feld eines Datensatzes wegbewegen, positioniert Access die Einf,gemarke standardm!ßig auf das erste bzw. letzte Feld des n!chsten oder vorhergehenden Datensatzes. Sie kDnnen dieses Verhalten !ndern, indem Sie das Kontrollk!stchen Cursor stoppt bei erstem/letztem Feld leeren. Die Einf,gemarke bleibt dann auf dem ersten oder letzten Feld des aktuellen Datensatzes stehen.
Men/- und Symbolleisten verwenden Seit Access 2000 kDnnen Men,- und Symbolleisten uneingeschr!nkt konfiguriert werden.
Mehr Komfort bei Access XP
Office XP
Entwickler
Damit sind die Schwachstellen und Inkonsistenzen der Vorg!ngerversionen behoben. Microsoft hat es geschafft, Men,befehle und Symbole gleichzusetzen. Sie als Anwender profitieren vor allem deshalb von dieser Technologie, weil die Befehle zur Bearbeitung von Men,- und Symbolleisten nun identisch sind. Dies gilt nicht nur f,r Access seit 2000, sondern auch f,r Excel und Word seit Office 2000. So kDnnen Sie das einmal Erlernte gleich mehrfach benutzen. Weiterhin gibt es seit Access 97 VBA-Befehle f,r das Handling von Men,- und Symbolleisten. Sie erlauben endlich die programmatisch uneingeschr!nkte Kontrolle ,ber die Elemente der Benutzeroberfl!che, mit denen der Anwender als Erstes in Kontakt kommt. Das Erscheinungsbild der mit Access entwickelten Datenbanken l!sst sich dank dieser Technologie erheblich verbessern. Weitere Hinweise zur Programmierung von Men,- und Symbolleisten finden Sie in Das Access XP Programmierbuch, das ebenfalls im SYBEX-Verlag, D,sseldorf, erscheint. Die folgenden Abschnitte beschreiben die Handhabung und Konfiguration von Men,- und Symbolleisten mit den Mitteln der Benutzeroberfl!che von Access XP.
Adaptive Men s und Symbolleisten
530
Access XP bietet wie alle Anwendungen unter Office XP intelligente Men,s und Symbolleisten. Standardm!ßig werden in allen Men,s nur die wichtigsten Befehle angezeigt. Weitere Befehle erscheinen je nach Einstellungen entweder zeitverzDgert oder nach Bet!tigen der Einblenden-Schaltfl!che, die sich ganz unten in den entsprechenden Men,s befindet. Befehle, die nicht automatisch sofort angezeigt werden, erscheinen nach erstmaligem Aufruf beim n!chsten Mal automatisch in dem Men,.
Men- und Symbolleisten verwenden
Wenn Sie das Kontrollk!stchen der Option Men1s zeigen zuletzt verwendete Befehle zuerst an leeren, erhalten Sie das von !lteren Office-Anwendungen gewohnte Bild beim Rffnen eines Men,s.
Abb. 9.21 „Intelligentes“ Men mit Einblenden-Schaltfl!che
Wenn Sie mit !lteren Access-Versionen (bis Access 97) arbeiten und einen kleinen Monitor benutzen, sind Sie auf jede Platzersparnis angewiesen. Sie kDnnen dann Symbolleisten ausblenden oder mehrere Symbolleisten nebeneinander anordnen. Der Nachteil ist, dass Sie nicht mehr auf alle Befehle der Symbolleisten zugreifen kDnnen, ohne diese per Doppelklick zu maximieren. Access XP weist hier deutliche Verbesserungen auf. Die Symbolleisten kDnnen bis auf die Breite eines Symbols reduziert werden. Pber die Schaltfl!che Erweitern am unteren Rand des Men,s kDnnen die Symbolleisten so aufgeklappt werden, dass alle Befehle sichtbar sind.
Erweitern von Men s
Wenn Sie lieber alle Befehle gleichzeitig sehen, besteht die MDglichkeit, ,ber die Schaltfl!che Schaltfl7chen hinzuf1gen oder entfernen nur die wichtigsten Symbole auszuw!hlen und die Symbole, die Sie nicht benDtigen, auszublenden. Es werden jeweils die mit einem Haken markierten Schaltfl!chen in der Symbolleiste angezeigt. Sobald Sie eine Symbolleiste derart verkleinert haben, dass nicht alle Schaltfl!chen angezeigt werden kDnnen, versucht Access auf intelligente Weise, die meistbenutzten Befehle in der oberen, st!ndig sichtbaren Zeile darzustellen. Benutzen Sie regelm!ßig einen der Befehle aus dem ausklappbaren Teil, wird dieser zuk,nftig im st!ndig sichtbaren Teil der Leiste angezeigt.
531
Eine Datenbank verwalten
Abb. 9.22 Symbolleisten zum Ausklappen
Men- und Symbolleisten anordnen Nach dem ersten Programmstart zeigt Access XP die Men,leiste gleich unterhalb der Titelzeile an. Darunter befinden sich eine oder mehrere Symbolleisten, die dem aktuellen Arbeitsprozess entsprechen. W!hrend des Formularentwurfs sehen Sie beispielsweise die Symbolleisten Formatierung (Formular/Bericht), Formularentwurf und Toolbox.
Men - und Symbolleisten andocken
Die Anordnung der Men,- und Symbolleisten im oberen Bereich des Access-Fensters entsprechen dem angedockten Zustand. Angedockt bedeutet, dass Access die Position der Leisten automatisch an einem der Fenster fixiert. Durch Ziehen mit der Maus kDnnen Sie die Leisten aus ihrem angedockten Zustand entfernen. Klicken Sie dazu auf den schraffierten Bereich im linken Teil der Leiste und ziehen Sie sie an eine neue Position. Wenn Sie die Leiste in die N!he eines Fensterrandes ziehen, dockt Access sie automatisch dort an. Sie kDnnen Leisten am oberen, linken, rechten und unteren Fensterrand andocken.
532
Men- und Symbolleisten verwenden
Abb. 9.23 Access mit angedockten Leisten
Abb. 9.24 Access mit schwebenden Leisten
533
Eine Datenbank verwalten
Schwebende Leisten
Alternativ kDnnen Sie Leisten auch frei schwebend auf der Arbeitsfl!che ablegen. In diesem Fall verschwindet zwar der grau schraffierte Bereich, daf,r zeigt Access die Leisten aber mit einer Titelleiste an. Um eine frei schwebende Leiste zu verschieben, ziehen Sie einfach die Titelleiste an eine neue Position.
Abb. 9.25 Vertikal ausgerichtete Men leisten
Im schwebenden Zustand lassen sich Leisten ,brigens wie Fenster in Ausdehnung und HDhe ver!ndern. So kDnnen Sie Symbole beispielsweise in Zweier- oder Dreierreihen anordnen. Auch Men,s lassen sich horizontal oder vertikal anordnen.
Men- und Symbolleisten per Drag & Drop ver%ndern Access bietet mehrere MDglichkeiten zur Konfiguration von Men,- und Symbolleisten. Durch Ziehen mit der Maus kDnnen Sie den Leisten neue Elemente hinzuf,gen oder aus ihr entfernen. Die Konfiguration der Symbolleisten mit der Maus ist zwar nicht sehr vielf!ltig, daf,r aber leicht zu benutzen.
Hinweis
534
Der Dialog Anpassen bietet uneingeschr!nkten Zugriff auf alle Eigenschaften von Men,- und Symbolleisten. Sie finden die Beschreibung dieses Dialogs weiter unten in diesem Kapitel im Abschnitt Men1- und Symbolleisten anpassen.
Men- und Symbolleisten verwenden
Da Access Men,befehle und Symbole gleich behandelt, kDnnen Sie beide Elemente untereinander austauschen. So l!sst sich ein Symbol bei gedr,ckter A-Taste in eine Men,leiste ziehen und umgekehrt. Diese Technik funktioniert genauso zum Verschieben von Men,befehlen innerhalb einer Men,leiste bzw. zum Verschieben von Symbolen innerhalb einer Symbolleiste.
Elemente mit der Maus verschieben
Abb. 9.26 So verschieben Sie ein Symbol in ein Untermen
Beim Ziehen eines Elements in eine Men,leiste kDnnen Sie es auch in einem Untermen, positionieren. Wenn die Maus eine Weile auf einem Men, verweilt, klappt Access das Untermen, n!mlich auch bei gedr,ckter A-Taste auf. Von der MDglichkeit des Verschiebens einmal abgesehen, ist das Hinzuf,gen von Elementen mit der Maus auf die Objekte des Datenbankfensters beschr!nkt. Das Anordnen neuer Elemente in einer Men,- oder Symbolleiste ist dar,ber hinaus ,ber den Dialog Anpassen mDglich.
Elemente in Untermen s verschieben
Elemente mit der Maus hinzuf gen
Beim Ziehen eines Objekts aus dem Datenbankfenster in eine beliebige Leiste ordnet Access hier automatisch ein neues Symbol zum Rffnen dieses Objekts an. Wenn Sie beispielsweise ein Formular aus dem Datenbankfenster in eine Symbolleiste ziehen, f,gt Access ein neues Formular-Symbol hinzu. Ein Klick auf dieses Symbol Dffnet dann das Formular, das Sie zuvor in die Symbolleiste gezogen haben. Das Entfernen von Elementen aus einer Symbolleiste erfolgt ebenfalls mit der Maus. Ziehen Sie einfach ein Men, oder ein Symbol bei gedr,ckter A-Taste auf einen leeren Bereich der Arbeitsfl!che, um es aus der Men,- oder Symbolleiste zu entfernen.
Elemente mit der Maus entfernen
535
Eine Datenbank verwalten
Men/- und Symbolleisten anpassen Das Anpassen einer Men,- oder Symbolleiste kann wie im vorigen Abschnitt beschrieben mit der Maus erfolgen. Weit mehr MDglichkeiten bietet jedoch der Dialog Anpassen, den Sie ,ber das Kontextmen, einer Men,- oder Symbolleiste Dffnen. Die folgenden Abschnitte beschreiben den Dialog detailliert.
Symbolleisten zurcksetzen Der beste Weg, sich mit dem Anpassen von Men,- und Symbolleisten vertraut zu machen, ist, es einfach auszuprobieren. Je l!nger Sie jedoch experimentieren, desto grDßer wird wahrscheinlich das Durcheinander auf Ihrem Bildschirm. Deshalb werden Sie manchmal den Wunsch versp,ren, alles wieder in den Originalzustand zu versetzen. Gehen Sie in diesem Fall wie folgt vor: 1
Klicken Sie mit der rechten Maustaste auf eine Men,- oder Symbolleiste.
2
W!hlen Sie den Befehl Anpassen aus dem Kontextmen,.
3
Markieren Sie im gleichnamigen Dialog die Men,- oder Symbolleiste, die Sie in den urspr,nglichen Zustand zur,cksetzen wollen.
4
Klicken Sie auf die Schaltfl!che Zur1cksetzen.
5
Wiederholen Sie den Vorgang mit allen Leisten, die Sie in ihren urspr,nglichen Zustand zur,cksetzen wollen.
Abb. 9.27 Der Dialog Anpassen
536
Men- und Symbolleisten anpassen
Das Register Symbolleisten des Dialogs Anpassen enth!lt eine Auflistung mit den Namen aller verf,gbaren Symbolleisten. Die Namen lassen jeweils auf die Ansicht schließen, in der die Symbolleiste zum Einsatz kommt. So kennen Sie beispielsweise die Symbolleiste Berichtsentwurf aus der Entwurfsansicht von Berichten. Die Symbolleiste Berichtsentwurf und die meisten anderen sind von Access vordefiniert und lassen sich daher in ihren Ursprungszustand zur,cksetzen. Dar,ber hinaus gibt es in einigen Datenbanken wie beispielsweise der Nordwind-Beispieldatenbank so genannte benutzerdefinierte Symbolleisten.
Vordefinierte und benutzerdefinierte Symbolleisten
Benutzerdefinierte Symbolleisten haben Sie entweder selbst entworfen, oder sie stammen von dem Entwickler, mit dessen Datenbank Sie arbeiten. Sie erkennen benutzerdefinierte Symbolleisten unter anderem daran, dass sich die Schaltfl!che Zur1cksetzen hier nicht anklicken l!sst. Der Grund daf,r besteht darin, dass benutzerdefinierte Symbolleisten im Ursprungszustand leer sind und ein Zur,cksetzen in diesen Zustand unsinnig ist. Um die Men,leiste von Access in ihren Ursprungszustand zu versetzen, markieren Sie den Eintrag Men1leiste in der Liste, bevor Sie auf die Schaltfl!che Zur1cksetzen klicken. Auch an dieser Stelle erkennen Sie, dass Access Men,- und Symbolleisten gleich behandelt.
Men leiste
0hnlich wie benutzerdefinierte Symbol- lassen sich auch benutzerdefinierte Men,leisten nicht in ihren Ursprungszustand zur,cksetzen.
Men- und Symbolleisten ein- und ausblenden Access blendet die zur aktuellen Arbeitssituation passenden Men,- und Symbolleisten jeweils automatisch ein. Pber den Dialog Anpassen kDnnen Sie zudem einzelne Leisten explizit ein- und ausblenden. Zum Einblenden einer Men,- oder Symbolleiste kreuzen Sie das K!stchen in der Liste an. Zum Ausblenden leeren Sie das K!stchen neben dem Leistennamen.
Neue Symbolleisten anlegen Zur Anlage einer neuen Symbolleiste klicken Sie im Dialog Anpassen auf die Schaltfl!che Neu. Access Dffnet dann einen Dialog, der zur Eingabe eines Namens f,r die neue Symbolleiste auffordert. Nachdem Sie die Eingabe mit einem Klick auf die Schaltfl!che OK best!tigt haben, zeigt Access eine leere Symbolleiste auf der Arbeitsfl!che an. Außerdem finden Sie den neuen Namen jetzt in der Auflistung des Dialogs Anpassen.
Neue Symbolleiste
537
Eine Datenbank verwalten
Abb. 9.28 Neue Symbolleiste anlegen
Symbole hinzufgen Nachdem Sie eine neue Symbolleiste angelegt haben, m,ssen Sie ihr Schaltfl!chensymbole hinzuf,gen. Aktivieren Sie dazu im Dialog Anpassen das Register Befehle.
Abb. 9.29 Das Register Befehle
Das Register Befehle enth!lt eine Pbersicht aller Befehle, die Access f,r Men,- und Symbolleisten zur Verf,gung stellt. Um die Symbolleiste zu erweitern, gehen Sie wie folgt vor:
538
1
Markieren Sie zuerst eine Kategorie in der linken Liste.
2
Ziehen Sie einen Befehl aus der rechten Liste direkt in Ihre Symbolleiste.
Men- und Symbolleisten anpassen
3
Wenn Sie sp!ter auf das neue Symbol klicken, f,hrt Access direkt den entsprechenden Befehl aus.
4
Wiederholen Sie diesen Vorgang mit allen Befehlen, die Sie Ihrer Symbolleiste hinzuf,gen wollen.
Neben den ,blichen Men,befehlen sollten Sie auch die Kategorien Alle Tabellen, Alle Abfragen, Alle Formulare, Alle Berichte und Alle Makros beachten. Innerhalb dieser Kategorien stellt Access die Objekte Ihrer Datenbank als Symbole bereit. Ein Mausklick auf ein ,ber diese Kategorien entstandenes Symbol f,hrt sp!ter direkt zum Rffnen des entsprechenden Datenbankobjekts. Die Kategorie ActiveX-Steuerelemente enth!lt alle unter Access XP registrierten ActiveX-Steuerelemente. Mit den Befehlen dieser Kategorie kDnnen Sie beispielsweise eine eigene Toolbox f,r den Formularentwurf definieren. Das Register Befehle enth!lt einige Befehle, die sonst nicht ,ber die Men,s von Access verf,gbar sind. So finden Sie beispielsweise in der Kategorie Datens7tze den Befehl AutoW7hlen. Dieser Befehl startet den automatischen Telefonnummernw!hler von Access. Mit ihm kDnnen Sie – ein richtig angeschlossenes Modem vorausgesetzt – Telefonnummern direkt aus der Datenbank heraus w!hlen lassen. Dieses Beispiel zeigt, dass ein genauer Blick auf die Befehle aller Kategorien lohnenswert ist.
Datenbankobjekte
ActiveX-Steuerelemente
Hinweis
Ein Klick auf die Schaltfl!che Beschreibung zeigt eine kurze Erl!uterung zu dem aktuell markierten Befehl an. Tipp Statt nur die in Access vordefinierten Schaltfl!chensymbole und -befehle zu verwenden, kDnnen Sie auch Ihre eigenen definieren. Markieren Sie hierzu die Kategorie Datei und ziehen Sie den Befehl Benutzerdefiniert in Ihre Symbolleiste. Access zeigt innerhalb der Symbolleiste dann den Text Benutzerdefiniert an.
Benutzerdefinierte Schaltfl!chensymbole
Um die neue Schaltfl!che mit Leben zu f,llen, klicken Sie sie mit der rechten Maustaste an. Das sich Dffnende Kontextmen, enth!lt die Befehle, die Sie zur Bearbeitung des Schaltfl!chensymbols und weiterer Eigenschaften benDtigen. Diese Befehle werden im weiteren Verlauf dieses Abschnitts erl!utert. Statt den Befehl Benutzerdefiniert zu verwenden, kDnnen Sie auch einen vordefinierten Befehl in Ihre Symbolleiste ziehen und diesen nachtr!glich bearbeiten. In diesem Fall l!sst sich die Schaltfl!che jederzeit wieder in ihren urspr,nglichen Zustand versetzen, indem Sie den Befehl Zur1cksetzen aus dem Kontextmen, w!hlen. Bei benutzerdefinierten Schaltfl!chensymbolen ist dieser Befehl nicht verf,gbar.
Hinweis
539
Eine Datenbank verwalten
Neue Menleisten anlegen Zur Anlage einer neuen Men,leiste legen Sie zuerst eine neue Symbolleiste an (Siehe Abbildung 9.28). Markieren Sie die Symbolleiste dann im Register Symbolleisten und klicken Sie auf die Schaltfl!che Eigenschaften.
Abb. 9.30 Neue Men leiste anlegen
Der Dialog Symbolleisten-Eigenschaften enth!lt unter anderem das Kombinationsfeld Typ. Um die Symbol- in eine Men,leiste umzuwandeln, w!hlen Sie den Eintrag Men1leiste aus der Liste.
Befehle hinzuf gen
Unterschiede zwischen Men und Symbolleisten
Befehle als Text anzeigen
Da Access Men,- und Symbolleisten gleich behandelt, ist auch die Technik zum Hinzuf,gen von Befehlen zu einer Men,leiste die gleiche wie bei Symbolleisten. Weitere Hinweise hierzu finden Sie weiter oben in diesem Abschnitt. Bei allen 0hnlichkeiten gibt es aber doch zwei Unterschiede zwischen Men,- und Symbolleisten. In Men,leisten ist es ,blich, keine Symbole sondern Texte anzuzeigen. Außerdem verf,gen Men,leisten in der Regel ,ber Pulldown-Men,s. Ein Mausklick auf eines dieser Men,s f,hrt zur Anzeige einer Liste von weiteren Befehlen. Sie kennen das von Ihrer Arbeit mit Access und anderen Windows-Anwendungen. Um nun einen Befehl als Text anzuzeigen, klicken Sie mit der rechten Maustaste auf ein Symbol Ihrer Men,leiste. Je nachdem, welche Einstellung Sie w,nschen, w!hlen Sie einen der Befehle Nur Text (immer) oder Schaltfl7chensymbol und Text aus dem Kontextmen,. Wiederholen Sie diesen Vorgang f,r alle Befehle, deren Einstellungen Sie !ndern wollen. Statt die Eigenschaften ,ber das Kontextmen, zu ver!ndern, kDnnen Sie auch auf die Schaltfl!che Auswahl 7ndern des Dialogs Anpassen klicken. Diese Schaltfl!che Dffnet eine Liste mit den gleichen Befehlen, wie sie das Kontextmen, enth!lt. Die Befehle wirken sich stets auf das Symbol aus, das Access durch einen schwarzen Rahmen markiert.
540
Men- und Symbolleisten anpassen
Abb. 9.31 Die Schaltfl!che Auswahl (ndern
Men,leisten enthalten im Unterschied zu Symbolleisten oft so genannte PulldownMen,s. Um einer Men,leiste ein neues Pulldown-Men, hinzuzuf,gen, gehen Sie wie folgt vor: 1
Klicken Sie im Dialog Anpassen auf das Register Befehle.
2
Markieren Sie die Kategorie Neues Men1.
3
Ziehen Sie den Befehl Neues Men1 aus der rechten Liste in Ihre Men,leiste.
Nachdem Sie Ihrer Symbolleiste ein neues Pulldown-Men, hinzugef,gt haben, m,ssen Sie dieses beschriften. Klicken Sie mit der rechten Maustaste auf das Symbol, damit Access das Kontextmen, Dffnet. Klicken Sie dann in das Eingabefeld Name und geben Sie einen Namen ein.
Neue PulldownMen s hinzuf gen
Pulldown-Men beschriften
Markieren Sie einen Buchstaben mit dem kaufm!nnischen Und-Zeichen (&), damit dieser sp!ter unterstrichen angezeigt wird. Das Bet!tigen der A-Taste zusammen mit diesem Buchstaben erleichtert sp!ter die Auswahl des Pulldown-Men,s ,ber die Tastatur. Da Access Men,- und Symbolleisten gleich behandelt, kDnnen Sie Pulldown-Men,s nicht nur in Men,-, sondern auch in Symbolleisten anordnen. Unter Windows ist es jedoch ,blich, Pulldown-Men,s nur in Men,leisten anzuordnen.
Hinweis 541
Eine Datenbank verwalten
Abb. 9.32 Der Befehl Neues Men3
Abb. 9.33 Pulldown-Men beschriften
Befehle zum Pulldown-Men hinzuf gen
542
Das Hinzuf,gen eines Befehls zu einem Pulldown-Men, erfolgt genauso wie bei Men,- und Symbolleisten. Ziehen Sie den Befehl einfach aus dem Register Befehle in das Pulldown-Men,.
Men- und Symbolleisten anpassen
Abb. 9.34 Befehle zu einem Pulldown-Men hinzuf gen
Nachdem Sie Ihre Men,leiste fertiggestellt haben, m,ssen Sie sie noch einbinden. Sie erreichen dies ,ber die Eigenschaft Men1leiste, die Sie im mit Extras > Start geDffneten Dialog und im Eigenschaftenfenster von Formularen finden.
Men s einbinden
Neue Kontextmens anlegen Zur Anlage eines neuen Kontextmen,s legen Sie zun!chst, wie weiter oben in diesem Abschnitt beschrieben, eine Symbolleiste an. Markieren Sie die Symbolleiste dann im Register Symbolleisten und klicken Sie auf die Schaltfl!che Eigenschaften. W!hlen Sie in dem sich Dffnenden Dialog Symbolleisten-Eigenschaften den Eintrag Popup aus dem Kombinationsfeld Typ. Access zeigt dann eine ausf,hrliche Meldung an, die die wichtigsten Besonderheiten von Kontextmen,s beschreibt. Um das Kontextmen, zu bearbeiten, gehen Sie wie folgt vor: 1
Klicken Sie im Dialog Symbolleisten-Eigenschaften auf die Schaltfl!che Schließen.
2
Klicken Sie im Dialog Anpassen auf das Register Symbolleisten.
3
Suchen Sie den Eintrag Kontextmen1.
4
Kreuzen Sie das K!stchen vor diesem Eintrag an.
Das Ankreuzen der Symbolleiste Kontextmen1 f,hrt dazu, dass Access eine ganz besondere Symbolleiste einblendet. Diese Symbolleiste enth!lt alle unter Access vordefinierten Kontextmen,s. Durch einen Mausklick auf den Eintrag Anpassen Dffnen Sie ein Pulldown-Men,, das die benutzerdefinierten Kontextmen,s einth!lt. 543
Eine Datenbank verwalten
Abb. 9.35 Die Symbolleiste Kontextmen3
Befehle zu einem Kontextmen hinzuf gen Kontextmen lschen
Dieses Kontextmen, kDnnen Sie nun wie gewohnt mit Befehlen ausstatten. Ziehen Sie die gew,nschten Befehle einfach aus dem gleichnamigen Register in das Pulldown-Men,. Access zeigt Kontextmen,s im Unterschied zu Men,- und Symbolleisten nicht in der Auflistung des Registers Symbolleisten im Dialog Anpassen an. Das LDschen eines Kontextmen,s ist daher etwas komplizierter, als Sie vielleicht erwarten. Wenn Sie ein Kontextmen, lDschen wollen, gehen Sie wie folgt vor: 1
Klicken Sie im Dialog Anpassen auf das Register Symbolleisten.
2
Klicken Sie auf die Schaltfl!che Eigenschaften.
3
W!hlen Sie das gew,nschte Kontextmen, im Dialog Symbolleisten-Eigenschaften aus dem Kombinationsfeld Ausgew7hlte Symbolleiste.
4
0ndern Sie die Eigenschaft Typ auf Symbolleiste.
5
Schließen Sie den Dialog Symbolleisten-Eigenschaften.
6
Markieren Sie Ihr ehemaliges Kontextmen, in der Auflistung.
7
Klicken Sie auf die Schaltfl!che L4schen.
Der Dialog Symbolleisten-Eigenschaften ist die einzige MDglichkeit, die Eigenschaften eines Kontextmen,s zu !ndern. Mit den oben beschriebenen Schritten !ndern Sie das Kontextmen, zun!chst in eine Symbolleiste, um es anschließend zu lDschen.
Kontextmen s einbinden
544
Das Einbinden von Kontextmen,s ist nur ,ber die Eigenschaft Kontextmen1leiste von Steuerelementen eines Formulars mDglich.
Men- und Symbolleisten anpassen
Abb. 9.36 Der Dialog Symbolleisten-Eigenschaften
Men- und Symbolleisten umbenennen Um eine Men,- oder Symbolleiste umzubenennen, gehen Sie wie folgt vor: 1
Markieren Sie die Men,- oder Symbolleiste im Register Symbolleisten des Dialogs Anpassen.
2
Klicken Sie auf die Schaltfl!che Umbenennen.
3
Geben Sie den neuen Namen ein.
Beachten Sie, dass sich vordefinierte Men,- und Symbolleisten von Access nicht umbenennen lassen.
Men- und Symbolleisten l&schen Um eine Men,- oder Symbolleiste zu lDschen, gehen Sie wie folgt vor: 1
Markieren Sie die Men,- oder Symbolleiste im Register Symbolleisten des Dialogs Anpassen.
2
Klicken Sie auf die Schaltfl!che L4schen.
Beachten Sie, dass sich vordefinierte Men,- und Symbolleisten von Access nicht lDschen lassen. Bevor Sie Kontextmen,s lDschen kDnnen, m,ssen Sie sie zuerst in eine Men,- oder Symbolleiste umwandeln. Weitere Hinweise hierzu finden Sie weiter oben in diesem Abschnitt unter der Pberschrift Neue Kontextmen1s anlegen.
545
Eine Datenbank verwalten
Eigenschaften von Men- und Symbolleisten Um die Eigenschaften einer Men,- oder Symbolleiste zu !ndern, gehen Sie wie folgt vor: 1
Markieren Sie die Men,- oder Symbolleiste im Register Symbolleisten des Dialogs Anpassen.
2
Klicken Sie auf die Schaltfl!che Eigenschaften.
Abb. 9.37 Eigenschaften von Men - und Symbolleisten
Ausgew(hlte Symbolleiste
Symbolleistenname
Das Kombinationsfeld Ausgew7hlte Symbolleiste zeigt eine Liste mit allen vor- und benutzerdefinierten Men,- und Symbolleisten. Diese Liste enth!lt im Unterschied zum Register Symbolleisten des Dialogs Anpassen auch Kontextmen,s. Ein weiterer Unterschied besteht darin, dass diese Liste alphabetisch nach Namen sortiert ist. Die innerhalb des Dialogs angezeigten Eigenschaften betreffen stets die Symbolleiste, deren Name gerade innerhalb des Kombinationsfeldes angezeigt wird. Die Eigenschaft Symbolleistenname kDnnen Sie nur bei benutzerdefinierten Symbolleisten !ndern. Access zeigt den Namen innerhalb der Titelleiste an, w!hrend sich die Symbolleiste im schwebenden Zustand befindet bzw. nicht angedockt ist. Pber das Kombinationsfeld Typ kDnnen Sie eine Symbolleiste in eine Men,leiste oder ein Kontextmen, !ndern. Der Typ l!sst sich nur f,r benutzerdefinierte Symbolleisten !ndern. Weitere Hinweise zu den Besonderheiten von Men,leisten und Kontextmen,s finden Sie weiter oben in diesem Abschnitt unter den Pberschriften Neue Men1leisten anlegen und Neue Kontextmen1s anlegen.
Typ
Andocken
546
Mit der Auswahl eines der Eintr!ge Alle zulassen, Es kann nicht ge7ndert werden, Nicht vertikal und Nicht horizontal aus dem Kombinationsfeld Andocken bestimmen Sie, ob und wie sich die Symbolleiste am Rand des Access-Fensters andocken l!sst.
Men- und Symbolleisten anpassen
Die Eigenschaft In Symbolleistenmen1 anzeigen kDnnen Sie nur bei benutzerdefinierten Symbolleisten !ndern. Kreuzen Sie das gleichnamige Kontrollk!stchen an, wenn Access die Symbolleiste in der Liste des Befehls Ansicht/Symbolleisten und im Kontextmen, von Symbolleisten anzeigen soll.
In Symbolleistenmen3 anzeigen
Wenn Sie das Kontrollk!stchen Anpassen zulassen leeren, l!sst sich die aktuelle Symbolleiste nicht mehr ver!ndern. Um 0nderungen an der Symbolleiste vornehmen zu kDnnen, m,ssen Sie das Kontrollk!stchen erst wieder ankreuzen.
Anpassen zulassen
Der Anwender kann die GrDße schwebender Symbolleisten mit der Maus ver!ndern. Wenn Sie dies verhindern wollen, leeren Sie das Kontrollk!stchen Gr4ßenanpassung zulassen. Wenn Sie das Kontrollk!stchen Verschieben zulassen leeren, l!sst sich die Symbolleiste nicht mehr auf der Arbeitsfl!che verschieben. Um das Ein- und Ausblenden einer Symbolleiste zu verhindern, leeren Sie das Kontrollk!stchen Einblenden/Ausblenden zulassen. Die Schaltfl!che Standardeinstellungen wiederherstellen ist nur f,r die von Access vordefinierten Men,- und Symbolleisten verf,gbar. Ein Klick auf diese Schaltfl!che stellt die in Access vordefinierten Eigenschaften f,r die ausgew!hlte Symbolleiste wieder her.
Gr-ßenanpassung zulassen
Verschieben zulassen Einblenden/ Ausblenden zulassen Standardeinstellungen wiederherstellen
Optionen fr Men- und Symbolleisten Die Einstellungen des Registers Optionen im Dialog Anpassen wirken sich auf alle Men,- und Symbolleisten von Access und der anderen in Office XP enthaltenen Anwendungsprogramme aus. Die folgenden Abschnitte beschreiben die vier Optionen dieses Dialogs. Das Ankreuzen des Kontrollk!stchens Große Symbole bewirkt, dass Access alle Schaltfl!chensymbole vergrDßert anzeigt. Diese Einstellung ist vor allem f,r Bildschirme mit hohen AuflDsungen (grDßer als 1024 x 768 Bildpunkte) empfehlenswert. Diese Option ist vorrangig f,r Benutzer der Textverarbeitung Word XP interessant, erf,llt aber auch in Access seinen Zweck. Bei aktivierter Option werden die Eintr!ge des Kombinationsfeldes, in dem die zur Verf,gung stehenden Schriftarten dargestellt werden, direkt in der eigenen Schriftart angezeigt. Es ist nun nicht mehr notwendig, mehrere Schriftarten zu testen, um eine geeignete Wahl z.B. f,r die Schriftart in einem Steuerelement zu treffen. Kreuzen Sie dieses Kontrollk!stchen an, damit Access QuickInfos zu Symbolleisten anzeigt. QuickInfos erscheinen immer dann, wenn der Mauszeiger auf einem Symbol verweilt. Den anzuzeigenden Text kDnnen Sie ,ber die Eigenschaft QuickInfo eines Symbols selbst bestimmen.
Große Symbole
Schriftartennamen in Schriftart anzeigen
QuickInfo auf Symbolleisten anzeigen
547
Eine Datenbank verwalten
Abb. 9.38 Das Register Optionen
Tastenkombinationen in QuickInfo anzeigen
Men -Animationen
Wenn die Option Tastenkombinationen in QuickInfo anzeigen angekreuzt ist, erg!nzt Access den QuickInfo-Text einiger Symbole um eine Tastenkombination. So werden beispielsweise bei den Symbolen Ausschneiden (Sx), Einf1gen (Sv) und Kopieren (Sc) jeweils die Tastenkombinationen zur Auswahl dieser Befehle erg!nzt. Der Standardwert f,r die Option Men1-Animation ist Kekne. Bei dieser Einstellung klappt Access Pulldown-Men,s einfach herunter. Wenn Sie einen der Werte Abrollen, Entfalten oder Abwechselnd ausw!hlen, animiert Access das Aufklappen der Men,s.
Schaltfl%chensymbole bearbeiten Befehle als Text oder Grafik anzeigen
Hinweis
548
Access zeigt Befehle innerhalb von Men,- und Symbolleisten als Text, als Symbol oder beides an. Die Art und Weise der Anzeige kDnnen Sie ,ber die Kontextmen,befehle Standard, Nur Text (immer), Nur Text (in Men1s) und Schaltfl7chensymbol und Text f,r jedes Symbol individuell einstellen. Das Kontextmen, eines Symbols ist nur verf,gbar, wenn Sie vorher den Dialog Anpassen geDffnet haben. Wenn sich das Kontextmen, eines Schaltfl!chensymbols nicht Dffnen l!sst, dann haben Sie wahrscheinlich die Eigenschaft Anpassen zulassen der entsprechenden Men,- oder Symbolleiste ausgeschaltet. Weitere Hinweise zu dieser Eigenschaft finden Sie weiter oben in diesem Abschnitt unter der Pberschrift Eigenschaften von Men1- und Symbolleisten.
Men- und Symbolleisten anpassen
Abb. 9.39 Das Kontextmen von Symbolen
Das Kontextmen, eines Symbols enth!lt f,nf Befehle, mit denen Sie Schaltfl!chensymbole bearbeiten kDnnen. Mit dem Befehl Schaltfl7chensymbol kopieren kopieren Sie das Symbol in die Zwischenablage von Windows. Pber den Befehl Schaltfl7chensymbol einf1gen f,gen Sie den Inhalt der Zwischenablage als Bild f,r das aktuelle Symbol ein. Dieser Befehl eignet sich beispielsweise zur Pbernahme eines Bildes, das Sie zuvor mit einem Grafikprogramm erstellt haben. Mit dem Befehl Schaltfl7chensymbol zur1cksetzen versetzen Sie das Bild des aktuellen Symbols wieder in seinen urspr,nglichen Zustand.
Schaltfl(chensymbole kopieren
Schaltfl(chensymbole einf3gen
Schaltfl(chensymbol zur3cksetzen
Der Befehl Schaltfl7chensymbol bearbeiten Dffnet den Schaltfl!chen-Editor von Access. Mit diesem Editor kDnnen Sie Ihre eigenen Bilder f,r Schaltfl!chensymbole zeichnen und bestehende Bilder ver!ndern. Bevor Sie mit einem neuen Bild beginnen, sollten Sie auf die Schaltfl!che L4schen klicken.
Schaltfl(chensymbol bearbeiten
Mit dem Befehl Schaltfl7chensymbol 7ndern Dffnen Sie eine Auswahlliste mit weiteren in Access enthaltenen Bildern f,r Schaltfl!chensymbole. Wenn Sie eines dieser Bilder anklicken, zeigt Access es anschließend als Symbol f,r die aktuelle Schaltfl!che an.
Schaltfl(chensymbol (ndern
Wenn Sie mit der Bearbeitung eines Schaltfl!chensymbols nicht zufrieden sind, wollen Sie es mDglicherweise in seinen urspr,nglichen Zustand versetzen. W!hlen Sie in diesem Fall den Befehl Zur1cksetzen aus dem Kontextmen,.
Zur3cksetzen
549
Eine Datenbank verwalten
Abb. 9.40 Der Schaltfl!chen-Editor von Access
Abb. 9.41 Weitere Schaltfl!chensymbole von Access
Dieser Befehl ist nur f,r die Schaltfl!chensymbole verf,gbar, die auf der Basis der von Access vordefinierten Befehle entstanden sind. Ist ein Symbol ,ber den Befehl Benutzerdefiniert entstanden, l!sst sich der Kontextmen,befehl Zur1cksetzen nicht ausw!hlen.
Schaltfl%chensymbole l&schen Um ein Schaltfl!chensymbol aus der Symbolleiste zu entfernen, w!hlen Sie den Befehl L4schen aus dem Kontextmen,. Alternativ kDnnen Sie das Symbol auch mit der Maus auf einen leeren Bereich der Arbeitsfl!che ziehen.
Den Namen eines Schaltfl%chensymbols %ndern Access verwendet den Namen eines Schaltfl!chensymbols gleichzeitig als Beschriftung, wenn das Symbol als Text angezeigt wird. Um ihn zu !ndern, geben Sie den neuen Namen direkt in die Eigenschaft Name ein. 550
Men- und Symbolleisten anpassen
Verwenden Sie gegebenenfalls das kaufm!nnische Und-Zeichen (&), damit Access einen Buchstaben des Namens unterstrichen anzeigt. Das Schaltfl!chensymbol l!sst sich dann sp!ter auch ,ber die gleichzeitige Bet!tigung der A-Taste und des markierten Buchstabens ausw!hlen.
Schaltfl%chensymbole gruppieren Sie steigern die Pbersichtlichkeit Ihrer Symbolleisten, wenn Sie sinngem!ß zusammengehDrende Schaltfl!chensymbole gruppieren. Mit dem Markieren der Option Gruppierung beginnen f,gen Sie vor dem aktuellen Symbol eine Trennlinie ein. Die Gruppierung erfolgt lediglich visuell und hat ansonsten keine weiteren Auswirkungen. Um die Gruppierung aufzuheben, markieren Sie erneut die Option Markieren im Kontextmen, des Symbols, welches sich rechts von der Trennlinie befindet.
Eigenschaften von Schaltfl%chensymbolen Mit der Auswahl des Befehls Eigenschaften aus dem Kontextmen, eines Schaltfl!chensymbols Dffnen Sie den Dialog Steuerelement-Eigenschaften. Dieser Dialog enth!lt einige Eigenschaften, die im Kontextmen, nicht enthalten sind.
Abb. 9.42 Der Dialog Steuerelement-Eigenschaften
Mit dem Kombinationsfeld Ausgew7hltes Steuerelement w!hlen Sie das Schaltfl!chensymbol aus, dessen Eigenschaften Sie ver!ndern wollen. Die Eigenschaft Beschriftung entspricht dem Befehl Name im Kontextmen,. Weiter Hinweise hierzu finden Sie weiter oben in diesem Abschnitt unter der Pberschrift Den Namen eines Schaltfl7chensymbols 7ndern.
Ausgew(hltes Steuerelement Beschriftung
551
Eine Datenbank verwalten
Verkn3pfungstext
Access zeigt den Verkn,pfungstext in Men,leisten neben dem Men,namen an. Geben Sie in diese Eigenschaft die Tastenkombination (z.B. S+o) ein, ,ber die sich der Befehl per Tastatur ausw!hlen l!sst.
QuickInfo
Access zeigt den QuickInfo-Text an, wenn der Mauszeiger auf dem Schaltfl!chensymbol verweilt. Wenn Sie diese Eigenschaft leer lassen, zeigt Access automatisch den Text der Eigenschaft Beschriftung an.
Bei Aktion
Geben Sie in die Eigenschaft Bei Aktion einen VBA-Funktionsaufruf oder einen Makro-Namen ein. Access f,hrt die Funktion oder das Makro aus, wenn der Anwender auf das Schaltfl!chensymbol klickt oder den Men,befehl ausw!hlt. Die Syntax zur Eingabe solcher Aktionen ist die gleiche wie in den Ereignis-Eigenschaften von Steuerelementen in Formularen. Weitere Hinweise zum Formularentwurf finden Sie in Kapitel 6 Formulare dieses Buchs. Das Kombinationsfeld Stil enth!lt die vier Listeneintr!ge Standard, Nur Text (immer), Nur Text (in Men1s) und Schaltfl7chensymbol und Text. Sie haben die gleiche Bedeutung wie die gleichnamigen Befehle des Kontextmen,s eines Schaltfl!chensymbols. Weitere Hinweise zu diesem Thema finden Sie weiter oben in diesem Abschnitt unter der Pberschrift Schaltfl7chensymbole bearbeiten.
Stil
Hilfedatei und HilfeKontextID
Mit den Eigenschaften Hilfedatei und Hilfe-KontextID kDnnen Sie eine Hilfedatei f,r das Schaltfl!chensymbol und eine Position innerhalb der Hilfedatei angeben.
Parameter
Mit der Eigenschaft Parameter kDnnen Sie Parameter an die VBA-Funktion ,bergeben, die Sie in der Eigenschaft Bei Aktion angegeben haben.
Marke
Mit der Eigenschaft Marke kDnnen Sie eine Zeichenkette angeben, die von einem VBA-Programm ausgewertet werden kann.
Eine Gruppe beginnen
Das Kontrollk!stchen Eine Gruppe beginnen hat die gleiche Bedeutung wie der Befehl Gruppierung beginnen im Kontextmen, eines Schaltfl!chensymbols. Weitere Hinweise zu diesem Befehl finden Sie weiter oben in diesem Abschnitt unter der Pberschrift Schaltfl7chensymbole gruppieren.
Die Rechtschreibung von Daten /berpr/fen und korrigieren Access verf,gt ,ber eine Rechtschreibpr,fung, mit der Sie die Schreibweise der in der Datenbank gespeicherten Daten ,berpr,fen kDnnen. Mit der so genannten AutoKorrektur kDnnen Sie Korrekturen auch w!hrend der Dateneingabe durchf,hren lassen.
552
Die Rechtschreibung von Daten berprfen und korrigieren
Zu prfende Daten ausw%hlen Die Rechtschreibpr,fung eignet sich prinzipiell f,r alle Daten, ist aber nur bei Texten sinnvoll. Bevor Sie die Rechtschreibung von Daten pr,fen kDnnen, m,ssen Sie diese zun!chst ausw!hlen. Sie haben dazu folgende MDglichkeiten: Um die Rechtschreibung aller Datenfelder einer Tabelle oder Abfrage zu pr,fen, markieren Sie im Datenbankfenster eine Tabelle, eine Abfrage oder ein Formular. Um die Rechtschreibung eines oder mehrerer Datenfelder oder Datens!tze bzw. einer oder mehrerer Zellen zu pr,fen, Dffnen Sie die Datenblattansicht einer Tabelle, einer Abfrage oder eines Formulars und markieren eine oder mehrere Zellen, eine Spalte oder eine Zeile. Um die Rechtschreibpr,fung eines Datenfeldes zu pr,fen, markieren Sie es in der Formularansicht. Um die Rechtschreibpr,fung eines einzelnen Textes zu pr,fen, markieren Sie eine Zelle in der Datenblattansicht oder einen Text in der Formularansicht. Nachdem Sie die zu pr,fenden Daten ausgew!hlt haben, starten Sie die Rechtschreibpr,fung ,ber den Befehl Extras > Rechtschreibung oder einen Klick auf das gleichnamige Symbol. Access Dffnet dann den Dialog Rechtschreibung, wenn es auf das erste Wort stDsst, dessen Schreibweise nicht korrekt zu sein scheint.
Abb. 9.43 Die Rechtschreibpr fung von Access
Der Dialog enth!lt im Feld Nicht im W4rterbuch das wahrscheinlich falsch geschriebene Wort. Im Feld Vorschl7ge zeigt Access in der Regel einen 0nderungsvorschlag an, den Sie mit einem Klick auf die Schaltfl!che Tndern ,bernehmen kDnnen. Wenn Access keinen 0nderungsvorschlag anzeigt, m,ssen Sie das Wort im Feld Vorschl7ge manuell korrigieren und die 0nderung mit einem Klick auf die Schaltfl!che Tndern in den Text ,bernehmen.
&nderungsvorschlag
553
Eine Datenbank verwalten
Wrter zum Wrterbuch hinzuf gen
Wenn Sie den Text nicht oder nie !ndern wollen, klicken Sie auf die gleichnamigen Schaltfl!chen. Mit einem Klick auf die Schaltfl!che Hinzuf1gen f,gen Sie ein Wort dem aktuellen WDrterbuch hinzu. Access zeigt das aktuelle WDrterbuch im Kombinationsfeld W4rter hinzuf1gen zu an. Mit einem Klick auf die Schaltfl!che AutoKorrektur ,bernehmen Sie das fehlerhafte Wort und den 0nderungsvorschlag in die Liste der Wortpaare, die Access w!hrend der Eingabe automatisch ersetzt. Weitere Hinweise zur AutoKorrektur finden Sie weiter unten in diesem Kapitel. Wenn Sie einen der 0nderungsvorschl!ge in den Text ,bernehmen wollen, gen,gt ein Doppelklick auf den entsprechenden Eintrag. Wenn Sie die Korrektur eines Wortes abgeschlossen haben, setzt Access die Pr,fung des restlichen Textes fort. Wenn alle zu pr,fenden Daten korrigiert sind, zeigt Access eine entsprechende Meldung an.
W&rterbcher verwalten Im Dialog Rechtschreibung kDnnen Sie mit einem Klick auf die Schaltfl!che Hinzuf1gen ein nicht gefundenes Wort dem aktuellen WDrterbuch hinzuf,gen. Manchmal ist es sinnvoll, eigene WDrterb,cher f,r bestimmte Zwecke wie beispielsweise besondere Fachtermini anzulegen. Dazu geben Sie dessen Name einfach in das Kombinationsfeld W4rter hinzuf1gen zu im Optionen-Dialog ein.
Abb. 9.44 Neues Wrterbuch anlegen
Sie erreichen diesen Dialog ,ber das Men, Extras > Optionen und die Registerkarte Rechtschreibung oder, falls Sie die Rechtschreibpr,fung bereits gestartet haben, ,ber die Schaltfl!che Optionen. Access Dffnet dann einen Dialog, in dem Sie auf die Schaltfl!che Ja klicken. Access erstellt dann ein neues WDrterbuch. Wenn Sie ,ber mehrere WDrterb,cher verf,gen, kDnnen Sie sie ,ber das Kombinationsfeld ausw!hlen.
Sprache ausw%hlen Access pr,ft die Rechtschreibung standardm!ßig anhand eines deutschen WDrterbuchs. Um eine andere Sprache auszuw!hlen, klicken Sie im Dialog Rechtschreibung auf die Schaltfl!che Optionen.
554
Die Rechtschreibung von Daten berprfen und korrigieren
Abb. 9.45 Wrterbuch ausw!hlen
Der sich Dffnende Dialog verf,gt ,ber ein Kombinationsfeld, durch das Sie ein WDrterbuch einer anderen Sprache ausw!hlen kDnnen. Der Dialog enth!lt außerdem einige selbsterkl!rende Kontrollk!stchen, ,ber die Sie die Funktionsweise der Rechtschreibpr,fung einstellen kDnnen.
Texte w%hrend der Eingabe automatisch korrigieren Mit der so genannten AutoKorrektur von Access kDnnen Sie Texte w!hrend der Eingabe automatisch korrigieren lassen. Wenn Sie beispielsweise das Wort Beratung h!ufig mit einem Buchstabendreher als Beartung eingeben, kDnnen Sie Access anweisen, die erforderliche 0nderung w!hrend der Eingabe automatisch vorzunehmen. Sie erreichen dies, indem Sie wie folgt vorgehen: 1
Rffnen Sie mit dem Befehl Extras > AutoKorrektur den gleichnamigen Dialog.
2
Geben Sie das falsch geschriebene Wort Beartung in das Feld Ersetzen ein.
3
Geben Sie das richtig geschriebene Wort Beratung in das Feld Durch ein.
555
Eine Datenbank verwalten
4
Klicken Sie auf die Schaltfl!che Hinzuf1gen.
5
Klicken Sie auf die Schaltfl!che OK.
Wenn Sie jetzt in der Datenblatt- oder Formularansicht den Text Beartung in ein Feld eingeben, ersetzt Access ihn automatisch durch den Text Beratung
Abb. 9.46 Texte automatisch korrigieren
AutoKorrektur deaktivieren
Die AutoKorrektur von Access ist standardm!ßig aktiviert. Um sie zu deaktivieren, m,ssen Sie im Dialog AutoKorrektur alle Kontrollk!stchen leeren. Alternativ kDnnen Sie auch nur einzelne der Kontrollk!stchen ZWei Großbuchstaben am WOrtanfang korrigieren, Wochentage immer groß schreiben und W7hrend der Eingabe ersetzen ankreuzen. Im unteren Teil des Dialogs finden Sie eine Liste der WDrter, die Access w!hrend der Eingabe automatisch ersetzt. Sie kDnnen der Liste wie oben beschrieben neue Eintr!ge hinzuf,gen. Um einen Eintrag aus der Liste zu lDschen, markieren Sie ihn und klicken auf die Schaltfl!che L4schen.
Tipp
556
W!hrend der Rechtschreibpr,fung eines Textes kDnnen Sie fehlerhafte WDrter und deren Korrektur in die Liste der automatisch zu ersetzenden WDrter ,bernehmen. Bei einem Klick auf die Schaltfl!che AutoKorrektur ,bernimmt Access das fehlerhafte Wort aus Nicht in W4rterbuch in das Feld Ersetzen und den 0nderungsvorschlag aus dem Feld Tndern in in das Feld Durch.
Eine Datenbank sichern
Einstellungen f/r Seiten und internationale Einstellungen Zwei weitere Registerkarten im Optionen-Dialog bieten EinstellungsmDglichkeiten f,r Web-Seiten und f,r internationale Anpassungen. Auf der Registerkarte Seite kDnnen Sie die Darstellung f,r die Web-Seiten, die durch Access erstellt werden, regeln. Auf der Registerseite International kDnnen Sie Access-Datenbanken an internationale Gepflogenheiten anpassen. So l!sst sich z.B. ,ber die Aktivierung des Kontrollk!stchens von Hijri-Kalender verwenden Access an den islamischen Mondkalender anpassen.
Eine Datenbank sichern Access speichert alle Objekte einer Datenbank mit Ausnahme von Datenzugriffsseiten in einer einzigen Datei mit der Erweiterung .mdb (f,r englisch: Microsoft Database). Die Datenzugriffsseiten werden als HTML-Dateien abgespeichert. Außerdem speichert Access wichtige Einstellungen in der Arbeitsgruppendatei System.mdw. Sie finden diese Datei in dem Ordner, in den Sie Access installiert haben. Zum Sichern der Datenbank gen,gt das Sichern der .mdb-Datei. Wenn Sie zus!tzlich die Konfiguration von Access und die Einstellungen des Sicherheitssystems sichern wollen, dann sichern Sie auch die Datei System.mdw. Access kann ohne die Arbeitsgruppendatei System.mdw oder eine andere Arbeitsgruppe nicht gestartet werden. Solange Sie das Sicherheitssystem von Access nicht aktiviert haben, kDnnen Sie mit dem Arbeitsgruppen-Administrator jederzeit eine neue Arbeitsgruppe erstellen. Die Benutzung des Arbeitsgruppen-Administrators wird weiter unten in diesem Kapitel im Zusammenhang mit dem Sicherheitssystem erl!utert.
.mdb-Datei sichern
Tipp
Datenbanken enthalten manchmal lebenswichtige Daten eines Unternehmens. Sie brauchen sich nur einmal zu vergegenw!rtigen, wieviel Arbeit Sie bereits in die Entwicklung von Tabellen, Abfragen, Formularen, Berichten und mDglicherweise Makros und Modulen gesteckt haben. W!re es nicht schade, wenn all diese n,tzlichen Dinge und die damit verbundene Arbeit irgendwann einfach verloren w!ren? Sie sehen also, dass es sich lohnt, eine Datenbank regelm!ßig zu sichern. Der Aufwand daf,r ist im Vergleich zu der Arbeit, die in der Datenbank steckt, meistens relativ gering. Sie kDnnen das Sichern ,ber den Explorer von Windows relativ einfach bewerkstelligen, indem Sie die .mdb-Datei kopieren. Bei umfangreichen Datenbanken verwenden Sie das in Windows enthaltene Microsoft Backup oder ein anderes Datensicherungsprogramm. Um Microsoft Backup z.B. unter Windows 98 zu starten, w!hlen Sie den Befehl Start > Programme > Zubeh4r > Systemprogramme > Backup aus der Taskleiste von Windows.
557
Eine Datenbank verwalten
Abb. 9.47 Datensicherung mit Microsoft Backup
Die Gr,nde f,r den mDglichen Verlust einer Datenbank sind vielf!ltig. So kDnnte beispielsweise Ihre Festplatte durch einen Wasserschaden im B,ro zerstDrt werden. Oder ein Virus lDscht Ihre Datenbank. Oder ein bDser Kollege will Sie !rgern. Oder. Oder. Oder.
Hinweis
Tipp
Vertrauen Sie niemals Ihrem Computer-System! Sichern Sie Ihre Datenbank regelm!ßig und heben Sie die Datentr!ger mit der Datensicherung mDglichst an einem r!umlich vom Computer getrennten Platz auf. Sie sind gut beraten, die Datensicherung mit verschiedenen Generationen durchzuf,hren. Sichern Sie beispielsweise an geraden Tagen auf den ersten und an ungeraden Tagen auf den zweiten Datentr!gersatz. So kDnnen Sie auch dann noch auf eine Datensicherung zugreifen, wenn eine der beiden Sicherungsgenerationen fehlerhaft sein sollte.
Eine Datenbank konvertieren Access kennt unterschiedliche Datenbankformate. Das erste, heute nicht mehr aktuelle Format wurde von den Access-Versionen 1.0, 1.1, 2.0 und 7.0 (95) bereitgestellt. Die Versionen ab 8.0 (97) arbeiten dagegen mit einem neueren Format. Access 2000 brachte ein weiteres Format und mit Access XP gibt es eine zus!tzliche Variante.
558
Eine Datenbank konvertieren
Mit Access XP kDnnen Sie die Datenbanken !lterer Versionen zwar Dffnen und Daten bearbeiten, Sie haben jedoch keine MDglichkeit, die Datenbankobjekte zu !ndern. Das bedeutet, dass Sie keine 0nderungen an Tabellen-, Abfrage-, Formular-, Berichts-, Datenzugriffsseiten-, Makro- und Modulentw,rfen vornehmen kDnnen. Am universellsten arbeiten Sie derzeit, wenn Sie – auch mit Windows XP – das Access 2000 Datenformat verwenden. Konvertieren Sie die Datenbanken in das XPFormat erst dann, wenn Sie sicher sind, das alle Anwender mit diesem Format arbeiten kDnnen, d.h. auf Access XP (oder Office XP) umgestellt haben. Wenn Sie uneingeschr!nkten Zugriff auf Datenbanken !lterer Versionen haben wollen, dann m,ssen Sie sie mit dem Befehl Extras > Datenbank-Dienstprogramme > Datenbank konvertieren > In Access 2002-Dateiformat in das neue Format konvertieren. Gehen Sie wie folgt vor: 1
Schließen Sie alle offenen Datenbanken, damit nur das Startfenster von Access aktiv ist.
2
Stellen Sie sicher, dass in einer Mehrbenutzerumgebung kein anderer Benutzer die zu konvertierende Datenbank geDffnet hat.
3
Sie benDtigen die Schreiblegitimation f,r die zu konvertierende Datenbank.
4
Stellen Sie sicher, dass mindestens soviel Festplattenspeicher zur Verf,gung steht, wie eine Kopie der zu konvertierenden Datenbank benDtigt.
5
W!hlen Sie den Befehl Extras > Datenbank-Dienstprogramme > Datenbank konvertieren > In Access 2002-Dateiformat aus der Men,leiste.
6
W!hlen Sie die zu konvertierende Datenbank aus.
7
Klicken Sie auf die Schaltfl!che Konvertieren.
8
Geben Sie einen neuen Namen, einen neuen Ordner oder beides f,r die Zieldatenbank an.
9
Best!tigen Sie mit einem Klick auf die Schaltfl!che Speichern.
Sie kDnnen eine Datenbank nicht in sich selbst kopieren. Sie m,ssen daher unbedingt einen neuen Dateinamen, einen neuen Ordner oder beides angeben. Sie kommen auch schneller ans Ziel: 1
Rffnen Sie die Datenbank. Access erkennt automatisch, ob es sich um eine Datenbank einer !lteren Version handelt.
2
Im sich Dffnenden Dialogfeld Datenbank konvertieren/4ffnen w!hlen Sie die Option Datenbank konvertieren. 559
Eine Datenbank verwalten
3
Im Datei konvertieren in-Dialog w!hlen Sie den Pfad aus und geben einen neuen Dateinamen an.
4
Dia Datenbank wird nun konvertiert und in der neuen Version geDffnet.
Abb. 9.48 Datenbank konvertieren
Hinweis
Bis zur Version 8.0 (Access 97) war es nicht mDglich, einmal konvertierte Datenbanken wieder zur,ck in die urspr,ngliche Version zu konvertieren. Es musste daher im Mehrbenutzerbetrieb sichergestellt werden, dass alle Benutzer, die auf die konvertierte Datenbank zugreifen m,ssen, die aktuellste Version von Access installiert haben. Mit Access 2000 konnten Sie eine Datenbank zwar nicht in alle Formate, aber zumindest in das Format von Access 97 konvertieren. Dies gilt auch f,r die Version Access XP. Benutzen Sie dazu den Befehl Extras > Datenbank-Dienstprogramme > Datenbank konvertieren > In Access 2000-Dateiformat.
Eine Datenbank komprimieren W!hrend Ihrer Arbeit mit Access entwerfen und bearbeiten Sie wahrscheinlich oft neue Objekte wie Tabellen, Formulare, Abfragen, Berichte, Seiten, Makros und Module. Die 0nderungen an den gespeicherten Datens!tzen machen bestimmt noch mehr aus. Sie f,gen laufend neue Datens!tze ein, bearbeiten und lDschen sie wieder.
560
Eine Datenbank komprimieren
Access verwaltet alle Objekte der Datenbank – ausgenommen Datenzugriffsseiten – sowie die Daten selbst in der .mdb-Datei. Durch das Freigeben kleinerer und das Neubelegen grDßerer Speichereinheiten entstehen schließlich freie Speichereinheiten in der .mdb-Datei. Das liegt daran, dass Access versucht, die .mdb-Datei mDglichst effektiv zu verwalten. W,rde Access die Speicherl,cken der .mdb-Datei st!ndig auff,llen, w,rde die Verarbeitungsgeschwindigkeit sinken.
Speicherl cken
Dieser Effekt liegt ,brigens nicht in der Eigenart von Access begr,ndet, alle Objekte in einer Datei zu verwalten. Der gleiche Effekt tritt bei der Verwaltung von Dateien mit Windows ein. Dort helfen Defragmentierungsprogramme, wie beispielsweise die Festplattenoptimierung von Windows, das Problem zu beheben. Bei Access ist es der Befehl Extras > Datenbank-Dienstprogramme > Datenbank komprimieren und reparieren. Dieser Befehl bewirkt gleichzeitig die Reparieren einer Datenbank. Das Reparieren einer Datenbank wird weiter unten in diesem Kapitel beschrieben.
Abb. 9.49 Datenbank komprimieren
Der Befehl Extras > Datenbank-Dienstprogramme > Datenbank komprimieren und reparieren reorganisiert die .mdb-Datei und entfernt alle Speicherl,cken. Die .mdbDatei benDtigt anschließend weniger Festplattenspeicher. Das f,hrt zu einer Steigerung der Arbeitsgeschwindigkeit beim Zugriff auf die Datenbank. Sie sollten das Komprimieren von Datenbanken daher ebenso regelm!ßig durchf,hren wie die Datensicherung.
561
Eine Datenbank verwalten
Voraussetzungen f r das Komprimieren
In einer Mehrbenutzerumgebung m,ssen Sie sicherstellen, dass kein anderer Benutzer die Datenbank geDffnet hat. Außerdem benDtigen Sie die Schreiblegitimation f,r die Datenbank. Access erstellt w!hrend des Komprimierens eine Kopie der Datenbank. Stellen Sie daher sicher, dass gen,gend Festplattenspeicher verf,gbar ist.
Hinweis
Da beim Komprimieren recht umfangreiche 0nderungen an der physikalisch gespeicherten Datenbank vorgenommen werden, sollten Sie die .mdb-Datei vorher sichern. Hinweise zum Sichern von Datenbanken finden Sie weiter oben in diesem Kapitel. Im Gegensatz zu fr,heren Access-Versionen kann Access seit Version 8 (Access 97) auch geDffnete Datenbanken komprimieren. Gleiches gilt auch f,r das Reparieren einer Access-Datenbank. W!hlen Sie den Befehl Extras > Datenbank-Dienstprogramme > Datenbank komprimieren und reparieren. Ist bereits eine Datenbank geladen, wird diese sofort ohne weitere Schritte komprimiert.
Hinweis
Dadurch, dass Access XP eine geDffnete Datenbank komprimieren kann, l!sst sich das Komprimieren jetzt in die Datenbank einbinden, sei es als Men,punkt oder mittels einer VBA-Prozedur. Ist keine Datenbank geDffnet, zeigt Access den Dialog Datenbank komprimieren an. W!hlen Sie eine Datenbank aus dem Dialog und klicken Sie auf Komprimieren.
Datenbank komprimieren nach
Der folgende Dialog Datenbank komprimieren nach fragt nach dem Namen f,r die komprimierte neue Datenbank. Geben Sie einen neuen Namen oder den bisherigen Namen der Datenbank ein. Datenbanknamen m,ssen den Konventionen von DOS entsprechen. Wenn Sie den bisherigen Datenbanknamen eingeben, komprimiert Access zun!chst in eine tempor!re Datei, die dann sp!ter umbenannt wird. So ist relativ sicher gew!hrleistet, dass die Datenbank selbst bei Systemabst,rzen w!hrend des Komprimierens nicht verloren geht.
Tipp
562
Bei umfangreichen Datenbanken kann das Komprimieren viel Zeit in Anspruch nehmen. Da das Komprimieren selbstst!ndig abl!uft, sollten Sie den Prozess vor der Mittagspause oder auch erst zum Feierabend starten. Sie finden dann am n!chsten Morgen eine frisch komprimierte Datenbank vor und haben praktisch keine Zeit investiert.
Eine Datenbank reparieren
Eine Datenbank reparieren Das optimale Verfahren zum Wiederherstellen einer Datenbank richtet sich nach der Art des Fehlers, der die Datenbank besch!digt hat. Wurde Access oder Windows unerwartet abgebrochen (Systemabsturz), lassen sich Fehler an einer Datenbank meistens problemlos beheben. Nach einem Festplattenfehler, der die Datenbank betrifft, sollten Sie nach der Reparatur der Festplatte besser die letzte Datensicherung wieder einspielen.
Wiederherstellen nach einem Abbruch von Access Beim ordnungsgem!ßen Schließen von Access wird die offene Datenbank automatisch gespeichert und geschlossen. Wird Access jedoch durch einen Systemabsturz unerwartet abgebrochen, kann die offene Datenbank h!ufig nicht mehr aktualisiert und geschlossen werden. Dadurch entstehen manchmal Fehler in der Datenbank, die sich jedoch beheben lassen. W!hlen Sie den Befehl Extras > Datenbank-Dienstprogramme > Datenbank Komprimieren und reparieren aus der Men,leiste, so dass Access den gleichnamigen Dialog anzeigt. W!hlen Sie dann die zu reparierende Datenbank aus der Auswahlliste und klicken Sie auf OK. Seit Access 97 kDnnen im Gegensatz zu fr,heren Access-Versionen auch geDffnete Datenbanken repariert werden. Dadurch l!sst sich das Reparieren jetzt in die Datenbank einbinden, sei es als Men,punkt oder mittels einer VBA-Prozedur.
Datenbank reparieren
Hinweis
Es vergeht einige Zeit, bis Access das Reparieren der Datenbank beendet hat. Am Ende des Prozesses meldet es, ob die Reparatur erfolgreich war. Bei einer erfolgreichen Reparatur m,ssen Sie selbst nachpr,fen, ob die zuletzt eingegebenen Daten noch vor dem Systemabsturz in der Datenbank gespeichert werden konnten. Holen Sie die Eingabe gegebenenfalls nach. Wenn Access die Reparatur nicht erfolgreich durchf,hren kann, dann m,ssen Sie die letzte Datensicherung einspielen und alle Eingaben nachholen, die Sie seit der letzten Datensicherung vorgenommen haben. Dies betrifft auch alle 0nderungen an den Objekten der Datenbank.
Hinweis
Wiederherstellen nach einem Festplattenfehler Sofern ein Festplattenfehler auftritt und dadurch eine Datenbank besch!digt wird, sollten Sie den Festplattenfehler zun!chst beheben. Sie verwenden dazu am besten die einschl!gigen Hilfsprogramme von Windows oder von Drittherstellern. Wenn Sie Gl,ck haben, kann beispielsweise das Festplatten,berpr,fungs-Programm ScanDisk von Windows den Festplattenfehler beheben und die Datenbank rekonstruieren. Um ScanDisk zu starten, w!hlen Sie den Befehl Start > Programme > Zubeh4r > Systemprogramme > ScanDisk aus der Taskleiste von Windows. 563
Eine Datenbank verwalten
Abb. 9.50 Festplatte mit ScanDisk
berpr fen
Weit h!ufiger kann zwar der Festplattenfehler behoben, nicht aber die besch!digte Datenbank rekonstruiert werden. In diesem Fall m,ssen Sie die letzte Datensicherung wieder einspielen und alle Eingaben nachholen, die Sie seit der letzten Datensicherung vorgenommen haben. Dies betrifft auch alle 0nderungen an den Objekten der Datenbank.
Wiederherstellen der Systemdatenbank Die so genannte Systemdatenbank oder Arbeitsgruppendatei speichert wichtige Informationen von Access. Dazu z!hlen beispielsweise die Optionen von Access sowie die angelegten Benutzernamen, Benutzergruppen und KennwDrter. Sie finden die Datei System.mdw in dem Ordner, in den Sie Access installiert haben.
Hinweis
Access kann ohne die Arbeitsgruppendatei System.mdw oder eine andere Arbeitsgruppe nicht gestartet werden. Solange Sie das Sicherheitssystem von Access nicht aktiviert haben, kDnnen Sie mit dem Arbeitsgruppen-Administrator jederzeit eine neue Arbeitsgruppe erstellen. Die Benutzung des Arbeitsgruppen-Administrators wird weiter unten in diesem Kapitel im Zusammenhang mit dem Sicherheitssystem erl!utert. Wenn das Sicherheitssystem aktiviert ist, sollten Sie die letzte Datensicherung der Systemdatenbank einspielen und alle 0nderungen an Benutzernamen, Benutzergruppen und KennwDrtern nachholen. Wenn Sie ,ber keine Sicherung der Systemdatenbank verf,gen, dann m,ssen Sie eine neue Arbeitsgruppe erstellen und die Definition von Benutzernamen, Benutzergruppen und KennwDrtern erneut vornehmen.
564
Eine Datenbank ver- und entschlsseln
Eine Datenbank ver- und entschl/sseln Gerade beim Transport von Datenbanken ist nicht immer auszuschließen, dass der Datentr!ger (meist eine Diskette, ein Band, eine Wechselplatte oder ein magnetooptischer Datentr!ger) verloren geht. Sie sollten eine Datenbank daher vor dem Transport verschl,sseln.
Datenbank transportieren
Das Verschl,sseln bewirkt, dass die Datenbank zwar weiterhin von Access, aber nicht von Fremdprogrammen gelesen werden kann. So ist das Einsehen der Daten mit irgendwelchen Editoren oder Tools ausgeschlossen. Um eine Datenbank zu verschl,sseln, m,ssen die gleichen Voraussetzungen erf,llt sein wie beim Komprimieren der Datenbank. Sie sollten daher vorher das Datenbankfenster schließen und sicherstellen, dass kein anderer Benutzer die Datenbank geDffnet hat. Das Verschl,sseln nimmt !hnlich umfangreiche 0nderungen an der physikalisch auf der Festplatte gespeicherten Datenbank vor wie das Komprimieren. Sie sollten die Datenbank daher vor dem Verschl,sseln zun!chst sichern. W!hlen Sie dann den Befehl Extras > Sicherheit > Datenbank ver-/entschl1sseln, damit Access den gleichnamigen Dialog anzeigt. W!hlen Sie nun eine der aufgef,hrten Datenbanken aus und klicken Sie auf OK.
Datenbank verschl sseln
Abb. 9.51 Datenbank ver- und entschl sseln
Der folgende Dialog Datenbank verschl1sseln als fragt nach einem Namen f,r die verschl,sselte Datenbank. Geben Sie einen neuen oder den bisherigen Datenbanknamen ein. Datenbanknamen m,ssen den Konventionen von Windows entsprechen.
Datenbank verschl3sseln als
565
Eine Datenbank verwalten
Tempor!re Datei
Wenn Sie den bisherigen Datenbanknamen eingeben, verschl,sselt Access zun!chst in eine tempor!re Datei, die dann sp!ter umbenannt wird. So ist hDchstmDgliche Sicherheit gew!hrleistet.
Datenbank entschl sseln
Das Entschl,sseln einer Datenbank erfolgt ebenfalls ,ber den Befehl Extras > Zugriffsrechte > Datenbank ver-/entschl1sseln. Access erkennt bereits verschl,sselte Datenbanken automatisch und enschl,sselt sie. Access zeigt in der Statuszeile an, ob die Datenbank gerade ver- oder entschl,sselt wird.
Hinweis
Tipp
Access komprimiert die Datenbank gleichzeitig mit dem Verschl,sseln. Dieser Prozess nimmt bei umfangreichen Tabellen mitunter sehr viel Zeit in Anspruch. Hinweise zum Komprimieren einer Datenbank, ohne sie zu verschl,sseln, finden Sie weiter oben in diesem Kapitel. Beachten Sie, dass das Verschl,sseln einer Datenbank noch keinen hundertprozentigen Schutz vor Missbrauch bietet. Das Verschl,sseln gew!hrleistet lediglich, dass die Datenbank nicht mit Fremdprogrammen wie Editoren oder Tools gelesen werden kann. Eine verschl,sselte Datenbank kann jedoch weiterhin mit Access gelesen werden. Weiter unten in diesem Kapitel finden Sie den Abschnitt Eine bestehende Datenbank nachtr7glich sch1tzen, der ein Beispiel f,r den hundertprozentigen Schutz einer Datenbank beschreibt.
Eine Datenbank sch/tzen Datenbank-Kennwort vergeben
.mde-Dateien
Das Sicherheitssystem von Access
566
Access stellt vier Verfahren zur Verf,gung, mit denen Sie Ihre Datenbanken gegen unberechtigten Zugriff sch,tzen kDnnen. Das einfachste Verfahren ist die Vergabe eines Kennworts f,r Ihre Datenbank. Sie erreichen damit, dass nur die Benutzer Ihre Datenbank Dffnen kDnnen, die das Kennwort kennen. Dieses Verfahren eignet sich daher f,r den Schutz von Datenbanken, die nur von einem oder einer kleinen Gruppe von Benutzern geDffnet werden. Access XP stellt eine zweite Methode zur Verf,gung, eine Datenbank zu sch,tzen. Sie kDnnen die Datenbank kompilieren, indem Sie die Datenbank in eine .mde-Datei konvertieren. Mit dieser Methode verhindern Sie jedoch nicht das Rffnen der Datenbank oder bestimmter Datenbankobjekte, sondern Sie sch,tzen damit Ihr geistiges Gut, d.h. Ihre Entwicklungs-, Entwurfs- und Programmierarbeit, die Sie in die Datenbank gesteckt haben. Mit der Konvertierung in eine .mde-Datei wird jeglicher editierbarer Code umgewandelt, alle Module kompiliert und die Datenbank komprimiert. Das dritte, aufwendiger zu realisierende, aber auch flexiblere Verfahren ist das Aktivieren des Sicherheitssystems von Access. Mit dem Sicherheitssystem kDnnen Sie Benutzergruppen und Benutzer verwalten und diesen Zugriffsrechte erteilen und entziehen. Bei aktiviertem Sicherheitssystem muss sich jeder Benutzer beim Programmstart durch seinen Benutzernamen und ein Kennwort legitimieren. Der Benutzer kann dann nur auf die Datenbankobjekte zugreifen, f,r den Sie ihn legitimiert haben. Die Einrichtung des Sicherheitssystems wird Ihnen weitgehend vom Benutzer-Datensicherheits-Assistent abgenommen.
Eine Datenbank schtzen
Die vierte und letzte Methode zum Schutz einer Datenbank ist, den Quellcode mit einem Passwort zu sch,tzen. Auf diese Weise kDnnen nur berechtigte Benutzer 0nderungen an Modulen und Makros vornehmen.
Kennwrter f r Quellcode vergeben
Eine Datenbank durch ein Kennwort schtzen Mit der Vergabe eines Kennworts f,r eine Datenbank erreichen Sie, dass Access bei jedem Versuch, die Datenbank zu Dffnen, nach dem Datenbank-Kennwort fragt. Wenn ein Benutzer das Kennwort nicht korrekt eingibt, kann er die Datenbank nicht Dffnen. Die Vergabe von KennwDrtern eignet sich daher f,r den Schutz einer Datenbank, die nur von einem oder einer kleinen Gruppe von Benutzern eingesetzt wird. Zur Vergabe eines Datenbank-Kennworts gehen Sie wie folgt vor: 1
Fertigen Sie eine Sicherungkopie der Datenbank an, falls das Kennwort aus irgendeinem Grund verloren gehen sollte, und bewahren Sie die Datenbank an einem sicheren Ort auf.
2
Rffnen Sie die zu sch,tzende Datenbank. In einer Mehrbenutzerumgebung m,ssen Sie die Datenbank exklusiv Dffnen: W!hlen Sie dazu im ffnen-Dialog ,ber die Schaltfl!che ffnen die Option Exklusiv 4ffnen aus.
3
W!hlen Sie den Befehl Extras > Sicherheit > Datenbank-Kennwort zuweisen aus der Men,leiste.
4
Geben Sie das Datenbank-Kennwort und die Best!tigung ein.
5
Klicken Sie auf die Schaltfl!che OK.
Abb. 9.52 Ein Datenbank-Kennwort zuweisen
Datenbank-KennwDrter d,rfen bis zu 14 Zeichen lang sein und beliebige Zeichen (außer ASCII-Zeichen 0) enthalten. Access unterscheidet bei KennwDrtern zwischen Groß- und Kleinschreibung. Sie sollten das Datenbank-Kennwort an einem sicheren Platz aufbewahren. Wenn Sie das Datenbank-Kennwort einmal vergessen, kDnnen Sie Ihre Datenbank nicht mehr Dffnen.
Regeln zur Bildung von Kennwrtern
Hinweis
567
Wenn Sie eine Datenbank replizieren wollen oder sie schon repliziert ist, sollten Sie auf die Vergabe eines Datenbank-Kennwortes verzichten. Access kann durch ein Kennwort gesch,tzte Datenbanken nicht synchronisieren. Weitere Hinweise zum Replizieren und Synchronisieren von Datenbanken finden Sie weiter unten in diesem Kapitel.
auf den PC auch unbeschr!nkten Zugriff auf die Datenba Wenn Siedie Daten-
Eine Datenbank schtzen
Beachten Sie jedoch, dass ein Kennwort nur den Zugriff mit Access auf die Datenbank sch,tzt. Die Datenbank l!sst sich mit speziellen Programmen und Editoren weiterhin Dffnen. Wer sich ein wenig anstrengt, der findet die in der Datenbank gespeicherten Daten recht schnell (siehe Abbildung 9.54). Um einen vollst!ndigen Schutz zu erhalten, m,ssen Sie die Datenbank zus!tzlich verschl,sseln.
Abb. 9.55 Ansicht einer verschl sselten Datenbank
Abbildung 9.55 zeigt dieselbe Datenbank wie Abbildung 9.54. Der Unterschied besteht lediglich darin, dass die Datenbank diesmal verschl,sselt wurde. Bei verschl,sselten Datenbanken lassen sich die gespeicherten Daten nicht mehr erkennen. Hier f,hrt kein Weg am Start von Access und der Eingabe des richtigen Datenbank-Kennworts mehr vorbei.
Eine Datenbank in eine .mde-Datei konvertieren Access XP bietet Ihnen die MDglichkeit, Ihre Datenbankentwicklung auf sehr einfache Weise vor fremdem Zugriff und Ver!nderungen zu sch,tzen, indem Sie die Datenbank in eine .mde-Datei konvertieren. Sie verhindern damit nicht das Rffnen der Datenbank oder bestimmter Datenbankobjekte, sondern den Zugriff auf Ihren Programmcode und alle entworfenen Datenbankobjekte. Nach dem Konvertieren lassen sich an den bestehenden Datenbankelementen keine Ver!nderungen mehr vornehmen. Die Datenbank arbeitet jedoch weiterhin einwandfrei.
.mde-Dateien
569
Eine Datenbank verwalten
Wenn Sie eine Datenbank als .mde-Datei speichern, wird der VBA-Code der Datenbank kompiliert und der gesamte editierbare Code aus der Datenbank entfernt. Aus diesem Grund kDnnen alle Funktionen weiterhin ausgef,hrt, jedoch weder angezeigt noch ver!ndert werden. Als Nebeneffekt des Konvertierens in eine .mde-Datei wird die Datenbank kleiner und durch die optimierte Speichernutzung die Leistung verbessert. Hinweis Auswirkungen des Konvertierens
Das Konvertieren wirkt sich auf Formulare, Berichte und Module aus. Sie kDnnen diese Objekte weder in der Entwurfsansicht Dffnen noch neue Objekte erstellen. Diese Objekte lassen sich auch nicht im- oder exportieren. Lediglich mit Tabellen, Abfragen und Makros lassen sich alle gewohnten Aktionen durchf,hren. Achten Sie auch darauf, dass die .mde-Datenbank keine Eigenschaften oder Methoden verwendet, die den Programmcode ver!ndern, da eine .mde-Datenbank keinen Quellcode mehr enth!lt. Es tritt sonst folglich ein Fehler auf. Um eine .mde-Datenbank zu erstellen gehen Sie wie folgt vor:
Hinweis
1
Rffnen Sie die Datenbank, die Sie in eine .mde-Datei konvertieren wollen.
2
W!hlen Sie den Men,punkt Extras > Datenbank-Dienstprogramme > MDEDatei erstellen aus der Men,leiste.
3
Geben Sie im Dialog MDE-Datei speichern unter einen Namen ein und klicken Sie auf Speichern.
LDschen Sie niemals die Original-.mdb-Datei, aus der Sie die .mde-Datenbank erstellt haben. Auch Sie kDnnen dann keine Ver!nderungen mehr an der Datenbank vornehmen. F,r 0nderungen m,ssen dann Sie die gesamte Datenbank neu entwickeln. Es ist außerdem nicht mDglich, .mde-Dateien in sp!teren Access-Versionen zu benutzen. Sie kDnnen lediglich die zugrunde liegende Datenbank in die neue Version und anschließend in eine .mde-Datei konvertieren.
Das Sicherheitssystem von Access Daten sch tzen
Programmcode sch tzen
570
Mit dem Sicherheitssystem von Access sch,tzen Sie Ihre Datenbank gegen unbefugten Zugriff. Der Vorteil des Sicherheitssystems gegen,ber einem DatenbankKennwort besteht darin, dass Sie Benutzer und Benutzergruppen mit verschiedenen Zugriffsberechtigungen verwalten kDnnen. So kDnnen Sie beispielsweise einem Benutzer unbeschr!nkten Zugriff erteilen, w!hrend andere Benutzer nur Daten einsehen, aber nicht bearbeiten d,rfen. Das Sicherheitssystem bietet neben dem Schutz von Daten die umfassendste MDglichkeit, den Entwurf von Datenbankobjekten und insbesondere den Programmcode zu sch,tzen. Dies spielt vor allem dann eine Rolle, wenn Sie Ihre Datenbank weitergeben wollen.
Eine Datenbank schtzen
Damit das Sicherheitssystem von Access wirksam werden kann, m,ssen Sie sich zun!chst einer eindeutigen Arbeitsgruppe anschließen und dann das Anmeldeverfahren aktivieren. Danach kDnnen Sie Benutzer und Benutzergruppen anlegen und diesen Zugriffsrechte erteilen. Diese Arbeitsschritte werden Ihnen vom BenutzerDatensicherheits-Assistenten abgenommen. Die folgenden Abschnitte erl!utern diese Arbeitsschritte. Im Anschluss daran finden Sie MDglichkeiten, wie Sie 0nderungen an den Benutzern, Benutzergruppen und deren Zugriffsrechten vornehmen kDnnen, wenn Sie die Datenbank bereits gesch,tzt haben.
Vorgehensweise
Datensicherheits-Assistent Der Datensicherheits-Assistent von Access XP ,bernimmt das Einrichten der kompletten Arbeitsgruppen-Informationsdatei. Im Anschluss an die Beschreibung des Assistenten erfahren Sie, wie Sie manuell eine Arbeitsgruppen-Informationsdatei erstellen und einrichten kDnnen. Außerdem besch!ftigen sich weitere Abschnitte mit dem manuellen Festlegen von Benutzern, Benutzergruppen und deren Rechten.
Benutzer-Datensicherheits-Assistent starten
Rffnen Sie zun!chst die Datenbank (z.B. Projektverwaltung), die Sie sch,tzen wollen. Starten Sie dann den Assistenten ,ber den Men,befehl Extras > Sicherheit > Benutzerdatensicherheits-Assistent. Der Datensicherheits-Assistent wird zun!chst eine Sicherungskopie Ihrer Datenbank mit der Endung .bak anlegen. Anschließend werden die Objekte der bestehenden Datenbank gesch,tzt sowie die Zugriffsrechte zu den einzelnen Objekten festgelegt.
Abb. 9.56 Der DatensicherheitsAssistent von Access
571
Eine Datenbank verwalten
Im ersten Dialog des Datensicherheits-Assistenten werden Sie gefragt, ob eine neue Arbeitsgruppen-Informationsdatei erstellt oder die aktuelle ge!ndert werden soll. Die zweite Option wird nicht angeboten, wenn zu der zu sch,tzenden Datenbank noch keine Arbeitsgruppen-Informationsdatei besteht. W!hlen Sie hier die Option Eine neue Arbeitsgruppeninformationsdatei erstellen aus. Im zweiten Dialog geben Sie den Namen der neuen Arbeitsgruppeninformationsdatei sowie eine Arbeitsgruppen-ID an. Außerdem legen Sie fest, ob die neue Arbeitsgruppeninformationsdatei nur f,r die neue, gesch,tzte Datenbank gilt oder sie als Standardarbeitsgruppen-Informationsdatei f,r alle Datenbanken eingesetzt werden soll.
Abb. 9.57 Neue Arbeitsgruppeninformationsdatei einrichten
Im dritten Dialog des Datensicherheits-Assistenten legen Sie die zu sch,tzenden Datenbankobjekte fest. Hier ist anzumerken, dass der Assistent standardm!ßig alle Datenbankobjekte sichert. Sie m,ssen in diesem Dialogfenster also nur 0nderungen vornehmen, wenn Sie einzelne Objekte der Datenbank nicht sichern mDchten. Nach der Angabe der zu sichernden Objekte werden Sie im n!chsten Dialog aufgefordert, ein Kennwort einzugeben. Mithilfe dieses Kennwortes sch,tzen Sie das VBA-Projekt, welches jeglichen in Ihrer Datenbank enthaltenen Code beinhaltet. Dazu gehDren sowohl alle Module als auch der zu Berichten und Formularen gehDrende VBA-Code.
572
Eine Datenbank schtzen
Abb. 9.58 Auswahl der zu sichernden Datenbankobjekte
Im n!chsten Dialogfenster legen Sie fest, welche Benutzergruppen Zugriff auf die gesch,tzte Datenbank haben. Die Berechtigungen der jeweiligen Gruppen kDnnen Sie dem Dialog entnehmen.
Abb. 9.59 Festlegung der Benutzergruppen
573
Eine Datenbank verwalten
Alle Benutzer der Datenbank werden auf jeden Fall der Gruppe Benutzer zugeteilt. Diese Gruppe hat standardm!ßig ,berhaupt keine Zugriffsrechte. Im folgenden Dialog kDnnen Sie angeben, ob die Gruppe Benutzer doch Rechte zugewiesen bekommen soll und welche Rechte gegebenenfalls zugewiesen werden sollen.
Abb. 9.60 Berechtigungen der Gruppe Benutzer
Nachdem Sie die Rechte f,r die Gruppe Benutzer festgelegt haben, werden Sie aufgefordert, Ihrer Arbeitsgruppendatei weitere Benutzer namentlich zuzuweisen. Dazu gehDren die Angabe des Benutzernamens und eines Passwortes. Vergessen Sie nicht, nach der Eingabe der Benutzerdaten die Schaltfl!che Benutzer zur Liste hinzuf1gen zu bet!tigen. Falls keine weiteren Personen außer Ihnen Zugriff auf diese Datenbankdatei haben sollen, sind hier keine weiteren Einstellungen zu treffen. Sie haben nun verschiedene Benutzergruppen festgelegt und die Daten weiterer Benutzer eingegeben. Nun m,ssen Sie jedem Benutzer durch Festlegen seiner Benutzergruppe noch die entsprechenden Rechte zuweisen. Dazu gibt es zwei MDglichkeiten. Entweder Sie w!hlen erst eine Gruppe aus und weisen dieser Benutzer zu oder Sie w!hlen zun!chst einen Benutzer aus und markieren anschließend die Gruppe, zu der er gehDren soll. Wie Sie sehen, kDnnen Sie nicht nur jeder Gruppe eine beliebige Anzahl von Benutzern zuteilen. Ebenso kann jeder Benutzer ,ber die Rechte verschiedener Arbeitsgruppen verf,gen.
574
Eine Datenbank schtzen
Abb. 9.61 Festlegen von weiteren Benutzern
Abb. 9.62 Zuordnung von Benutzern zu Benutzergruppen
575
Eine Datenbank verwalten
Letztendlich fragt der Datensicherheits-Assistent in einem weiteren Dialog nach einem Namen f,r die gesch,tzte Datenbank. Pbernehmen Sie die Vorgabe oder geben Sie einen anderen Namen (z.B. Projektverwaltung (gesch1tzt)) ein. Best!tigen Sie die Einstellungen mit einem Klick auf die Schaltfl!che Fertig stellen.
Abb. 9.63 Speichern der gesch tzten Datenbank
Der Datensicherheits-Assistent beginnt dann mit dem Sch,tzen der Datenbank. Er erledigt folgende Schritte f,r Sie:
576
1
Der Assistent erstellt die neue Datenbank (z.B. Projektverwaltung (gesch1tzt)) mit dem aktuellen Benutzer als Eigent,mer.
2
Der Assistent exportiert alle Objekte aus der aktuellen in die neue Datenbank.
3
Der Assistent erteilt dem aktuellen Benutzer (z.B. Chef) die Zugriffsrechte f,r die Objekte der neuen Datenbank.
4
Der Assistent entzieht dem Benutzer Administrator die Zugriffsrechte f,r die Objekttypen der Datenbank, die Sie weiter oben angekreuzt haben (siehe Abbildung 9.58).
5
Der Assistent verschl,sselt die gesch,tzte Datenbank automatisch.
Eine Datenbank schtzen
Sie verf,gen nun ,ber zwei Datenbanken. Die alte Datenbank (z.B. Projektverwaltung) bleibt so wie vorher und ist daher ungesch,tzt. Die neue Datenbank (z.B. Projektverwaltung (gesch1tzt)) ist gesch,tzt. Das bedeutet, dass Sie sich zwar weiterhin unter dem Benutzernamen Administrator anmelden kDnnen, Sie dann aber keinen Zugriff auf die gesch,tzten Datenbankobjekte haben. Um unbeschr!nkten Zugriff auf alle Datenbankobjekte zu haben, m,ssen Sie sich unter dem neuen Benutzernamen anmelden. Um Problemen entgegenzutreten, die bei einer eventuellen Besch!digung der Arbeitsgruppeninformationsdatei auftreten, erstellt der Assistent automatisch einen Bericht. Dieser enth!lt alle notwendigen Daten zur Rekonstruktion der Arbeitsgruppeninformationsdatei.
Manuelle Konfiguration des Sicherheitssystems Die folgenden Abschnitte enthalten alle wichtigen Informationen, damit Sie die vom Datensicherheits-Assistenten durchgef,hrten Schritte nachvollziehen kDnnen. Mit den Informationen aus den n!chsten Kapiteln und der Kenntnis der Vorgehensweise des Datensicherheits-Assistenten kDnnen Sie Ihre Datenbank selbst sch,tzen oder die vom Assistenten durchgef,hrten Schutzmaßnahmen nachtr!glich bearbeiten.
Die Arbeitsgruppen-Informationsdatei Access speichert wichtige Einstellungen wie beispielsweise die meisten Optionen und alle Benutzereinstellungen des Sicherheitssystems in der Arbeitsgruppen-Informationsdatei. W!hrend der Installation wurde in dem Ordner, in den Sie Access installiert haben, automatisch die Arbeitsgruppen-Informationsdatei System.mdw erstellt. Die automatisch erstellte Arbeitsgruppeninformationsdatei ist f,r einen wirksamen Schutz von Datenbanken ungeeignet, da sie keinen eindeutigen ArbeitsgruppenCode enth!lt. Die Schutzmechanismen des Sicherheitssystems von Access garantieren nur dann den hundertprozentigen Schutz Ihrer Daten, wenn Sie eine eindeutige Arbeitsgruppen-Informationsdatei anlegen und sich der dadurch definierten Arbeitsgruppe anschließen. Das Erstellen einer eindeutigen Arbeitsgruppen-Informationsdatei erfolgt mit dem Arbeitsgruppen-Administrator von Access. Wenn Sie Access vollst!ndig installiert haben, dann finden Sie den Arbeitsgruppen-Administrator unter dem Dateinamen Wrkgadm.exe im System-Verzeichnis von Windows. Die Installation erstellt jedoch auch eine Verkn,pfung zu dieser Datei im Installationsverzeichnis von Access bzw. MS-Office mit dem Namen MS Access Arbeitsgruppen-Administrator. Verwenden Sie den Befehl Start > Ausf1hren der Taskleiste oder den Explorer von Windows, um den Arbeitsgruppen-Administrator zu starten.
Die Arbeitsgruppeninformationsdatei
Eine eindeutige ArbeitsgruppenInformationsdatei erstellen
577
Eine Datenbank verwalten
Abb. 9.64 Start des Arbeitsgruppen-Administrators von Access
Hinweis
Wenn Sie den Arbeitsgruppen-Administrator h!ufig benDtigen, dann sollten Sie eine Verkn,pfung auf dem Desktop oder im Startmen, von Windows erstellen. Um eine Verkn,pfung auf dem Desktop zu erstellen, ziehen Sie die Datei bei gedr,ckter rechter Maustaste aus dem Explorer auf den Desktop und w!hlen den Befehl Verkn1pfung aus dem sich Dffnenden Kontextmen,. Um eine Verkn,pfung im Start-Men, der Taskleiste zu erstellen, klicken Sie mit der rechten Maustaste auf die Taskleiste und w!hlen den Befehl Eigenschaften aus dem Kontextmen,. Markieren Sie dann das Register Programme im Men1 "Start" und klicken Sie auf die Schaltfl!che Hinzuf1gen. Access zeigt im Startdialog des Arbeitsgruppen-Administrators Ihren Namen, Ihre Firma und den Pfad und Namen der aktuellen Arbeitsgruppen-Informationsdatei an. Mit einem Klick auf die Schaltfl!che Erstellen Dffnen Sie einen weiteren Dialog, ,ber den Sie die Angaben f,r eine Arbeitsgruppe eingeben.
ArbeitsgruppenCode eingeben
578
Geben Sie einen Arbeitsgruppen-Code aus einer Folge von bis zu 20 Buchstaben und Ziffern ein. Access kann Ihre Datenbanken nur dann zuverl!ssig sch,tzen, wenn Sie einen eindeutigen Arbeitsgruppen-Code eingeben. Notieren Sie sich den Arbeitsgruppen-Code, falls Sie Ihr Sicherheitssystem sp!ter rekonstruieren m,ssen. Der Arbeitsgruppen-Code hat eine ebenso wichtige Bedeutung wie die KennwDrter, die Sie sp!ter eingeben.
Eine Datenbank schtzen
Abb. 9.65 Der Arbeitsgruppen-Administrator von Access
Wenn Sie die Eingabe der Parameter mit einem Klick auf die Schaltfl!che OK abschließen, Dffnet Access einen weiteren Dialog. Geben Sie hier den Pfad und den Dateinamen ein, unter dem Access die Arbeitsgruppen-Informationsdatei speichern soll. Wenn Sie sp!ter gesch,tzte Datenbanken weitergeben wollen, dann m,ssen Sie die Arbeitsgruppen-Informationsdatei ebenfalls kopieren. Es ist daher unter Umst!nden sinnvoll, die Arbeitsgruppen-Informationsdatei im selben Ordner anzulegen wie die Datenbanken, die Sie sch,tzen wollen.
ArbeitsgruppenInformationsdatei festlegen
Nach einem Klick auf die Schaltfl!che OK zeigt Access einen Dialog mit einer Pbersicht der Arbeitsgruppen-Informationen an. Wenn Sie mit den Einstellungen zufrieden sind, klicken Sie auf OK, damit Access die Arbeitsgruppen-Informationsdatei anlegt. Anschließend kDnnen Sie den Arbeitsgruppen-Administrator beenden. Wenn Sie auf Ihrem PC oder im Netzwerk mehrere Arbeitsgruppen verwalten, m,ssen Sie sich zun!chst der entsprechenden Arbeitsgruppe anschließen, bevor Sie auf eine gesch,tzte Datenbank zugreifen kDnnen. Starten Sie dazu den Arbeitsgruppen-Administrator und klicken Sie auf die Schaltfl!che Anschließen. Access Dffnet dann einen Dialog, ,ber den Sie eine der mit der Erweiterung .mdw gespeicherten Arbeitsgruppen-Informationsdateien ausw!hlen kDnnen.
Sich einer Arbeitsgruppe anschließen
579
Eine Datenbank verwalten
Abb. 9.66 Arbeitsgruppen-Informationen best!tigen
Tipp
Mit dem Startparameter /wrkgrp kDnnen Sie Access unter Angabe einer Arbeitsgruppe starten. Geben Sie hier den Pfad und den Namen einer Arbeitsgruppen-Informationsdatei an. Weitere Hinweise zu den Startparametern von Access finden Sie in Anhang A: Installation der CD dieses Buchs.
Anmeldeverfahren aktivieren Der Start von Access erfolgt standardm!ßig ohne Anmeldeverfahren. Der Zugriff auf Access ist damit nicht gesichert.
Programmstart
Das Aktivieren des Anmeldeverfahrens bewirkt, dass Access w!hrend des Programmstarts einen Dialog zur Eingabe des Benutzernamens und eines Kennwortes anzeigt. So kDnnen sich nur die Benutzer anmelden, die die richtige Kombination aus Benutzernamen und Kennwort kennen. Gibt der Anwender eine falsche Kombination aus Benutzernamen und Kennwort ein, l!sst sich Access nicht starten. Das Aktivieren des Anmeldeverfahrens erfolgt ,ber die Festlegung eines Kennwortes f,r den Administrator. Access legt den Benutzernamen Administrator standardm!ßig an. Solange das Anmeldeverfahren nicht aktiviert ist, meldet Access automatisch jeden Benutzer als Administrator an.
Kennwort !ndern
Um das Kennwort f,r den Administrator zu !ndern, starten Sie Access und w!hlen Sie den Befehl Extras > Sicherheit > Benutzer- und Gruppenkonten aus der Men,leiste. Markieren Sie in dem sich Dffnenden Dialog das Register Anmeldungskennwort 7ndern. Der Dialog eignet sich zum 0ndern des Kennwortes des jeweils aktuellen Benutzers. Da Access bei nicht aktiviertem Anmeldeverfahren alle Benutzer automatisch als Administrator anmeldet, !ndert der Befehl bei seiner ersten Ausf,hrung folglich das Kennwort des Administrators.
580
Eine Datenbank schtzen
Abb. 9.67 Anmeldungskennwort (ndern
Das Kennwort des Administrators ist standardm!ßig leer. Tragen Sie das neue Kennwort in das daf,r vorgesehene Eingabefeld ein. Um Schreibfehler auszuschließen, m,ssen Sie das Kennwort durch eine weitere Eingabe best!tigen. Access akzeptiert das Kennwort nur, wenn beide Eingaben identisch sind. Speichern Sie das Kennwort mit einem Klick auf die Schaltfl!che 9bernehmen, bevor Sie den Dialog mit einem Klick auf die Schaltfl!che OK beenden. KennwDrter d,rfen bis zu 14 Zeichen lang sein und beliebige Zeichen (außer ASCIIZeichen 0) enthalten. Access unterscheidet bei KennwDrtern zwischen Groß- und Kleinschreibung. Wenn Sie ein Kennwort des Administrators ge!ndert haben, aktiviert Access automatisch das Anmeldeverfahren. Access fordert Sie dann beim n!chsten Start des Programms zur Eingabe einer g,ltigen Kombination aus Benutzernamen und Kennwort auf.
Konventionen f r Kennwrter
Das Anmeldeverfahren
Abb. 9.68 Als Administrator anmelden
Sofern Sie noch keine weiteren Benutzer angelegt haben, geben Sie Administrator als Benutzernamen und Ihr Kennwort ein. 581
Eine Datenbank verwalten
Hinweis
Sie sollten sicherstellen, dass Sie Ihr Kennwort nicht vergessen und es gleichzeitig nicht zu leicht zu erraten ist. Schreiben Sie es gegebenenfalls auf, und bewahren Sie den Zettel an einem Ort auf, der sich nicht in unmittelbarer N!he des Computers befindet. Sollten Sie Ihr Kennwort irgendwann einmal vergessen, kDnnen Sie Access nicht mehr starten. Sie m,ssen sich dann einer anderen Arbeitsgruppe anschließen oder eine neue Arbeitsgruppen-Informationsdatei erstellen. Wenn die neue Arbeitsgruppen-Informationsdatei nicht dieselben Einstellungen enth!lt wie vorher, kDnnen Sie auf gesch,tzte Datenbanken nicht mehr zugreifen.
Anmeldeverfahren deaktivieren
Wenn Sie irgendwann zu dem Ergebnis kommen, dass die Sicherung von Access nicht mehr notwendig ist, oder Sie vielleicht andere Sicherheitsvorkehrungen getroffen haben, kDnnen Sie das Anmeldeverfahren wieder deaktivieren. 0ndern Sie dazu mit dem oben beschriebenen Verfahren das Kennwort des Administrators auf eine leere Zeichenkette.
Benutzergruppen verwalten Zum Schutz des Zugriffs auf Access gen,gen in der Regel ein Benutzername und ein Kennwort. So kDnnen nur diejenigen Anwender das Programm starten, die eingeweiht sind. Das Sicherheitssystem von Access bietet jedoch mehr. Sie kDnnen fast beliebig viele Benutzer und Benutzergruppen definieren und diese mit unterschiedlichen Zugriffsrechten ausstatten. So ist beispielsweise eine Konstellation denkbar, bei der die Benutzerin Susanne die Kundentabelle nur lesen darf. Die Benutzerin Anke darf auch die Daten !ndern, w!hrend die Benutzerin Daniela auch den Tabellenentwurf !ndern darf. Zugriffsrechte erteilen
Ziel der Anlage von Benutzern und Benutzergruppen ist also die Zuordnung verschiedener Zugriffsrechte. Die Zuteilung der Rechte kann f,r einzelne Benutzer oder f,r eine Gruppe erfolgen. Jeder Benutzer, der der Gruppe zugeordnet wird, hat gleichzeitig auch die Rechte der Gruppe. Außerdem l!sst sich jeder Benutzer mehreren Gruppen zuordnen. Sie sollten sich daher vor der Anlage von Benutzern und Benutzergruppen einige Gedanken machen, wer ,berhaupt mit Access und den Datenbanken arbeiten darf. Außerdem kDnnen Sie sehr viel Aufwand sparen, wenn Sie Rechte vorwiegend auf Gruppenebene erteilen. Viele Benutzer lassen sich in der Regel leicht in verh!ltnism!ßig wenige Gruppen einteilen.
Gruppen anlegen
Zur Anlage einer Gruppe w!hlen Sie den Befehl Extras > Sicherheit > Benutzer- und Gruppenkonten aus der Men,leiste, und markieren Sie das Register Gruppen. Geben Sie einen Gruppennamen ein, und klicken Sie auf die Schaltfl!che Neu.
Gruppennamen
Gruppennamen d,rfen ein bis 20 Zeichen lang sein und aus Buchstaben, Ziffern und den meisten Sonderzeichen bestehen. Sie d,rfen die folgenden Zeichen jedoch nicht verwenden: " / \ [ ] : | < > + = ; , ? *
582
Eine Datenbank schtzen
Außerdem d,rfen Gruppennamen nicht mit einem Leerzeichen beginnen und die Steuerzeichen (ASCII-Code 0 bis 31) nicht enthalten.
Abb. 9.69 Die Eingabe des Gruppennamens
Access Dffnet einen weiteren Dialog, in dem Sie den Gruppennamen noch !ndern kDnnen. Sie m,ssen zus!tzlich eine Folge von vier bis 20 Zeichen eingeben, die aus Buchstaben und Ziffern besteht. Es handelt sich hierbei um die so genannte persDnliche Identifikationsnummer (PIN). Access verwendet die Kombination aus dem Gruppennamen und der PIN zur eindeutigen Identifikation der Gruppe. Wenn Sie Ihre Eingabe mit OK best!tigen, legt Access die Gruppe an. Der Gruppenname und die PIN sind f,r das Sicherheitssystem ebenso wichtig wie die KennwDrter, die Sie sp!ter noch eingeben. Wenn Sie das Sicherheitssystem zu einem sp!teren Zeitpunkt rekonstruieren wollen oder m,ssen, benDtigen Sie die Gruppennamen und die PINs. Sie sollten beide Werte daher an einem sicheren Ort aufbewahren. Access unterscheidet bei beiden Informationen zwischen Groß- und Kleinschreibung.
Hinweis
Abb. 9.70 Gruppenname und PIN eingeben
583
Eine Datenbank verwalten
Gruppen lschen
Das LDschen von Gruppen erfolgt ebenfalls im Register Gruppen des Dialogs Benutzer- und Gruppenkonten. W!hlen Sie eine Gruppe aus dem Kombinationsfeld und klicken Sie auf die Schaltfl!che L4schen. Access lDscht nur die Gruppe und die Rechte, die der Gruppe erteilt wurden. Die der Gruppe zugeordneten Benutzer werden nicht gelDscht. Sie verlieren lediglich die Rechte, die ihnen ,ber die GruppenzugehDrigkeit erteilt wurden.
Hinweis
Access legt die Gruppen Administratoren und Benutzer automatisch an. Sie kDnnen diese Gruppen nicht lDschen. Im Unterschied zur Gruppe l!sst sich der Benutzername Administrator aber sehr wohl lDschen.
Benutzer verwalten Benutzer anlegen
Zur Anlage neuer Benutzer w!hlen Sie den Befehl Extras > Sicherheit > Benutzerund Gruppenkonten aus der Men,leiste und markieren das Register Benutzer.
Abb. 9.71 Benutzer anlegen und lschen
Geben Sie einen neuen Benutzernamen in das daf,r vorgesehene Eingabefeld ein und klicken Sie auf die Schaltfl!che Neu. Access zeigt einen weiteren Dialog an (siehe Abbildung 9.70), mit dem Sie den Benutzernamen !ndern kDnnen. Außerdem m,ssen Sie auch f,r neue Benutzer eine PIN eingeben.
Konventionen f r Benutzernamen
584
Die Konventionen f,r Benutzernamen sind die gleichen wie f,r Gruppennamen. Eine Beschreibung der Konventionen zur Bildung von Gruppennamen finden Sie weiter oben in diesem Abschnitt.
Eine Datenbank schtzen
Zum LDschen eines Benutzers w!hlen Sie den Benutzernamen aus dem Kombinationsfeld und klicken auf die Schaltfl!che L4schen.
Benutzer lschen
Access legt den Benutzer Administrator automatisch an. Sie kDnnen diesen Benutzer nicht lDschen. Hinweis Access legt neue Benutzer ohne Kennwort an. Jeder Benutzer kann jedoch sein persDnliches Kennwort definieren und !ndern. Der Benutzer braucht sich lediglich unter seinem Benutzernamen anzumelden und im Dialog Benutzer- und Gruppenkonten das Register Anmeldungskennwort zu aktivieren.
Kennwort !ndern
Der Befehl Dffnet einen Dialog (siehe Abbildung 9.67) zur Eingabe des Kennwortes. Der Benutzer kann sich fortan nur noch mit der richtigen Kombination aus Benutzernamen und Kennwort anmelden. Wenn Sie das Kennwort eines Benutzers lDschen wollen, dann aktivieren Sie das Register Benutzer. W!hlen Sie einen Benutzer aus dem Kombinationsfeld und klicken Sie auf die Schaltfl!che Kennwort l4schen.
Kennwort lschen
Das Register Benutzer dient nicht nur der Neueingabe und dem LDschen von Benutzern, sondern auch deren Zuordnung zu Gruppen. Wenn Sie einen Benutzernamen aus dem Kombinationsfeld w!hlen, zeigt die Liste Zugeordnet zu die Gruppen an, denen der Benutzer zugeordnet ist.
Gruppenzugehrigkeit !ndern
Wenn Sie einen Benutzer einer neuen Gruppe zuordnen wollen, dann markieren Sie den Gruppennamen in der Liste Verf1gbare Gruppen, und klicken Sie auf Hinzuf1gen. Soll der Benutzer aus einer Gruppe entfernt werden, markieren Sie den Gruppennamen in der Liste Zugeordnet zu, und klicken Sie auf Entfernen.
Zugriffsberechtigungen zuweisen und entziehen Zugriffsberechtigungen bestimmen, welche Benutzer und Gruppen auf welche Objekte einer Datenbank wie zugreifen d,rfen. Zugriffsrechte beziehen sich immer auf einzelne Objekte einer Datenbank. So kDnnen Sie Zugriffsrechte beispielsweise f,r jede Tabelle einer Datenbank getrennt erteilen. Um Zugriffsrechte zu erteilen oder zu entziehen, Dffnen Sie zun!chst die Datenbank, f,r die Sie Zugriffsrechte verteilen wollen. W!hlen Sie dann den Befehl Extras > Sicherheit > Benutzer- und Gruppenberechtigungen, und markieren Sie das Register Berechtigungen. Zugriffsberechtigungen beziehen sich stets auf eines oder mehrere Objekte der geDffneten Datenbank. W!hlen Sie zun!chst einen Objekttyp aus dem Kombinationsfeld, so dass Access Tabellen, Abfragen, Formulare, Berichte, Makros, Module oder die Datenbank anzeigt. W!hlen Sie anschließend den Namen des Objekts aus, f,r das Sie Zugriffsberechtigungen erteilen oder entziehen wollen. Pber die mit Neu beginnenden Eintr!ge definieren Sie die Standard-Zugriffsberechtigungen f,r neue Datenbankobjekte.
Objekt ausw!hlen
585
Eine Datenbank verwalten
Abb. 9.72 Zugriffsberechtigungen erteilen und entziehen
Hinweis
Wenn Sie ein Objekt nach der Zuteilung von Berechtigungen bearbeiten und erneut speichern, bleiben die Zugriffsberechtigungen erhalten. Sollten Sie das Objekt mit Datei > Speichern unter oder durch Ausschneiden und Einf1gen unter einem neuen Namen speichern, handelt es sich um ein neues Objekt. Access weist dem Objekt dann die Zugriffsberechtigungen zu, die Sie f,r neue Objekte eingestellt haben.
Benutzer oder Gruppe ausw!hlen
Sie kDnnen Zugriffsberechtigungen f,r eine Gruppe oder einen einzelnen Benutzer bearbeiten. Markieren Sie zun!chst eines der Optionsfelder Benutzer oder Gruppen. W!hlen Sie dann einen Benutzer- oder Gruppennamen aus dem Listenfeld.
Zugriffsberechtigungen von Gruppen
Wenn Sie eine Gruppe ausw!hlen, zeigt Access die Zugriffsberechtigungen der Gruppe an. Mit dem 0ndern der Zugriffsberechtigungen der Gruppe !ndern sich automatisch auch die Zugriffsberechtigungen aller Benutzer, die der Gruppe zugeordnet sind.
Zugriffsberechtigungen von Benutzern
586
Wenn Sie hingegen einen Benutzer ausw!hlen, zeigt Access nur die Zugriffsberechtigungen des Benutzers an. Die Zugriffsberechtigungen, die der Benutzer ,ber seine Zuordnung zu Gruppen erh!lt, werden nicht mit angezeigt. Sie sollten bei der Vergabe von Zugriffsberechtigungen bedenken, dass ein Benutzer automatisch mindestens die Zugriffsberechtigungen hat wie die Gruppen, denen er zugeordnet ist. Wenn Sie einem Benutzer seine Zugriffsrechte wirksam entziehen wollen, dann m,ssen Sie daher auch seine GruppenzugehDrigkeit pr,fen.
Eine Datenbank schtzen
Access kennt verschiedene Typen von Berechtigungen. So ermDglicht beispielsweise die Berechtigung Entwurf lesen nur das Einsehen von Objekten. Die Berechtigung Entwurf 7ndern erlaubt hingegen das Einsehen und 0ndern von Objekten. Tabelle 9.4 enth!lt eine Pbersicht ,ber die Berechtigungen und die Objekte, f,r die sie erteilt werden kDnnen.
Berechtigungstypen
Zugriffsberechtigungen
Berechtigung
Beschreibung
Anwendungsbereich
Rffnen/Ausf,hren
Die Benutzer oder die Gruppe d,rfen das Objekt lesen oder ausf,hren, es aber nicht in der Entwurfsansicht Dffnen
Datenbanken, Formulare, Berichte und Makros
Entwurf lesen
Die Benutzer oder die Gruppe d,rfen die Objekte in Tabellen, Abfragen, Formulader Entwurfsansicht Dffnen, den Entwurf jedoch re, Berichte, Makros und nicht !ndern Module
Entwurf !ndern
Die Benutzer oder die Gruppe d,rfen die Objekte in der Entwurfsansicht Dffnen und den Entwurf !ndern
Tabellen, Abfragen, Formulare, Berichte, Makros und Module
Verwalten
Die Benutzer oder die Gruppe haben uneingeschr!nkten Zugriff auf alle Datenbankobjekte und Daten. Das schließt das Erteilen von Zugriffsberechtigungen ein.
Tabellen, Abfragen, Formulare, Berichte, Makros und Module
Daten lesen
Die Benutzer oder die Gruppe d,rfen Daten lesen, aber nicht bearbeiten
Tabellen und Abfragen
Daten aktualisieren Die Benutzer oder die Gruppe d,rfen Daten lesen und bearbeiten, aber keine Datens!tze einf,gen oder lDschen
Tabellen und Abfragen
Daten einf,gen
Die Benutzer oder die Gruppe d,rfen Daten lesen und Datens!tze einf,gen, aber keine Daten bearbeiten und keine Datens!tze lDschen
Tabellen und Abfragen
Daten lDschen
Die Benutzer oder die Gruppe d,rfen Daten lesen und Datens!tze lDschen, aber keine Daten bearbeiten und keine neuen Datens!tze einf,gen
Tabellen und Abfragen
Tabelle 9.4
Wenn Sie eine Berechtigung erteilen wollen, dann w!hlen Sie ein Objekt und einen Benutzer oder eine Gruppe aus. Mit dem Ankreuzen eines Kontrollk!stchens erteilen Sie die Berechtigung. Das LDschen des Kontrollk!stchens entzieht die Berechtigung.
Berechtigung erteilen oder entziehen
587
Eine Datenbank verwalten
Einige Berechtigungen bedingen automatisch das Erteilen oder Entziehen anderer Berechtigungen. Wenn Sie beispielsweise die Berechtigung Entwurf 7ndern erteilen, erteilt Access automatisch auch die Berechtigung Entwurf lesen. Sofern Berechtigungen andere bedingen, kreuzt Access die entsprechenden Kontrollk!stchen automatisch an.
Zugriffsrechte f r Abfragen
Abfragen stellen Daten aus den zugrunde liegenden Tabellen dar und ermDglichen h!ufig auch deren Bearbeitung. Sie haben nun die MDglichkeit, jedem Benutzer einer Datenbank dieselbe Ausf,hrungsberechtigungen f,r eine Abfrage zu geben, wie Sie der Eigent,mer der Abfrage hat. Gehen Sie dazu wie folgt vor: 1
Rffnen Sie die Entwurfsansicht der Abfrage.
2
Rffnen Sie das Eigenschaftenfenster.
3
Klicken Sie auf einen leeren Bereich des Abfragefensters, so dass Access die Abfrageeigenschaften anzeigt.
4
0ndern Sie die Abfrageeigenschaft Ausf1hrungsberechtigungen auf den Wert Eigent1mer.
Sie bestimmen damit, dass der Benutzer dieselben Zugriffsberechtigungen erh!lt, wie sie der Eigent,mer der Abfrage hat. Das bedeutet, dass der Benutzer die Abfrage ausf,hren kann, obwohl er eigentlich keine Legitimation daf,r hat. Die Standardeinstellung f,r die Eigenschaft Ausf1hrungsberechtigungen ist Benutzer. Bei dieser Einstellung gew!hrt Access dem Benutzer nur seine eigenen Zugriffsberechtigungen. Wenn er also keine Berechtigung zum Ausf,hren der Abfrage hat, kann er die Abfrage auch nicht ausf,hren.
Tipp
Das Einstellen der Abfrageeigenschaft Ausf1hrungsberechtigungen auf Eigent1mer entspricht in SQL der Zusatzklausel WITH OWNERACCESS OPTION. Das Einstellen der Eigenschaft auf Benutzer entspricht in SQL dem Weglassen der Zusatzklausel.
Den Eigentmer einer Datenbank und ihrer Objekte einsehen und %ndern Zugriffsrechte/ Eigent mer !ndern
Access merkt sich beim Erstellen neuer Datenbanken und Datenbankobjekte den Namen des Benutzers, der die Datenbank oder das Objekt angelegt hat. Dieser Benutzer ist fortan Eigent,mer der Datenbank oder des Datenbankobjekts. Da Access bei einem nicht aktivierten Sicherheitssystem alle Benutzer als Administrator anmeldet, ist er automatisch Eigent,mer der Datenbank und ihrer Objekte. Da Sie den Benutzer Administrator nicht lDschen kDnnen, ist es manchmal erforderlich, den Eigent,mer einer Datenbank zu !ndern. W!hlen Sie den Befehl Extras > Zugriffsrechte > Benutzer- und Gruppenberechtigungen aus der Men,leiste und markieren Sie das Register Eigent1mer 7ndern.
588
Eine Datenbank schtzen
Abb. 9.73 Eigent mer einsehen und !ndern
Im Register Eigent1mer 7ndern kDnnen Sie die Eigent,mer der Datenbankobjekte einsehen und !ndern. Die Option Benutzer bewirkt, dass Access im Kombinationsfeld Neuer Eigent1mer alle Benutzer der Datenbank anzeigt. Markieren Sie hingegen die Option Gruppen, um eine Benutzergruppe zum Eigent,mer eines Datenbankobjekts zu machen. W!hlen Sie dann einen Eigent,mer aus dem Kombinationsfeld Neuer Eigent1mer und klicken Sie auf die Schaltfl!che Eigent1mer 7ndern.
Benutzer, Benutzergruppen und Zugriffsrechte dokumentieren Um Ihr Sicherheitssystem zu dokumentieren, kDnnen Sie einen Bericht mit allen Benutzern und Benutzergruppen drucken. Der Bericht enth!lt außerdem die Zuodnung von Benutzern zu Gruppen. Gehen Sie wie folgt vor: 1
W!hlen Sie den Befehl Extras > Sicherheit > Benutzer- und Gruppenkonten aus der Men,leiste.
2
Markieren Sie das Register Benutzer.
3
Klicken Sie auf die Schaltfl!che Benutzer und Gruppen drucken.
Markieren Sie in dem sich Dffnenden Dialog Zugriffsrechte Drucken eine der drei Optionen Benutzer und Gruppen, Nur Benutzer oder Nur Gruppen. Mit einem anschließenden Klick auf die Schaltfl!che OK beginnt der Druckvorgang, ohne dass Access vorher die Seitenansicht des Berichts Dffnet. 589
Eine Datenbank verwalten
Abb. 9.74 Benutzer und Gruppen drucken
Zugriffsrechte drucken
Abb. 9.75 Zugriffsrechte drucken
590
Anders als es die Titelzeile des Dialogs in Abbildung 9.74 vermuten l!sst, druckt Access hier nur eine Aufstellung von Benutzer- und Gruppennamen sowie deren gegenseitige ZugehDrigkeit. Wenn Sie die Zugriffsberechtigungen f,r Benutzer und Benutzergruppen drucken wollen, m,ssen Sie den Datenbank-Dokumentierer verwenden. Gehen Sie wie folgt vor: 1
Schließen Sie den Dialog Benutzer- und Gruppenkonten.
2
W!hlen Sie den Befehl Extras > Analyse > Dokumentierer aus der Men,leiste.
3
W!hlen Sie die Objekte aus, deren Zugriffsrechte Sie interessieren.
4
Klicken Sie f,r jeden ausgew!hlten Objekttyp auf die Schaltfl!che Optionen und stellen Sie sicher, dass das Kontrollk!stchen Berechtigungen f1r Benutzer und Gruppen angekreuzt ist.
5
Starten Sie den Druckvorgang mit einem Klick auf die Schaltfl!che OK.
Eine Datenbank schtzen
Der Datenbank-Dokumentierer benDtigt einen Moment, um die Informationen zusammenzustellen. Anschließend Dffnet er die Seitenansicht eines Berichts, der die zu dokumentierenden Informationen enth!lt. Sie kDnnen dem Bericht die Zugriffsberechtigungen von Benutzern und Gruppen f,r jedes einzelne Objekt der Datenbank entnehmen. Weitere Hinweise zum Datenbank-Dokumentierer finden Sie weiter unten in diesem Kapitel.
Sicherungsmaßnahmen testen Eine gute MDglichkeit zum Test der Sicherungsmaßnahmen besteht darin, eine !hnliche Arbeitsgruppen-Informationsdatei wie nach der Installation von Access herzustellen. Gehen Sie dazu wie folgt vor: 1
Beenden Sie Access.
2
Starten Sie den Arbeitsgruppen-Administrator von Access.
3
Erstellen Sie eine neue Arbeitsgruppe (z.B. unter dem Dateinamen System.mdw) ohne Arbeitsgruppen-Code.
4
Starten Sie Access.
5
Rffnen Sie die gesch,tzte Datenbank.
Wenn der Schutz der Datenbank erfolgreich war, dann kDnnen Sie die Datenbank nicht mehr Dffnen. Wenn Sie bei einem erfolgreichen Schutz wieder auf die Datenbank zugreifen wollen, dann m,ssen Sie sich wieder der urspr,nglichen Arbeitsgruppe anschließen. Gehen Sie dazu wie folgt vor: 1
Beenden Sie Access.
2
Starten Sie den Arbeitsgruppen-Administrator.
3
Klicken Sie auf die Schaltfl!che Anschließen.
4
Klicken Sie auf die Schaltfl!che Durchsuchen.
5
W!hlen Sie den Namen der Arbeitsgruppen-Informationsdatei (z.B. Sicherheit.mdw) aus der Liste, die die benDtigten Einstellungen f,r Benutzer, Benutzergruppen und KennwDrter enth!lt.
6
Beenden Sie den Arbeitsgruppen-Administrator.
7
Starten Sie Access und melden Sie sich mit dem Namen des neuen Benutzers (z.B. Chef) und dessen Kennwort (z.B. Kraft) an. 591
Eine Datenbank verwalten
Fehlersuche
Wenn Access hingegen das Rffnen gesch,tzter Objekte erlaubt, war das Sch,tzen der Datenbank erfolglos. In diesem Fall haben Sie wahrscheinlich vergessen, einem der von Access standardm!ßig angelegten Benutzer oder Benutzergruppen die Zugriffsrechte f,r die Datenbank zu entziehen. Gehen Sie dann wie folgt vor: 1
Beenden Sie Access.
2
Schließen Sie sich im Arbeitsgruppen-Administrator wieder der urspr,nglichen Arbeitsgruppe (z.B. Sicherheit.mdw) an.
3
Starten Sie Access.
4
Melden Sie sich mit dem Benutzernamen Chef an.
5
W!hlen Sie den Befehl Extras > Zugriffsrechte > Benutzer- und Gruppenberichtigungen aus der Men,leiste und markieren Sie das Register Berechtigungen.
6
Entziehen Sie allen Benutzern und Gruppen außer dem Benutzer Chef und der Gruppe Administratoren die Zugriffsrechte f,r die aktuelle Datenbank und ihre Objekte.
7
F,hren Sie den Test der Wirksamkeit Ihrer Schutzmaßnahmen erneut durch.
Sollte die Datenbank immer noch nicht gesch,tzt sein, suchen Sie nach weiteren Fehlerquellen.
Eine Datenbank dokumentieren Im Laufe Ihrer Arbeit mit einer Datenbank w!chst die Anzahl der in ihr gespeicherten Objekte st!ndig. So wird die Menge der Tabellen, Abfragen, Formulare, Berichte, Makros und Module schnell un,bersichtlich. Hiervon ausgenommen sind die Datenzugriffsseiten, da diese außerhalb der Datenbank gespeichert werden. Vielleicht ist es Ihnen ja auch schon so gegangen: Sie entwerfen gerade ein Formular und wissen nicht mehr genau, welche Abfrage die gew,nschten Daten bereitstellt. Sie haben zwar die MDglichkeit, eine Liste der Abfragenamen abzurufen, deren Inhalte kDnnen Sie jedoch nicht einsehen. Hier kann eine Dokumentation aller Abfragen gute Dienste leisten.
Datenbank-Dokumentierer starten
Das Dokumentieren von Datenbankobjekten erfolgt ,ber den Befehl Extras > Analyse > Dokumentierer. Der Befehl startet den Datenbank-Dokumentierer von Access. Dieser Befehl Dffnet den gleichnamigen Dialog. Mit ihm kDnnen Sie eines oder mehrere Objekte, Objekttypen oder die gesamte Datenbank zur Dokumentation ausw!hlen. Access markiert ausgew!hlte Objekte jeweils durch einen Haken.
592
Eine Datenbank dokumentieren
Abb. 9.76 Der Datenbank-Dokumentierer
Pber die Schaltfl!che Optionen kDnnen Sie f,r jeden der ausgew!hlten Objekttypen einstellen, welche Informationen gedruckt werden sollen. Die Schaltfl!che Dffnet den Dialog Definition drucken, dessen Einstellungen vom gew!hlten Objekttyp abh!ngen. So sind beispielsweise die Einstellungen bei Abfragen andere als bei Formularen. Die Einstellungen sind aber selbsterkl!rend und brauchen daher nicht weiter erl!utert zu werden.
Optionen
Abb. 9.77 Optionen f r die Dokumentation von Abfragen
Ein Klick auf die Schaltfl!che OK startet das Dokumentieren. Access Dffnet dann die Seitenansicht eines Berichts zur Dokumentation der Datenbank und ihrer Objekte. Das kann unter Umst!nden eine Weile dauern. Sie sollten das Dokumentieren einer Datenbank daher mDglichst vor grDßeren Arbeitspausen starten.
Definition drucken
593
Eine Datenbank verwalten
Abb. 9.78 Seitenansicht einer Abfragedokumentation
Dokumentation drucken
Um die Dokumentation vollst!ndig zu drucken, klicken Sie auf das Drucken-Symbol. Alternativ kDnnen Sie mit dem Befehl Datei > Drucken den gleichnamigen Dialog Dffnen und damit bestimmte zu druckende Seitenzahlen eingeben. Als dritte Alternative besteht die MDglichkeit, den Bericht durch die Auswahl eines Eintrags aus dem Symbol Office-Verkn1pfungen in Word oder Excel weiterzubearbeiten oder zu analysieren.
Eine Datenbank replizieren Die Praxis erfordert es manchmal, dass mehrere Benutzer mit denselben Daten arbeiten m,ssen. Dabei sind zwei F!lle zu unterscheiden. Wenn die Benutzer gleichzeitig mit derselben Datenbank arbeiten sollen, ist ein Netzwerk erforderlich. Weitere Hinweise zum Einsatz von Access in Netzwerken finden Sie in Kapitel 12 Access im Netzwerk dieses Buchs.
Was bedeutet Replizieren? Der zweite Fall ist vor allem dadurch gekennzeichnet, dass zwischen den PCs, auf denen mit der Datenbank gearbeitet wird, zeitweise keine Verbindung besteht. Ein typisches Beispiel ist der parallele Einsatz einer Adressdatenbank auf dem station!ren PC im B,rosekretariat und auf dem mobilen PC f,r unterwegs.
594
Eine Datenbank replizieren
Hier sieht der Ablauf typischerweise so aus, dass Sie vor dem Verlassen des B,ros Ihre Datenbank auf den tragbaren PC kopieren. W!hrend der Abwesenheit aus dem B,ro werden die Daten dort verarbeitet. Nach der R,ckkehr kopieren Sie die Datenbank dann vom tragbaren auf den station!ren PC. Dieser Ablauf ist weniger ein technisches als ein organisatorisches Problem. Schwierigkeiten sind n!mlich fr,hestens dann zu erwarten, wenn Sie das Kopieren der einen oder der anderen Datenbank einmal vergessen sollten. Sie verf,gen dann ,ber zwei Kopien der Datenbank, in denen sich unter Umst!nden jeweils dringend benDtigte Daten befinden. Dieses Problem tritt auch dann auf, wenn w!hrend Ihrer Abwesenheit aus dem B,ro im Sekretariat weiterhin mit der Datenbank gearbeitet werden soll. Eine solche Konstellation ist vor allem dadurch gekennzeichnet, dass auf zwei verschiedenen PCs Daten entstehen, die nachher zusammengef,hrt werden m,ssen. Im Beispiel kann das Zusammenf,hren der Daten auch nach Ihrer R,ckkehr ins B,ro erfolgen. Dieses Problem des Datenabgleichs ist mit Datenbanksystemen ohne automatische Replikation nur schwierig zu lDsen. Es erfordert eine verh!ltnism!ßig aufwendige und deshalb kostenintensive Programmierung, den Datenabgleich zwischen verschiedenen Datenbanken zu automatisieren. Das ist wohl der Grund daf,r, dass entsprechende Datenbankanwendungen bisher nur selten zu finden sind. Access XP dagegen verf,gt ,ber eine MDglichkeit zum automatischen Datenabgleich zwischen Datenbanken auf verschiedenen PCs. Durch das Replizieren kDnnen Sie mehrere Kopien einer Datenbank anfertigen. Diese so genannten Replikate kDnnen Sie dann auf verschiedenen PCs parallel zur Datenbearbeitung einsetzen.
Datenbanken replizieren
Da Access die Datenbanken w!hrend des Replizierens um spezielle Systemobjekte erg!nzt, kann der Datenabgleich zwischen den Replikaten und der Ursprungsdatenbank sp!ter weitgehend automatisch erfolgen. Man spricht in diesem Zusammenhang vom Synchronisieren von Datenbanken.
Datenbanken synchronisieren
Sie m,ssen das Datenbank-Kennwort entfernen, bevor Sie eine Datenbank replizieren kDnnen. Bei aktiviertem Sicherheitssystem benDtigen Sie die Zugriffsrechte eines Administrators, damit Sie die Datenbank replizieren kDnnen.
Hinweis
Eine Datenbank replizieren Was sich in der Theorie unter Umst!nden kompliziert anhDrt, ist in der Praxis eine ziemlich einfache Sache. Zum Replizieren einer Datenbank gehen Sie wie folgt vor: 1
Rffnen Sie die zu replizierende Datenbank.
2
W!hlen Sie den Befehl Extras > Replikation > Datenbank in Replikat konvertieren aus der Men,leiste.
3
Best!tigen Sie den Hinweis, dass die Datenbank geschlossen werden muss, mit einem Klick auf die Schaltfl!che Ja.
595
Eine Datenbank verwalten
Abb. 9.79 Eine Datenbank replizieren
Es scheint zugegebenermaßen etwas seltsam zu sein, dass Sie die Datenbank erst Dffnen m,ssen, um unmittelbar das Schließen der Datenbank zu best!tigen. Die Ursache hierf,r besteht kurzerhand darin, dass das Men, Extras > Replikation erst dann verf,gbar ist, wenn eine Datenbank geDffnet wurde.
Abb. 9.80 Sicherungskopie erstellen
Ein weiterer Dialog macht darauf aufmerksam, dass Access auf Wunsch eine Sicherungskopie Ihrer Datenbank erstellen kann. Wenn Sie das wollen, klicken Sie auf die Schaltfl!che Ja. Sie finden die Sicherungskopie dann anschließend unter dem gleichen Namen wie die Ursprungsdatenbank, aber mit der Erweiterung .bak (z.B. Projekte.bak).
Abb. 9.81 Datenbank in Replikat konvertieren
Nachdem Sie den Dialog mit einem Klick auf eine der Schaltfl!che Ja best!tigt haben, fertigt Access eine Sicherungskopie Ihrer Datenbank an und beginnt mit dem Konvertieren der Ursprungsdatenbank. W!hrend dieses Vorgangs erg!nzt Access die Datenbank um eine Reihe von Systemobjekten, die das sp!tere Synchronisieren von Datenbanken erst ermDglichen. 596
Eine Datenbank replizieren
Abb. 9.82 Speicherort des neuen Replikats
Nachdem das Konvertieren der Ursprungsdatenbank abgeschlossen ist, Dffnet Access den Dialog Standort des neuen Replikats, mit dem Sie den Namen und den Pfad der Datenbankkopie bestimmen. Es kann sich dabei um einen Standort auf dem aktuellen PC oder einem via Modem oder Netzwerkkabel verbundenen anderen PC handeln. W!hlen Sie einen Ordner aus, geben Sie einen Dateinamen ein und klicken Sie auf die Schaltfl!che OK, damit Access das Replikat fertigstellt. Durch Bet!tigen der Schaltfl!che Priorit7t Dffnen Sie den gleichnamigen Dialog zum Festlegen der Priorit!t des neu erstellten Replikats. F,r jedes Replikat wird eine Priorit!t festgelegt. Falls es zu Konflikten bei der Synchronisation der Datenbanken kommt, entscheidet die hDhere Priorit!t ,ber den Sieger des Konflikts. Weitere Informationen zu Konflikten bei der Synchronisation von replizierten Datenbanken erhalten Sie weiter unten in diesem Kapitel. Wenn Sie die Option L4schen sperren aktivieren, verhindern Sie das LDschen von Datens!tzen aus dem Replikat.
Priorit(t
L-schen sperren
Abb. 9.83 Zus!tzliches Replikat anlegen
597
Eine Datenbank verwalten
Es vergeht wieder einige Zeit, bis Access das zus!tzliche Replikat erstellt hat. Danach zeigt es einen abschließenden Dialog an, der das erfolgreiche Replizieren der Datenbank best!tigt. Nach Erstellung des Replikats ist das Schließen und erneute Rffnen der replizierten Datenbank erforderlich. Nach Bet!tigen der Schaltfl!che mit der Beschriftung Ja wird Access dies automatisch erledigen.
Abb. 9.84 Ein Dialog best!tigt das erfolgreiche Replizieren der Datenbank
Design Master und Replikat
Durch das Replizieren erhalten Sie also zwei replizierte Datenbanken. Zur besseren Unterscheidung wird die replizierte Ursprungsdatenbank als Design Master (hier: Projekte.mdb) und die zweite Datenbank als Replikat (hier: Replikat von Projekte.mdb) bezeichnet. Sie erkennen die Design-Master-Datenbank daran, dass Access in der Titelzeile des Datenbankfensters den Text Design Master anzeigt. In der Titelzeile von Replikaten wird hingegen der Text Replikat angezeigt. Weiterhin werden die Objekte der Datenbank im Datenbankfenster durch neue Symbole gekennzeichnet.
Abb. 9.85 Aussehen des Datenbankfensters der Design-Master-Datenbank
598
Eine Datenbank replizieren
W!hrend es stets nur eine Design-Master-Variante einer Datenbank geben kann, sind mehrere Replikate mDglich. Um weitere Replikate zu erzeugen, Dffnen Sie die Design-Master-Datenbank und w!hlen den Befehl Extras > Replikation > Datenbank in Replikat konvertieren erneut aus der Men,leiste. Da die Urspr,ngliche bereits in eine Design-Master-Datenbank konvertiert wurde, Dffnet Access diesmal direkt den Dialog Standort des neuen Replikats. Geben Sie einen Dateinamen ein und klicken Sie auf die Schaltfl!che OK, damit Access das Replikat erstellt. Access f,gt einer Datenbank w!hrend des Replizierens Systemobjekte hinzu, die die GrDße der Datenbankdatei erheblich zunehmen lassen. Das f,hrt gleichzeitig zu einer geringeren Arbeitsgeschwindigkeit. Dieser Effekt wird dadurch verst!rkt, dass der Verwaltungsaufwand f,r die Systemobjekte weitere Ressourcen in Anspruch nimmt. Sie sollten eine Datenbank deshalb nur replizieren, wenn Sie von der MDglichkeit der Datensynchronisation Gebrauch machen.
Weitere Replikate erstellen
Hinweis
Mit replizierten Datenbanken arbeiten Sie kDnnen die replizierten Datenbanken nun unabh!ngig voneinander Dffnen und Daten bearbeiten. Es spielt dabei keine Rolle, ob sich die Datenbanken auf einem oder mehreren PCs befinden. W!hrend einer Testphase kDnnen Sie die Design-Master-Datenbank und das Replikat daher auf einem PC verwalten. In der sp!teren Praxis wird es jedoch ,blicherweise so sein, dass sich die Datenbanken auf verschiedenen PCs befinden. Probieren Sie das doch gleich einmal aus. Rffnen Sie zun!chst die Design-MasterDatenbank Projekte.mdb, um einige Datens!tze der Personaltabelle zu !ndern. Sie kDnnen auch neue Datens!tze eingeben und bestehende Datens!tze lDschen. Rffnen Sie anschließend die Datenbank Replikat von Projekte.mdb und !ndern Sie auch hier einige Datens!tze.
Abb. 9.86 In Replikaten knnen Sie den Entwurf von Objekten nicht !ndern
Sie werden w!hrend der Arbeit mit den beiden Datenbanken feststellen, dass Access das 0ndern des Entwurfs von Datenbankobjekten nur in der Design-MasterDatenbank erlaubt. Wenn Sie von der MDglichkeit Gebrauch machen, ,bertr!gt Access die ge!nderten Objektentw,rfe w!hrend des Synchronisierens in die replizierten Datenbanken. In den Replikaten kDnnen Sie nur die Daten bearbeiten. Den Versuch, ein Datenbankobjekt in der Entwurfsansicht zu Dffnen, quittiert Access hier mit einer Meldung, dass das nicht mDglich ist.
Den Entwurf von Objekten !ndern
599
Eine Datenbank verwalten
Abb. 9.87 &ndern des gleichen Datensatzes in der Design-Master- und der replizierten Datenbank
Konfliktl-sung auf Datensatzebene
Ausschlaggebend f,r den Verlauf der Synchronisation ist, welchen Wert Sie f,r die Tabelleneigenschaft Konfliktl4sung auf Datensatzebene eingegeben haben. Als Beispiel dient hier die Tabelle Adressen. Wenn Sie den Namen der Tabelle im Datenbankfenster markieren und im Kontextmen, den Eintrag Eigenschaften w!hlen, Dffnet sich das Fenster Eigenschaften f1r Adressen. Ganz unten in diesem Fenster befindet sich die gesuchte Eigenschaft. Ist die Eigenschaft markiert, werden Konflikte bei der Synchronisation auf Datensatzebene gelDst, anderenfalls geschieht dies auf Spaltenebene. Die Art der KonfliktlDsung muss bereits vor dem Erstellen der Replikationen der Datenbank festgelegt werden. Da standardm!ßig die KonfliktlDsung auf Datensatzebene deaktiviert ist, kDnnen Sie zun!chst die KonfliktlDsung auf Spaltenebene testen. Sp!ter werden Sie in der Originaldatenbank die KonfliktlDsung auf Datensatzebene aktivieren, ein neues Replikat erstellen und erneut eine Test-Synchronisation durchf,hren.
Einen Datenkonflikt aufbauen
Um den Unterschied zwischen den beiden MDglichkeiten transparent zu machen und um das sp!tere Synchronisieren wirksam zu testen, kDnnen Sie an einem Datensatz in beiden Datenbanken unterschiedliche 0nderungen vornehmen. 0ndern Sie beispielsweise in der Design-Master-Datenbank Projekte.mdb die Straße von Ursula Meier von Bachstr. 19 in den Wert Bachweg 29. In der replizierten Datenbank Replikat von Projekte.mdb !ndern Sie den gleichen Datensatz der Adressentabelle. Belassen Sie hier aber die Straße von Ursula Meier auf den alten Wert Bachstr. 19. 0ndern Sie statt dessen das Feld PLZ und Ort auf den Wert 40211 D1sseldorf.
600
Eine Datenbank replizieren
Abb. 9.88 Eigenschaften der Tabelle Adressen
Außerdem !ndern Sie in der Design-Master-Datenbank sowie im Replikat der Datenbank den Wert der Straße von Horst M1ller. 0ndern Sie beispielsweise die Hausnummer im Design-Master auf 30 und im Replikat auf 40. Wenn die KonfliktlDsung auf Spaltenebene aktiviert ist, entsteht hier nur ein Konflikt. Der Datensatz, an dem in zwei verschiedenen Spalten 0nderungen vorgenommen wurden, wird in allen Replikaten mit den 0nderungen aktualisiert. Nur der Datensatz, der in beiden Replikaten in genau der gleiche Spalte ge!ndert wurde, ruft einen Konflikt hervor. Wenn die KonfliktlDsung auf Datensatzebene aktiviert ist, produzieren Sie hier zwei Konflikte. Der Grund daf,r ist, dass Sie im gleichen Datensatz der Tabelle in beiden Replikationen 0nderungen vorgenommen haben. Sie werden nun zun!chst die Synchronisation der beiden konfliktbehafteten Datenbanken vornehmen. Anschließend werden Sie neue Replikate erstellen, diesmal mit deaktivierter KonfliktlDsung auf Datensatzebene. In beiden F!llen werden Sie die KonfliktlDsung vornehmen, um den Unterschied feststellen zu kDnnen.
Replizierte Datenbanken synchronisieren Die Synchronisation dient der Zusammenf,hrung von mDglicherweise ge!nderten Daten aus mehreren replizierten Datenbanken. Sie erreichen damit, dass die Daten in replizierten Datenbanken auf den aktuellen Stand gebracht werden. Sie kDnnen das Synchronisieren ausgehend von der Design-Master-Datenbank oder einem Replikat vornehmen. Die folgende Auflistung beschreibt das Synchronisieren ausgehend von der Design-Master-Datenbank Projekte.mdb:
601
Eine Datenbank verwalten
Design-MasterDatenbank !ndern
1
Rffnen Sie die Datenbank Projekte.mdb.
2
W!hlen Sie den Befehl Extras > Replikation > Jetzt synchronisieren aus der Men,leiste.
3
Geben Sie den Pfad und den Namen der Datenbank Replikat von Projekte.mdb ein, mit der Access synchronisieren soll.
4
Klicken Sie auf die Schaltfl!che OK.
5
Best!tigen Sie im erscheinenden Dialog das Schließen des Hauptentwurfs vor der Synchronisation.
Das Kontrollk!stchen Legt ... als Design-Master fest erscheint nur, wenn eine der beiden zu synchronisierenden Datenbanken die Design-Master-Datenbank ist. Sie kDnnen die jeweils andere der beiden Datenbanken zur Design-Master-Datenbank umfunktionieren, indem Sie das Kontrollk!stchen ankreuzen, bevor Sie auf die Schaltfl!che OK klicken. Die Optionen Im Hintergrund mit allen Synchronizern und Im Hintergrund mit Synchronizer werden interessant, wenn Sie mit mehr als zwei Kopien der gleichen Datenbank arbeiten.
Abb. 9.89 Synchronisieren einer Datenbank
Access f,hrt das Synchronisieren der Datenbanken durch und best!tigt den erfolgreichen Abschluss der Aktion in einem Dialog. Da einige 0nderungen erst nach dem Schließen und erneuten Rffnen der Datenbank sichtbar werden, klicken Sie auf die Schaltfl!che Ja. Access schließt die Datenbank und Dffnet sie erneut. Wenn die beiden synchronisierten Datenbanken Datenkonflikte enthalten, die durch das automatische Synchronisieren nicht gelDst werden konnten, weist Access in einem Dialog darauf hin. Mit einem Klick auf die Schaltfl!che Ja kDnnen Sie die Konflikte sofort lDsen. Bei einem Klick auf die Schaltfl!che Nein kDnnen Sie die Konflikte sp!ter ,ber die Auswahl des Befehls Extras > Replikation > Konflikte beheben bereinigen. 602
Eine Datenbank replizieren
Abb. 9.90 Hinweis auf Konflikte, die durch das Synchronisieren nicht gelst werden konnten
Datenkonflikte l&sen Konflikte entstehen, wenn zwei zu synchronisierende Datenbanken in dem gleichen Datensatz verschiedene Informationen enthalten. Access weist auf diese Konflikte unmittelbar nach der Synchronisation der Datenbanken hin. Sie kDnnen sie dann sofort lDsen oder sp!ter den Befehl Extras > Replikation > Konflikte beheben aus der Men,leiste w!hlen. Sie kDnnen nun die Konflikte lDsen, die Sie weiter oben konstruiert haben.
Abb. 9.91 Replikationskonflikte lsen
Der Microsoft-Replikations-Viewer enth!lt eine Liste mit Tabellen, in denen Konflikte durch die Synchronisation aufgetreten sind. Wenn Sie das oben beschriebene Beispiel verwenden, werden Sie es im Fall der KonfliktlDsung auf Spaltenebene mit einem und bei der KonfliktlDsung auf Datensatzebene mit zwei Konflikten zu tun haben. Abbildung 9.91 zeigt z.B. das Vorhandensein von zwei Konflikten in der Tabelle Adressen an. Es handelt sich dabei in der Regel um Datenkonflikte. Manch-
Replikations-Viewer
603
Eine Datenbank verwalten
mal gibt es aber auch Konflikte durch 0nderungen am Entwurf von Objekten. Um einen Konflikt zu lDsen, markieren Sie ihn in der Liste und klicken auf die Schaltfl!che Konflikte l4sen.
Abb. 9.92 Datenkonflikte lsen
Access Dffnet dann einen Dialog, der den Datensatz aus der aktuellen Datenbank (hier: Projekte.mdb) und der Datenbank, mit der sie synchronisiert wurde (hier: Replikat von Projekte.mdb) gegen,berstellt. Es gibt nun vier mDgliche LDsungen f,r den Konflikt:
604
1
Vorhandene Daten beibehalten: Die Daten in Replikat 1 werden beibehalten.
2
9berarbeitete Daten beibehalten: Sie !ndern die Daten in Replikat 1. Die ge!nderten Daten werden bei der n!chsten Synchronisation in Replikat 2 ,bernommen.
3
Mit Konfliktdaten 1berschreiben: Die Daten in Replikat 2 werden beibehalten und bei der n!chsten Synchronisation in Replikat 1 ,bernommen.
4
Mit 1berarbeiteten Daten 1berschreiben: Sie !ndern die Daten in Replikat 2. Die ge!nderten Daten werden bei der n!chsten 0nderung in Replikat 1 ,bernommen.
Eine Datenbank replizieren
Haben Sie Option 1 oder 3 gew!hlt, wird der entsprechende Datensatz beibehalten. Sie m,ssen dann lediglich erneut die Synchronisation starten, um die ausgew!hlten 0nderungen vorzunehmen. Haben Sie hingegen Option 2 oder 4 gew!hlt, erscheinen eines oder mehrere der Felder einer der beiden Datenbanken weiß unterlegt. Sie sind damit aufgefordert, die 0nderung an den konfliktbehafteten Daten an Ort und Stelle vorzunehmen. Auch in diesem Fall ist eine erneute Synchronisation erforderlich. Wenn Sie eine der Optionen ausgew!hlt haben, bet!tigen Sie die Schaltfl!che L4sen. Der Konflikt wird dann Ihren Angaben entsprechend gelDst. Sie kDnnen die LDsung des Konflikts auch durch Bet!tigen der Schaltfl!che Verschieben vorerst auf sich beruhen lassen. Anschließend wird – soweit vorhanden – der n!chste Konflikt angezeigt. Wenn Sie w!hrend der Bearbeitung eines Konflikts zu einer anderen Applikation und anschließend wieder zu Access zur,ckwechseln, werden Sie mDglicherweise das KonfliktlDsungsfenster nicht wiederfinden. Sie kDnnen dann am rechten Rand der Taskleiste doppelt auf das Konflikt-Symbol klicken, um den Konflikt weiterzubearbeiten. Im Microsoft-Replikations-Viewer wird einer der Konfliktdatens!tze auf der linken und einer auf der rechten Seite angezeigt. Der Datensatz auf der linken Seite ist immer der bestehende Datensatz und der Datensatz auf der rechten Seite der Konfliktdatensatz. 0ltere Access-Versionen zogen zur Bestimmung des bestehenden und des Konfliktdatensatzes zuerst die Anzahl der 0nderungen der Datens!tze und dann den Zufall hinzu. Bezogen auf das Beispiel bedeutet dies, dass der Datensatz der Design-Master-Datenbank Projekte immer auf der linken Seite zu finden sein wird. Bei Access XP wird hierzu f,r jedes Replikat eine Priorit!t festgelegt. Die DesignMaster-Datenbank erh!lt den Priorit!tswert 100. Dies ist der hDchste Priorit!tswert, der an ein Replikat vergeben werden kann. Die Priorit!t wird im Dialog Speicherort des neuen Replikats festgelegt. Standardm!ßig ist dort der Wert Default angegeben. Das heißt, dass jedes neue Replikat einen Priorit!tswert von 90% der Priorit!t des zuletzt erstellten Replikats erh!lt. Sie kDnnen nat,rlich auch selbst ein einen Wert angeben.
Hinweis
Welcher Datensatz ist der existierende und welcher der Konfliktdatensatz?
Priorit!t
Datenbanken ber den Aktenkoffer von Windows replizieren und synchronisieren Bisher haben Sie das Replizieren und Synchronisieren von Datenbanken ,ber die Men,befehle von Access eingeleitet. Wenn Sie h!ufig mit Ihrem tragbaren PC unterwegs sind oder aus einem anderen Grund regelm!ßig Daten zwischen zwei PCs austauschen, dann haben Sie sich vielleicht schon an den Aktenkoffer von Windows gewDhnt. Der Aktenkoffer ist ein Hilfsmittel, mit dem Sie den Austausch von Dateien zwischen verschiedenen PCs automatisieren kDnnen.
Der Aktenkoffer von Windows
605
Eine Datenbank verwalten
Abb. 9.93 Datenbank ber den Aktenkoffer replizieren
Eine Datenbank
ber den Aktenkoffer von Windows replizieren
606
Da sich Access bei der Installation in den Aktenkoffer von Windows einklinkt, kDnnen Sie die Replikation und die Synchronisation von Datenbanken auch mit dem Aktenkoffer vornehmen. Wenn Sie eine Datei mit der Erweiterung .mdb in den Aktenkoffer kopieren, repliziert Access die Datenbank automatisch. Außerdem schaltet sich Access bei der Synchronisation von Dateien ,ber den Aktenkoffer ein. Der Gebrauch des Aktenkoffers l!sst sich am besten anhand des Beispiels eines tragbaren und eines station!ren PC erl!utern. Um eine Datenbank ,ber den Aktenkoffer zu replizieren, gehen Sie wie folgt vor: 1
Stellen Sie sicher, dass der Aktenkoffer auf Ihrem tragbaren PC installiert ist.
2
Geben Sie das Laufwerk des station!ren PC frei, auf dem sich die zu synchronisierende Datenbank befindet.
3
Stellen Sie eine Verbindung zwischen Ihrem tragbaren und Ihrem station!ren PC her.
4
Rffnen Sie auf Ihrem tragbaren PC den Aktenkoffer von Windows.
5
Rffnen Sie auf dem tragbaren PC z.B. mit dem Explorer von Windows den Ordner des station!ren PC, in dem sich die zu synchronisierende Datenbank befindet.
6
Ziehen Sie die Datenbankdatei aus dem Explorer in den Aktenkoffer.
Eine Datenbank aufteilen
Abb. 9.94 Datenbank ber den Aktenkoffer synchronisieren
Mit diesen Schritten kopieren Sie die Datenbank von Ihrem station!ren PC in den Aktenkoffer des tragbaren PC. Da sich Access bei der Installation automatisch in den Aktenkoffer von Windows eingeklinkt hat, bezieht Windows es beim Kopieren einer .mdb-Datei in den Aktenkoffer automatisch ein. Das f,hrt dazu, dass beim Kopieren einer Datenbank in den Aktenkoffer dieselben Dialoge erscheinen wie beim Replizieren ,ber die Men,befehle von Access. Sie werden daher gefragt, ob Sie vor dem Replizieren eine Sicherheitskopie der Datenbank anlegen wollen und welche Datenbankkopie der Design Master sein soll. Wenn sich die Datenbank erst einmal im Aktenkoffer des tragbaren PC befindet, kDnnen Sie die Verbindung zwischen den beiden Rechnern trennen. Die Datenbearbeitung erfolgt schließlich ,ber einen Doppelklick auf die .mdb-Datei im Aktenkoffer. Alternativ kDnnen Sie auch eine Verkn,pfung auf dem Desktop herstellen. Es ist jedoch wichtig, dass die Datei selbst im Aktenkoffer bleibt. Nur so ist gew!hrleistet, dass Access nach dem erneuten Herstellen der Verbindung zwischen beiden PCs die Synchronisation der Datenbanken erledigen kann. Die Integration von Access und des Aktenkoffers von Windows geht so weit, dass Sie die Synchronisation von Datenbanken auch ,ber den Befehl Aktenkoffer > Alles aktualisieren des Aktenkoffers vornehmen kDnnen. Auch hier schaltet sich Access ein und gew!hrleistet die ordnungsgem!ße Synchronisation der Design-Mastermit der Replikat-Datenbank.
Datenbanken ber den Aktenkoffer synchronisieren
Eine Datenbank aufteilen Access speichert alle Objekte einer Datenbank in der .mdb-Datei. Unter bestimmten Voraussetzungen ist es g,nstig, die Datentabellen aus der .mdb-Datei zu extrahieren und in einer eigenen Datenbank zu speichern. In Netzwerken kDnnen Sie auf diese Weise die Menge der Daten reduzieren, die ,ber das Netzwerk transportiert werden m,ssen.
607
Eine Datenbank verwalten
Bei distribuierten Anwendungen erleichtert das Aufteilen von Datenbanken das Update auf neue Programmversionen. Entwickler brauchen hier nur die Datenbankdatei mit den entworfenen Objekten auf die Festplatte des Anwenders zu kopieren und die dort vorhandenen Datentabellen zu verkn,pfen. Zum Aufteilen einer Datenbank gehen Sie wie folgt vor: 1
Rffnen Sie die Datenbank.
2
W!hlen Sie den Befehl Extras > Datenbankdienstprogramme > Assistent zur Datenbankaufteilung aus der Men,leiste.
Abb. 9.95 Eine Datenbank aufteilen
Back-End-Datenbank
Der Assistent nimmt das Aufteilen der Datenbank automatisch vor. Nachdem der Vorgang abgeschlossen ist, enth!lt die aktuelle Datenbank nur noch Abfragen, Formulare, Berichte, Makros und Module. Der Assistent hat die Datentabellen in eine zweite Datenbank kopiert, deren Dateiname mit der Endung _be (f,r englisch: back end) gekennzeichnet ist. Da der Assistent f,r die Datentabellen automatisch Verkn,pfungen in der aktuellen Datenbank erstellt, funktioniert die Datenbank genauso wie vorher. Sie kDnnen die Datentabellen anschließend auf ein gemeinsames Netzwerk-Laufwerk kopieren, damit Anwender von verschiedenen PCs darauf zugreifen kDnnen. Da sich hierdurch der Pfad der verkn,pften Tabellen !ndert, m,ssen Sie die Verkn,pfungen anschließend ,ber den Tabellenverkn,pfungs-Manager aktualisieren. Weitere Hinweise zum Einsatz von Access in Netzwerken finden Sie in Kapitel 12 Access im Netzwerk dieses Buchs sowie zum Verkn,pfen von Tabellen und zum Tabellenverkn,pfungs-Manager in Kapitel 10 Datenaustausch.
608
Die Leistung einer Datenbank analysieren
Die Leistung einer Datenbank analysieren Access verf,gt ,ber ein Werkzeug, mit dem Sie die Leistung einer Datenbank und ihrer Objekte analysieren und optimieren kDnnen. Das f,hrt unter Umst!nden zu einer gesteigerten Arbeitsgeschwindigkeit. Ein guter Zeitpunkt f,r f,r das Analysieren einer Datenbank ist dann erreicht, wenn der Entwurf und Test der Datenbank weitgehend abgeschlossen ist und Sie mit der Eingabe und Bearbeitung echter Daten beginnen wollen. Um die Leistung einer Datenbank zu analysieren, gehen Sie wie folgt vor: 1
Rffnen Sie die Datenbank.
2
W!hlen Sie den Befehl Extras > Analyse > Leistung aus der Men,leiste.
Assistent zur Leistungsanalyse
Abb. 9.96 Der Assistent zur Leistungsanalyse
Access startet dann den Assistenten zur Leistungsanalyse, mit dem Sie zun!chst die Datenbankobjekte ausw!hlen, deren Leistung Sie analysieren wollen. Um alle Objekte zu analysieren, wechseln Sie in das Register Alle und klicken dann auf die Schaltfl!che Alle ausw7hlen. Starten Sie die Leistungsanalyse mit einem Klick auf die Schaltfl!che OK.
Alle Objekte analysieren
In Abh!ngigkeit von der Arbeitsgeschwindigkeit Ihres PCs und der Anzahl der ausgew!hlten Objekte kann die Leistungsanalyse einige Zeit in Anspruch nehmen. Danach Dffnet der Assistent eine Liste von Empfehlungen, Vorschl!gen und Ideen, wie Sie die Leistung Ihrer Datenbank steigern kDnnen. Die Liste ist sehr informativ, da der Assistent im unteren Teil des Dialogs jeweils weitere Anmerkungen zu dem markierten Listeneintrag anzeigt. Durch das Lesen der Anmerkungen kDnnen Sie viel ,ber Access lernen.
609
Eine Datenbank verwalten
Abb. 9.97 Ergebnis der Leistungsanalyse
Neben der Information bietet der Leistungsanalyse-Assistent jedoch mehr. Viele der vorgeschlagenen Verbesserungen kDnnen Sie n!mlich mit einem Klick auf die Schaltfl!che Optimieren direkt umsetzen lassen. Der Assistent macht das weitgehend automatisch. Es kommt lediglich vor, dass Sie gelegentlich zur Eingabe eines Namens f,r ein Datenbankobjekt aufgefordert werden. Nachdem Sie eine Optimierung haben durchf,hren lassen, markiert der Assistent den entsprechenden Listeneintrag mit einem H!kchen.
610
Datenaustausch Die Zwischenablagen von Windows und Office XP Tabellen verknpfen Dateien und Tabellen importieren Tabellen exportieren Seriendruck mit Word Daten in Word weiterbearbeiten Daten in Excel analysieren HTML exportieren, importieren und verknpfen Exportieren in XML-Dokumente
612 615 618 634 634 636 637 638 641
10
Datenaustausch
Access kann Daten ,ber die Zwischenablage sowie das Verkn,pfen, Importieren und Exportieren mit anderen Anwendungsprogrammen oder Dateiformaten austauschen. Mit dem Verkn,pfen und Importieren kDnnen Sie Daten, die in Fremdformaten vorliegen, f,r die Weiterbearbeitung mit Access aufbereiten. Das Exportieren ist die Aufbereitung von Daten aus einer Access-Datenbank f,r die Weiterbearbeitung mit einer fremden Applikation. Die beiden Abschnitte Serienbriefe mit Word und Daten in Excel analysieren am Ende dieses Kapitels beschreiben besondere Techniken f,r den Datenaustausch mit Microsoft Word und Microsoft Excel. Der Austausch von Bildern und Objekten mit anderen Windows-Programmen erfolgt unter Windows ,ber die Zwischenablage und OLE. Sie finden die Beschreibung dieser Techniken in Kapitel 11 Mit Bildern und anderen Objekten arbeiten.
Hinweis
Die Zwischenablagen von Windows und Office XP Mit der Einf,hrung von Office XP gibt es zwei verschiedene Zwischenablagen, die bereits bekannte Windows-Zwischenablage und die Office-Zwischenablage. Die Benutzung der Office-Zwischenablage ist dabei auf die Office-Anwendungen Access, Excel, Word und PowerPoint begrenzt. Der Datenaustausch mit anderen Windows-Programmen erfolgt weiterhin mit der Windows-Zwischenablage. Dabei arbeiten die beiden Zwischanablagen allerdings gut zusammen.
Austausch unter Office-Programmen
Wenn Sie mit Office-XP-Anwendungen arbeiten, benutzen Sie die neue Office-Zwischenablage. Diese Zwischenablage ist wesentlich leistungsf!higer als die Windows-Zwischenablage. Sie erlaubt das Ablegen von bis zu 24 statt wie bisher einem Objekt in die Zwischenablage. Es gibt mehrere MDglichkeiten, die Office-Zwischenablage zu aktivieren, und zwar
Aktivierung der Office-Zwischenablage
,ber den Men,befehl Bearbeiten > Office-Zwischenablage oder durch zweifaches Ausf,hren des Kopierenvorgangs innerhalb derselben Office-Anwendung. Bei der zweiten MDglichkeit ist es egal, ob Sie zweimal dasselbe oder zwei unterschiedliche Objekte kopieren. Außerdem m,ssen die Kopiervorg!nge nicht unmittelbar aufeinander folgen. Nach der Aktivierung erscheint die Office-Zwischenablage in Form eines Fensters. Sie kDnnen die Zwischenablage aber auch in der Men,leiste verankern. Benutzen Sie die Office-Zwischenablage regelm!ßig, sollten Sie diese aus der Men,leiste lDsen. Sie haben dann st!ndig einen Pberblick die Objekte in der Office-Zwischenablage.
612
Die Zwischenablagen von Windows und Office XP
Wenn die Objekte der Zwischenablage einer Office-Anwendung entstammen, wird dies durch ein entsprechendes Symbol abgezeigt (siehe Abbildung 10.1). Wenn Sie den Mauszeiger ,ber ein Symbol bewegen, wird – wenn mDglich – der Inhalt des Objekts angezeigt. Sie kDnnen mit den ,blichen Methoden markierte Objekte wie Steuerelemente, Text usw. kopieren. Zu diesen Methoden gehDren der Befehl Bearbeiten > Kopieren aus der Men,leiste, die Schaltfl!che Kopieren aus der Symbolleiste sowie die Tastenkombination Sc. Dar,ber hinaus kDnnen Sie die Schaltfl!che Kopieren der Zwischenablage benutzen. Der kopierte Inhalt wird in den n!chsten verf,gbaren Platz der Zwischenablage abgelegt. Sind alle 24 Pl!tze belegt, wird das zuerst eingegebene Element nach vorheriger Sicherheitsabfrage gelDscht. Bitte beachten Sie, dass die Sicherheitsabfrage nur beim ersten LDschen ausgelDst wird. MDchten Sie ein Objekt der Zwischenablage abrufen, gehen Sie folgendermaßen vor: 1
Markieren Sie die Stelle, an der das Objekt eingef,gt werden soll.
2
Klicken Sie auf das gew,nschte Objekt.
Abb. 10.1 Die Zwischenablage im Einsatz
613
Datenaustausch
Austausch mit anderen WindowsProgrammen
Beim Austausch von Informationen mit anderen Windows-Programmen arbeiten die beiden Zwischenablagen von Office und Windows zusammen. Das heißt, dass Sie nach wie vor ein Objekt in einer Office-Anwendung kopieren und in einer Windows-Anwendung einf,gen kDnnen und umgekehrt. Der einzige Unterschied ist, dass Sie in den Office-Anwendungen auf bis zu 24, in den anderen Windows-Programmen jedoch nur auf das letzte kopierte Objekt zugreifen kDnnen. Andersherum f,hren Kopiervorg!nge in vielen anderen Windows-Anwendungen dazu, dass die kopierten Objekte in der Office-Zwischenablage abgelegt werden. Sie kDnnen also auch von Nicht-Office-Anwendungen mehrere Objekte in die OfficeZwischenablage einf,gen, jedoch nur das zuletzt kopierte Objekt abrufen.
Einschr!nkungen der Zwischenablage
Sie kDnnen nahezu alle Arten von Informationen mithilfe der Zwischenablage kopieren. Es gibt jedoch einige Informationen, die sich mit anderen Windows-Programmen nicht sinnvoll weiterbearbeiten lassen. So kDnnen Sie beispielsweise einen Formular- oder einen Berichtsentwurf mit Access in die Zwischenablage kopieren, diese aber nicht in ein Word-Dokument oder eine Excel-Kalkulationstabelle einf,gen. Word und Excel verf,gen n!mlich nicht ,ber die notwendigen Funktionen zur Bearbeitung von Formular- und Berichtsentw,rfen. Eine weitere Einschr!nkung der Office-Zwischenablage betrifft Access: Unter Access ist der Einsatz der Office-Zwischenablage nur bei der direkten Bearbeitung von Datenbankobjekten mDglich. Deshalb ist es nDtig, vor der Aktivierung der Zwischenablage eines dieser Objekte zu Dffnen. Beim Kopieren von Objekten der Datenbank wie Tabellen, Formularen usw. wird ausschließlich die Windows-Zwischenablage benutzt.
Tabellen und Abfragen kopieren
Datenblattansicht
Im Datenbankfenster von Access kDnnen Sie beispielsweise mit Bearbeiten > Kopieren eine ganze Tabelle oder Abfrage in die Zwischenablage kopieren und diese dann mit Bearbeiten > Einf1gen in ein Word-Dokument einf,gen. In der Datenblattansicht einer Tabelle, einer Abfrage oder eines Formulars kDnnen Sie einen oder mehrere Datens!tze in die Zwischenablage kopieren. Mithilfe der Maus kDnnen Sie auch nur einen Ausschnitt aus dem Datenblatt markieren. Klicken Sie dazu auf die linke untere Ecke einer Datenblattzelle und erweitern Sie die Markierung mit der Maus. In der Formularansicht kDnnen Sie ein Datenfeld oder den gesamten Datensatz markieren und in die Zwischenablage kopieren.
Daten einf gen
614
Mit Bearbeiten > Einf1gen kDnnen Sie Daten aus anderen Windows-Programmen in Access einf,gen. Access stellt beim Einf,gen automatisch sicher, dass die Integrit!t der Datenbank gew!hrleistet bleibt. So kDnnen Sie beispielsweise keine Textinformationen in ein Datumsfeld einf,gen.
Tabellen verknpfen
Abb. 10.2 Daten in der WindowsZwischenablage
Um den aktuellen Inhalt der Windows-Zwischenablage einzusehen, w!hlen Sie den Befehl Start > Programme > Zubeh4r > Systemprogramme > Zwischenablage aus der Taskleiste von Windows. Durch das Bet!tigen der D-Taste fertigen Sie eine Kopie des aktuellen Bildschirms in der Zwischenablage an. Mit der Tastenkombination AD kopieren Sie den Inhalt des aktuellen Fensters in die Zwischenablage. Beide Tasten leisten beim Erstellen von Dokumentationen f,r Datenbankanwendungen gute Dienste.
Den Inhalt der Zwischenablage einsehen
Tabellen verkn/pfen Beim Importieren einer Datei kopiert Access die Daten in eine Tabelle der aktuellen Datenbank. Das Importieren hat den Vorteil, dass Sie hier ,ber eine breite Palette von Datenformaten verf,gen. Das Verkn,pfen hat hingegen den Vorteil, dass die urspr,ngliche Tabelle erhalten bleibt. Access kann die verkn,pfte Tabelle genauso lesen und schreiben wie das Programm, mit dem die Tabelle erstellt wurde. In Netzwerken kDnnen sogar mehrere Programme gleichzeitig auf die Tabelle zugreifen und 0nderungen vornehmen. Verkn,pfte Tabellen lassen sich mit geringen Einschr!nkungen unter Access genauso bearbeiten wie die mit Access erstellten Tabellen. Sie kDnnen daher ebenfalls als Basis f,r Abfragen, Berichte und Formulare eingesetzt werden.
Vorteile des Verkn pfens von Tabellen
615
Datenaustausch
Einschr!nkungen beim Verkn pfen von Tabellen
Die meisten Einschr!nkungen ergeben sich aus der Tatsache, dass sich nur einige Eigenschaften verkn,pfter Tabellen !ndern lassen. So kDnnen Sie keine neuen Datenfelder hinzuf,gen, Felddatentypen !ndern oder Datenfelder lDschen. Außerdem kDnnen Sie f,r verkn,pfte Tabellen keine neuen Indizes definieren. Access ist jedoch in der Lage, bereits bestehende Indizes einzubinden. F,r verkn,pfte Tabellen lassen sich die Eigenschaften des Registers Nachschlagen und zus!tzlich folgende Eigenschaften !ndern: Format, Eingabeformat, Dezimalstellen und Beschriftung. Außerdem kDnnen Sie eingebundenen Tabellen neue Namen geben. W!hlen Sie dazu im Datenbankfenster den Befehl Umbenennen aus dem Kontextmen, der Tabelle. Access verwaltet die Eigenschaften und Namen der eingebundenen Tabellen intern. Das 0ndern der Eigenschaften oder das Umbenennen der Tabellen f,hrt daher zu keinen 0nderungen an der urspr,nglichen Tabelle.
Konvertieren von Felddatentypen
Tipp
Tabelle verkn pfen
Abb. 10.3 Tabelle verkn pfen
616
Die meisten Tabellenformate haben andere Felddatentypen als die mit Access erstellten Tabellen. Der folgende Abschnitt Dateien und Tabellen importieren beschreibt, wie Access die verschiedenen Felddatentypen konvertiert. Wenn Sie eine in einem Fremdformat vorliegende Tabelle nur noch mit Access bearbeiten wollen, sollten Sie sie importieren. Das Importieren hat gegen,ber dem Verkn,pfen den Vorteil, dass Sie auch die Tabellenstruktur !ndern kDnnen. Zum Verkn,pfen einer Tabelle w!hlen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen aus der Men,leiste. Access Dffnet dann den Dialog Verkn1pfen, ,ber den Sie einen Dateityp und die zu verkn,pfende Datei ausw!hlen.
Tabellen verknpfen
Der Dialog zeigt eine Auswahlliste der Dateiformate an, die sich verkn,pfen lassen. W!hlen Sie einen der Eintr!ge Microsoft Access, Textdateien, Microsoft Excel, Exchange, Outlook, Paradox, HTML-Dokumente, dBASE III, dBASE IV, dBASE 5 oder ODBC-Datenbanken. Microsoft hat f,r den Zugriff auf Tabellen ein !hnliches Konzept entwickelt wie f,r Druckertreiber. Es gibt eine offengelegte Spezifikation, so dass jeder Hersteller von Datenbankprogrammen einen Treiber entwickeln kann, der es Access und anderen Programmen erlaubt, seine Tabellenformate einzubinden, zu importieren und zu exportieren. Microsoft nennt dieses Konzept ODBC (f,r englisch: Open DataBase Connectivity).
Dateiformate
ODBC
Die Liste der Formate, die sich mit Access verkn,pfen, importieren oder exportieren lassen, wird sich daher st!ndig erweitern. Wenn Sie auf eine Tabelle zugreifen wollen, die noch nicht in der Liste enthalten ist, dann fragen Sie bei dem Hersteller des Datenbankprodukts, mit dem die Tabelle erstellt wurde, nach einem ODBC-Treiber. Sollte kein ODBC-Treiber aufzufinden sein, dann pr,fen Sie, ob Sie die Tabelle nicht importieren kDnnen. Die Liste der Formate, die Access importieren kann, ist grDßer als die Liste der Formate, die es verkn,pfen kann. Weitere Hinweise zu ODBC finden Sie in Kapitel 12 Access im Netzwerk. Nachdem Sie einen Dateityp ausgew!hlt haben, m,ssen Sie noch die zu verkn,pfende Datei markieren. Wenn Sie Ihre Auswahl mit einem Klick auf die Schaltfl!che Verkn1pfen abschließen, folgen unter Umst!nden weitere Dialoge. So erscheint beispielsweise beim Verkn,pfen von Microsoft-Access-Datenbanken ein Dialog mit einer Auswahlliste von Tabellen, die Sie verkn,pfen kDnnen. Der Aufbau und Inhalt dieser Dialoge ist vom gew!hlten Dateityp abh!ngig. Weitere Hinweise zu den Besonderheiten der verschiedenen Dateitypen finden Sie weiter unten im Abschnitt Dateien und Tabellen importieren. Sobald die Tabelle erfolgreich eingebunden wurde, erscheint sie im Datenbankfenster. Access kennzeichnet verkn,pfte Tabellen mit Symbol die auf den Typ der Herkunftsdatei schließen lassen. So werden beispielsweise Excel-Tabellen mit dem Excel-Logo und Access-Tabellen mit einem Datenblatt-Symbol markiert. Ein Pfeil markiert die Tabelle als verkn,pfte Tabelle. Sie kDnnen anschließend die Eigenschaften der Tabelle !ndern und gegebenenfalls einen neuen Namen vergeben. Access merkt sich beim Verkn,pfen von Tabellen das Laufwerk und den Pfad des Ordners, in dem die Tabelle gespeichert ist. Wenn Sie verkn,pfte Tabellen in einen anderen Ordner kopieren oder umbenennen, m,ssen Sie die Tabelleneinbindung aktualisieren. Gehen Sie dazu wie folgt vor: 1
W!hlen Sie den Befehl Extras > Datenbank-Dienstprogramme > Tabellenverkn1pfungs-Manager aus der Men,leiste.
2
Kreuzen Sie die Tabellen an, die Sie verlagert oder umbenannt haben, oder klicken Sie auf die Schaltfl!che Alle ausw7hlen, um alle verkn,pften Tabellen zu markieren.
Tipp
Tabelle ausw!hlen
Mit verkn pften Tabellen arbeiten
Der Tabellenverkn pfungsManager
617
Datenaustausch
3
Klicken Sie auf OK.
4
Folgen Sie den Anweisungen des Tabellenverkn,pfungs-Managers.
Abb. 10.4 Der Tabellenverkn3pfungs-Manager
Der Tabellenverkn,pfungs-Manager ,berpr,ft die Dateinamen und Pfade der verkn,pften Tabellen. Wenn er eine Tabelle nicht lokalisieren kann, fordert Sie ein weiterer Dialog zur Auswahl des Laufwerks, des Ordners und Namens der entsprechenden Tabelle auf. Die Dialoge sind selbsterkl!rend.
Dateien und Tabellen importieren Beim Importieren konvertiert Access die urspr,ngliche Datei und erzeugt daraus eine Access-Tabelle. Beim Importieren von Daten verf,gen Sie ,ber mehr Dateiformate als beim Verkn,pfen von Tabellen.
Einschr!nkungen beim Importieren
Vorteile des Importierens
Datei importieren
618
Beim Importieren geht der Bezug zur urspr,nglichen Datei verloren. Das bedeutet, dass sich eine importierte Datei nicht mehr mit dem Programm bearbeiten l!sst, mit dem sie erstellt wurde. Es entstehen zwei unabh!ngige Dateien, die bald unterschiedliche Daten enthalten. Es ist daher ,blich, die urspr,ngliche Datei nach dem Importieren zu lDschen. Der Vorteil einer importierten Datei besteht darin, dass sie eine Access-Tabelle ist. Sie kDnnen Tabellen, die aus importierten Dateien entstanden sind, genauso bearbeiten wie alle anderen Access-Tabellen. Importierte Dateien haben daher im Datenbankfenster das gleiche Symbol wie Access-Tabellen. Zum Importieren einer Datei w!hlen Sie den Befehl Datei > Externe Daten > Importieren aus der Men,leiste, damit Access den gleichnamigen Dialog anzeigt.
Dateien und Tabellen importieren
Abb. 10.5 Dateien importieren
Der Dialog zeigt eine Auswahlliste der Formate an, die sich importieren lassen. W!hlen Sie zun!chst einen der Eintr!ge Microsoft Access, Textdateien, Microsoft Excel, Exchange, Outlook, Lotus 1-2-3, Lotus 1-2-3(DOS), Paradox, HTML-Dokumente, dBASE III, dBASE IV, dBASE 5 oder ODBC-Datenbanken aus der Liste. Beim Importieren von Daten aus Kalkulationstabellen und Textdateien kann es manchmal hilfreich sein, zuvor eine Spezifikation zu definieren. Beachten Sie die Abschnitte Kalkulationstabellen verkn1pfen und importieren, Textdateien mit Trennzeichen verkn1pfen und importieren und Textdateien mit festgelegtem Format verkn1pfen und importieren weiter unten in diesem Kapitel. Auf die Auswahl eines Dateityps folgt die Auswahl der Datei, die importiert werden soll. W!hlen Sie eine Datei aus und klicken Sie auf Importieren. Access f,hrt das Importieren der Tabelle dann weitgehend automatisch durch. Anders als beim Verkn,pfen ist die Angabe von Indizes beim Importieren nicht erforderlich. Sie kDnnen Indizes sp!ter in der Entwurfsansicht der Tabelle definieren.
Hinweis
Datei ausw!hlen
Nach dem erfolgreichen Import erscheint die Datei im Datenbankfenster. Sie kDnnen anschließend die Eigenschaften der Tabelle definieren und gegebenenfalls die Tabellenstruktur !ndern. Importierte Tabellen haben im Datenbankfenster das gleiche Symbol wie die mit Access erstellten Tabellen.
Verknpfen und Importieren von Access-Tabellen und anderen Datenbankobjekten Solange Sie nicht mit VBA programmieren, kann Access immer nur eine Datenbank gleichzeitig Dffnen. Der Austausch von Objekten zwischen verschiedenen Datenbanken erfolgt daher ,ber das Verkn,pfen und Importieren. 619
Datenaustausch
Verwenden der Zwischenablage
Verkn pfen von Tabellen
Ein Verfahren besteht in der Verwendung der Befehle Bearbeiten > Kopieren und Bearbeiten > Einf1gen zusammen mit dem Datenbankfenster. Rffnen Sie zun!chst die Datenbank, in der sich die Tabelle befindet. Markieren Sie dann den Tabellennamen und w!hlen Sie den Befehl Bearbeiten > Kopieren, um die Tabelle in die Zwischenablage zu kopieren. Rffnen Sie dann die Zieldatenbank und w!hlen Sie den Befehl Bearbeiten > Einf1gen. Auf diese Weise kDnnen Sie nicht nur Tabellen, sondern alle Objekte einer Datenbank importieren und exportieren. Tabellen aus anderen Access-Datenbanken lassen sich auch verkn,pfen. Ein typisches Beispiel hierf,r ist eine aufgeteilte Datenbank, die Sie mit dem Assistent zur Datenbankaufteilung erstellt haben. Weitere Hinweise zu diesem Assistenten finden Sie in Kapitel 8 Datenzugriffsseiten dieses Buchs. Sie kDnnen eine verkn,pfte Tabelle aus der Datenbank, in der sie gespeichert ist, und aus der Datenbank, in der sie verkn,pft ist, heraus bearbeiten. Zum Verkn,pfen einer Tabelle aus einer anderen Access-Datenbank w!hlen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen und das Format Microsoft Access aus. Access Dffnet dann einen Dialog zur Auswahl der zu verkn,pfenden Tabellen. Markieren Sie einen oder mehrere Eintr!ge und klicken Sie auf die Schaltfl!che OK.
Abb. 10.6 Tabellen aus einer anderen Access-Datenbank verkn pfen
Datenbankobjekte importieren
Mit Datei > Externe Daten > Importieren kDnnen Sie nicht nur Tabellen, sondern alle Objekte einer Datenbank importieren. Das sind Abfragen, Formulare, Berichte, Makros und Module. Nach der Auswahl des Befehls Datei > Externe Daten > Importieren zeigt Access den gleichnamigen Dialog an. W!hlen Sie den Dateityp Microsoft Access aus der Liste, und markieren Sie die Datenbank, aus der Sie importieren wollen. Nach einem Klick auf die Schaltfl!che Importieren Dffnet Access einen weiteren Dialog zur Auswahl der zu importierenden Objekte. Markieren Sie hier eines oder mehrere Objekte und klicken Sie auf OK. Access importiert die markierten Objekte dann in die aktuelle Datenbank.
620
Dateien und Tabellen importieren
Abb. 10.7 Datenbankobjekte importieren
Mit einem Klick auf die Schaltfl!che Optionen erweitern Sie den Dialog um eine Reihe weiterer Einstellungen, die die Art und den Umfang des Imports bestimmen. Die Kontrollk!stchen und Optionen sind selbsterkl!rend.
Optionen
dBASE-Tabellen verknpfen und importieren Access kann mit dBASE erstellte Tabellen verkn,pfen und importieren. Andere mit dBASE erstellte Objekte kDnnen Sie mit Access nicht verwenden. W!hlen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen, um eine dBASE-Tabelle einzubinden. Der Befehl Datei > Externe Daten > Importieren importiert die Tabelle. W!hlen Sie dBASE III, dBase IV oder dBASE 5 als Tabellenformat und anschließend die einzubindende oder zu importierende Tabelle aus. Sofern eine Tabelle mit dBASE durch ein Kennwort gesch,tzt wurde, fordert ein Dialog zur Eingabe des Kennwortes auf.
Kennwort
dBASE speichert Informationen ,ber Indizes in Dateien mit der Erweiterung .mdx oder .ndx. Das Importieren erfolgt stets ohne Indexdateien. Sie m,ssen mit Access neue Indizes f,r importierte Tabellen anlegen.
Indizes beim Importieren
Wenn Sie eine dBASE-Tabelle verkn,pfen, zeigt Access einen Dialog zur Auswahl von Indexdateien an. Wenn Sie die verkn,pfte Tabelle aktualisieren wollen, m,ssen Sie die Indexdatei mit angeben. 0nderungen an der dBASE-Tabelle w,rden sich sonst nicht in den Indexdateien widerspiegeln, was wiederum zum Verlust der Datenintegrit!t f,hrte. Wenn Sie die Indexdateien einer eingebundenen dBASE-Tabelle verschieben, kann Access die Tabelle nicht mehr Dffnen.
Indizes beim Verkn pfen
621
Datenaustausch
Abb. 10.8 Indizes einer verkn pften dBASE-Tabelle ausw!hlen
Datentypen konvertieren
Access passt beim Importieren von dBASE-Tabellen die Felddatentypen an den Standard von Access an. Tabelle 10.1 enth!lt eine Auflistung der Felddatentypen und wie sie konvertiert werden.
Konvertieren der Felddatentypen von dBASE
Felddatentyp bei dBASE
Felddatentyp bei Access
Zeichen
Text
Numerisch und Gleitkomma
Zahl mit der FeldgrDße Double
Logisch
Ja/Nein
Datum
Datum/Zeit
Memo
Memo Tabelle 10.1
FoxPro-Tabellen verknpfen und importieren Access kann mit FoxPro erstellte Tabellen verkn,pfen und importieren. Andere mit FoxPro erstellte Objekte kDnnen Sie mit Access nicht verwenden.
Dateiformat
622
W!hlen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen, um eine FoxPro-Tabelle einzubinden. Der Befehl Datei > Externe Daten > Importieren importiert die Tabelle. W!hlen Sie Microsoft FoxPro oder Microsoft FoxPro 3.0 als Dateityp und anschließend die einzubindende oder zu importierende Tabelle aus.
Dateien und Tabellen importieren
Sofern eine Tabelle mit FoxPro durch ein Kennwort gesch,tzt wurde, fordert ein Dialog zur Eingabe des Kennwortes auf. FoxPro speichert Informationen ,ber Indizes in Dateien mit der Erweiterung .cdx, .idx oder .ndx. Teilweise werden auch die unter dBASE ,blichen .mdx-Dateien verwendet. Das Importieren erfolgt stets ohne Indexdateien. Sie m,ssen mit Access neue Indizes f,r importierte Tabellen anlegen. Sofern Sie eine FoxPro-Tabelle verkn,pfen, zeigt Access einen Dialog zur Auswahl von Indexdateien an. Wenn Sie die verkn,pfte Tabelle aktualisieren wollen, m,ssen Sie die Indexdatei mit angeben. 0nderungen an der FoxPro-Tabelle w,rden sich sonst nicht in den Indexdateien widerspiegeln, was wiederum zum Verlust der Datenintegrit!t f,hrte. Wenn Sie die Indexdateien einer eingebundenen FoxPro-Tabelle verschieben, kann Access die Tabelle nicht mehr Dffnen. Access passt beim Importieren von FoxPro-Tabellen die Felddatentypen an den Standard von Access an. Tabelle 10.2 enth!lt eine Auflistung der Felddatentypen und wie sie konvertiert werden.
Kennwort
Indizes beim Importieren
Indizes beim Verkn pfen
Datentypen konvertieren
Konvertieren der Felddatentypen von FoxPro
Felddatentyp bei FoxPro
Felddatentyp bei Access
Zeichen
Text
Numerisch und Gleitkomma
Zahl mit der FeldgrDße Double
Logisch
Ja/Nein
Datum
Datum/Zeit
Memo
Memo Tabelle 10.2
ODBC-Daten verknpfen und importieren Wenn Sie auf Ihrem System ODBC-Datenquellen installiert haben, dann kDnnen Sie deren Tabellen verkn,pfen und importieren. Im Lieferumfang von Access sind ODBC-Treiber f,r mehrere Datenquellen wie beispielsweise den SQL-Server von Microsoft enthalten. Wenn Sie ,ber den SQL-Server oder eine andere Datenquelle und den dazugehDrenden ODBC-Treiber verf,gen, dann kDnnen Sie deren Tabellen mit Access verkn,pfen und importieren. Access ermDglicht das Lesen und Bearbeiten eingebundener Tabellen der meisten Datenquellen. Weitere Hinweise zur Installation von ODBC-Datenquellen und insbesondere zum Verwenden des SQL-Servers mit Access finden Sie in Kapitel 11 Mit Bildern und anderen Objekten arbeiten dieses Buchs. 623
Datenaustausch
Das Importieren von Tabellen einer ODBC-Datenquelle erfolgt ,ber den Befehl Datei > Externe Daten > Importieren. Zum Verkn,pfen einer Tabelle w!hlen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen. Die weitere Verfahrensweise ist von der Datenquelle und vom ODBC-Treiber abh!ngig. Bei Fragen wenden Sie sich an den Hersteller des ODBC-Treibers.
Verknpfte Tabellen l&schen Das LDschen verkn,pfter Tabellen ist mit Access nicht mDglich. Wenn Sie im Datenbankfenster eine verkn,pfte Tabelle markieren und den Befehl Bearbeiten > L4schen w!hlen, dann lDscht Access lediglich die Verbindung zu der urspr,nglichen Tabelle sowie gegebenenfalls die Eigenschaften und den Tabellennamen, die Sie neu definiert haben. Wenn Sie eine verkn,pfte Tabelle physikalisch lDschen wollen, dann lDschen Sie zun!chst die Verbindung in der Access-Datenbank. Verwenden Sie anschließend den Explorer von Windows oder das Datenbankprogramm, mit dem die Tabelle erzeugt wurde, um die Tabelle von der Festplatte zu lDschen.
Kalkulationstabellen verknpfen und importieren Mit Access kDnnen Sie Kalkulationstabellen des Formats Microsoft Excel verkn,pfen und importieren. Das Verkn,pfen und Importieren von Kalkulationstabellen mit Access ist zwar komfortabel aber nicht so zuverl!ssig wie das Importieren von Tabellen. Das liegt daran, dass mit fremden Datenbankprogrammen erstellte Tabellen eher dem Format von Access-Tabellen entsprechen als Kalkulationstabellen.
Einschr!nkungen beim Import von Kalkulationstabellen
Kalkulationstabellen bestehen zwar auch aus Zeilen und Spalten, die Zeilen und Spalten d,rfen jedoch verschiedene Formate haben. So kann beispielsweise in derselben Spalte ein Text-, ein Datums- und ein numerischer Ausdruck auftreten. Das ist in den Tabellen einer Datenbank ausgeschlossen. Da in Kalkulationstabellen eine Spalte Zeilen mit verschiedenen Datentypen enthalten darf, lassen sich nicht alle Kalkulationstabellen problemlos importieren. Die Erfolgsaussichten des Verkn,pfens und Importierens variieren also mit dem Aufbau der Kalkulationstabellen.
Eine Excel-Kalkulationstabelle verkn pfen
624
Bei modernen Tabellenkalkulationsprogrammen wie Microsoft Excel kDnnen Sie innerhalb der Kalkulationstabelle Datenbanken verwalten. Außerdem gibt es die MDglichkeit, so genannte Arbeitsbereiche innerhalb der Kalkulationstabelle zu benennen. Bei solchen gut strukturierten Kalkulationstabellen ist das Verkn,pfen und Importieren der Daten kein Problem. Um eine Microsoft-Excel-Kalkulationstabelle zu verkn,pfen, gehen Sie wie folgt vor:
Dateien und Tabellen importieren
1
W!hlen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen aus der Men,leiste.
2
W!hlen Sie in dem sich Dffnenden Dialog den Eintrag Microsoft Excel aus dem Kombinationsfeld Dateityp.
3
Markieren Sie die zu verkn,pfende Kalkulationstabelle.
4
Klicken Sie auf die Schaltfl!che Verkn1pfen, um den Verkn,pfungs-Assistenten f,r Kalkulationstabellen zu starten.
Abb. 10.9 Der Verkn pfungs-Assistent f r Kalkulationstabellen
Auf der ersten Dialogseite des Assistenten w!hlen Sie ein Tabellenblatt oder einen Arbeitsbreich der Kalkulationstabelle aus. Im unteren Teil des Dialogs zeigt der Assistent eine Vorschau auf die zu verkn,pfenden Daten an. Best!tigen Sie Ihre Auswahl mit einem Klick auf die Schaltfl!che Weiter. Auf der zweiten Dialogseite des Assistenten finden Sie ein Kontrollk!stchen, das Sie ankreuzen sollten, wenn die erste Zeile des Tabellenblatts oder Arbeitsbereichs Spalten,berschriften enth!lt. Access verwendet die Spalten,berschriften dann als Feldnamen f,r die verkn,pfte Tabelle.
Spalten berschriften
Mit einem Klick auf die Schaltfl!che Weiter gelangen Sie schon zur letzten Dialogseite des Assistenten. Geben Sie hier einen Namen f,r die verkn,pfte Tabelle ein und klicken Sie auf die Schaltfl!che Fertig stellen. 625
Datenaustausch
Abb. 10.10 Erste Zeile enth(lt Spalten3berschriften
Mit einer verkn pften Kalkulationstabelle arbeiten
Eine Kalkulationstabelle importieren
Abb. 10.11 Feldoptionen f r den Import von Kalkulationstabellen
626
Nachdem das Verkn,pfen der Kalkulationstabelle erfolgreich abgeschlossen ist, zeigt Access sie als verkn,pfte Tabelle im Datenbankfenster an. Sie erkennen verkn,pfte Excel-Kalkulationstabellen an der Anzeige des Excel-Symbols. Sie kDnnen die Tabelle nun Dffnen und bearbeiten. Beachten Sie jedoch, dass sich alle 0nderungen an der Tabelle unmittelbar auf die gespeicherte Kalkulationstabelle auswirken. Das Importieren von Kalkulationstabellen erfolgt mit dem Befehl Datei > Externe Daten > Importieren. Nachdem Sie das Format Microsoft Excel und die entsprechende Datei ausgew!hlt haben, startet Access den Import-Assistenten f,r Kalkulationstabellen. Dieser Assistent hat zun!chst die gleichen Dialogseiten wie der Verkn,pfungs-Assistent f,r Kalkulationstabellen.
Dateien und Tabellen importieren
Auf der vierten Dialogseite haben Sie dann die MDglichkeit, Indizes f,r die Importtabelle zu definieren. Markieren Sie eines der aufgef,hrten Felder, und w!hlen Sie einen Eintrag aus dem Kombinationsfeld Indiziert. Außerdem haben Sie hier die MDglichkeit zur Eingabe von Feldnamen und dem Ausschluss von Feldern. Die Einstellungen dieser Dialogseite beziehen sich jeweils auf die Spalte, die Sie im unteren Teil des Dialogs markiert haben.
Feldoptionen
Abb. 10.12 Prim!rschl ssel festlegen
Nach einem Klick auf die Schaltfl!che Weiter folgt ein Dialog, mit dem Sie den Prim!rschl,ssel f,r die importierte Kalkulationstabelle ausw!hlen. Sie kDnnen Access einen Prim!rschl,ssel (also ein AutoWert-Feld) automatisch hinzuf,gen lassen oder eines der bestehenden Felder als Prim!rschl,ssel ausw!hlen. Als dritte und nicht empfehlenswerte Alternative kDnnen Sie auch auf die Definition eines Prim!rschl,ssels verzichten. Auf der letzten Dialogseite des Assistenten werden Sie wiederum zur Eingabe eines Namens f,r die Importtabelle aufgefordert. Nachdem der Import erfolgreich abgeschlossen ist, zeigt Access die Tabelle mit dem Datenblatt-Symbol im Datenbankfenster an. Es handelt sich nun um eine ganz normale Datentabelle, die keine Verbindung mehr zu der urspr,nglichen Kalkulationstabelle hat. Sie kDnnen sie wie alle anderen Tabellen Dffnen, Daten bearbeiten und ggf. den Entwurf !ndern. Der Klick auf die Schaltfl!che Fertig stellen startet den Import der Kalkulationstabelle. Access meldet nach einiger Zeit, ob das Importieren erfolgreich war. Wenn Fehler auftreten, erzeugt Access eine Tabelle mit den fehlerhaften Datens!tzen in der Datenbank. In diesem Fall zeigt ein Dialog den Namen der Fehlertabelle an. Sie kDnnen die Fehler dann in der Kalkulationstabelle beheben und sie erneut importieren oder Sie beheben die Fehler mit Access.
Hinweis
627
Datenaustausch
Nach dem Import einer Kalkulationstabelle sollten Sie die Tabelle in der Entwurfsansicht Dffnen. Definieren Sie gegebenenfalls weitere Indizes und Eigenschaften f,r die Datenfelder. Beachten Sie dabei die Ausf,hrungen zum nachtr!glichen 0ndern des Tabellenentwurfs in Kapitel 4 Tabellen dieses Buchs.
Textdateien mit Trennzeichen verknpfen und importieren Beim Verkn,pfen und Importieren von Textdateien sind zwei Verfahren zu unterscheiden: Textdateien mit Trennzeichen und Textdateien mit festgelegtem Format. In diesem Abschnitt erfahren Sie, wie sich Textdateien mit Trennzeichen importieren lassen. Der folgende Abschnitt dieses Buchs besch!ftigt sich dann mit dem Importieren von Textdateien mit fester Satzl!nge.
Vorteile von Textdateien
Texttrennzeichen
Textdateien haben den großen Vorteil, dass fast alle Datenbankprogramme Tabellen und andere Daten in Textdateien exportieren und aus ihnen importieren kDnnen. Es gibt heute kaum ein Programm, mit dem der Datenaustausch ,ber Textdateien nicht mDglich w!re. Bei einer Textdatei mit Trennzeichen bildet jede Zeile der Textdatei einen Datensatz. Die Zuordnung zu den Datenfeldern erfolgt ,ber ein Trennzeichen. Bei einigen Textdateien sind die Werte f,r jedes Datenfeld zus!tzlich in besondere Texttrennzeichen eingeschlossen. Mit Access kDnnen Sie alle Besonderheiten des Formats einer Textdatei einstellen und bei Bedarf zur sp!teren Verwendung als Spezifikation speichern.
Textdateien verkn pfen
Format ausw!hlen
Um eine Textdatei zu verkn,pfen, w!hlen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen aus der Men,leiste. Markieren Sie den Eintrag Textdateien im Kombinationsfeld Dateityp und f,hren Sie einen Doppelklick auf die zu verkn,pfende Textdatei durch. Access startet dann den Textverkn,pfungs-Assistenten, mit dem Sie weitere Einstellungen vornehmen. Auf der ersten Dialogseite des Textverkn,pfungs-Assistenten markieren Sie das Format, in dem Ihre Textdaten vorliegen. Im unteren Teil des Dialogs zeigt Access eine Vorschau auf die zu importierenden Daten an. Die folgenden Abschnitte beschreiben zun!chst den Import von Textdaten mit Trennzeichen. Mit einem Klick auf die Schaltfl!che Weitere Dffnen Sie einen Dialog, mit dem Sie zus!tzliche Spezifikationen zum Verkn,pfen von Textdateien mit Trennzeichen festlegen kDnnen. Sie finden die Beschreibung dieses Dialogs weiter unten in diesem Abschnitt.
628
Dateien und Tabellen importieren
Abb. 10.13 Der Textverkn pfungsAssistent
Abb. 10.14 Weitere Optionen f r das Verkn pfen von Textdateien
Auf der zweiten Dialogseite des Assistenten markieren Sie die Option mit dem Trennzeichen, das die Datenfelder Ihrer Textdatei abgrenzt. Mit der Vorschau kDnnen Sie ,berpr,fen, ob Ihre Auswahl zu einem sinnvollen Ergebnis f,hrt.
Trennzeichen ausw!hlen
629
Datenaustausch
Wenn die erste Zeile der zu verkn,pfenden Textdatei Feldnamen enth!lt, kreuzen Sie das entsprechende Kontrollk!stchen an. Pber das Kombinationsfeld Textbegrenzungszeichen kDnnen Sie das Zeichen festlegen, das Zeichenketten einklammert. Auch hier empfiehlt sich das Pberpr,fen der Einstellung durch einen Blick auf die Vorschau.
Abb. 10.15 Feldoptionen f r das Verkn pfen von Textdateien
Nach einem Klick auf die Schaltfl!che Weiter zeigt der Assistent die Dialogseite zur Einstellung der Feldoptionen an. Sie kDnnen hier die Vorgaben f,r Feldnamen, Felddatentypen und Indizes korrigieren. Klicken Sie dann auf die Schaltfl!che Weiter. Auf der letzten Dialogseite des Assistenten werden Sie zur Eingabe eines Namens f,r die verkn,pfte Tabelle aufgefordert. Nach einem Klick auf die Schaltfl!che Fertig stellen zeigt Access die verkn,pfte Textdatei im Datenbankfenster an. Die eingebundene Tabelle ist durch das Symbol einer verkn,pften Textdatei gekennzeichnet. Sie kDnnen die Daten der verkn,pften Tabelle nun bearbeiten und mit Einschr!nkungen die Eigenschaften des Tabellenentwurfs !ndern.
Textdateien importieren
630
Das Importieren von Textdateien erfolgt ,ber den Befehl Datei > Externe Daten > Importieren. W!hlen Sie anschließend das Dateiformat Textdateien und eine Textdatei aus. Access startet dann den Textimport-Assistent. Die Dialoge des Textimport-Assistenten sind mit geringen Unterschieden die gleichen wie die des Textverkn,pfungs-Assistenten.
Dateien und Tabellen importieren
Beim Importieren von Textdateien kDnnen Sie anders als beim Verkn,pfen eine Tabelle ausw!hlen, an die die Daten angef,gt werden sollen. Außerdem haben Sie beim Importieren von Textdateien wie schon beim Importieren von Kalkulationstabellen die MDglichkeit, einen Prim!rschl,ssel f,r die neue Tabelle zu definieren (siehe Abbildung 10.12). Der Klick auf die Schaltfl!che Fertig stellen startet den Import der Textdatei. Access meldet nach einiger Zeit, ob das Importieren erfolgreich war. Wenn Fehler auftreten, erzeugt Access in der Datenbank eine Tabelle mit den fehlerhaften Datens!tzen. In diesem Fall zeigt ein Dialog den Namen der Fehlertabelle an. Sie kDnnen die Fehler dann in der Textdatei beheben und sie erneut importieren oder beheben die Fehler in der Access-Tabelle.
Hinweis
Nach dem Import einer Textdatei sollten Sie die entstehende Tabelle in der Entwurfsansicht Dffnen. Definieren Sie gegebenenfalls weitere Indizes und Eigenschaften f,r die Datenfelder. Beachten Sie dabei die Ausf,hrungen zum nachtr!glichen 0ndern des Tabellenentwurfs in Kapitel 4 Tabellen dieses Buchs.
Abb. 10.16 Spezifikationen f r Textdateien mit Trennzeichen
Sowohl beim Textverkn,pfungs- als auch beim Textimport-Assistenten kDnnen Sie auf die Schaltfl!che Weitere klicken, um zus!tzliche Spezifikationen festzulegen. Abbildung 10.16 zeigt die Standardeinstellung f,r die Spezifikationen f,r das Verkn,pfen und den Import von Textdateien. Der folgende Text ist ein Auszug aus einer Textdatei, die Semikola als Feldtrennzeichen und doppelte Anf,hrungszeichen (") als Textbegrenzungszeichen verwendet.
Spezifikationen f r den Import von Textdateien mit Trennzeichen Feldtrenn- und Textbegrenzungszeichen
631
Datenaustausch
"Artikel-Nr";"Artikelname";"Lieferant";"Kategorie" ;"Liefereinheit";"Einzelpreis";"Lagerbestand" ;"Bestellte";"Einheiten";"Mindestbestand" ;"Auslaufartikel" 1;"Chai";1;1;"10 Kartons x 20 Beutel";18,00 DM;39;0;10;0 2;"Chang";1;1;"24 x 12-oz-Flaschen";19,00 DM;17;40;25;0 3;"Aniseed Syrup";1;2;"12 x 550-ml-Flaschen";10,00 DM;13;70;25;0 Die erste Zeile der Textdatei enth!lt die Feldnamen. Das Semikolon bildet das Feldtrennzeichen. Außerdem wird jeder Feldwert in Anf,hrungszeichen (") gesetzt. Wenn Sie eine Textdatei importieren wollen, die in einem anderen Format vorliegt, dann !ndern Sie die Einstellungen des Dialogs entsprechend.
Spezifikation speichern
Sie kDnnen die Importspezifikationen f,r Textdateien bei Bedarf speichern. Das empfiehlt sich immer dann, wenn Sie mehrere Dateien mit der gleichen Spezifikation importieren wollen. Klicken Sie auf die Schaltfl!che Speichern unter und geben einen Namen f,r die Spezifikation ein. Die Spezifikation l!sst sich fortan ,ber die Schaltfl!che Spezifikationen abrufen.
Textdateien mit festgelegtem Format verknpfen und importieren Dieser Abschnitt beschreibt das Verkn,pfen und Importieren von Textdateien mit festgelegtem Format. H!ufig wird dieses Format auch als Textdatei mit fester Satzl!nge bezeichnet.
Aufbau von Textdateien mit festgelegtem Format
Bei einer Textdatei mit festgelegtem Format bildet jede Zeile der Textdatei einen Datensatz. Beim festgelegten Format haben alle Feldwerte einer Spalte die gleiche Feldl!nge. Wenn ein Feldwert k,rzer als die Feldl!nge ist, wird die Spalte mit Leerzeichen aufgef,llt. Das Verkn,pfen und Importieren von Textdateien mit festgelegtem Format erfolgt genauso wie das Importieren und Verkn,pfen von Textdateien mit Trennzeichen. Es gibt lediglich Unterschiede in den Spezifikationen, die Sie einstellen kDnnen. Der Dialog eignet sich zur Bearbeitung von Spezifikationen f,r Textdateien mit festgelegtem Format und f,r Textdateien mit Trennzeichen. Der Unterschied besteht darin, dass bei einer Spezifikation f,r Textdateien mit festgelegtem Format der Bereich Feldinformation gef,llt werden muss.
Spezifikationsname
Dateiherkunft
632
Wenn Sie eine bereits bestehende Spezifikation bearbeiten wollen, Dffnen Sie sie ,ber die Schaltfl!che Spezifikationen. Neue Spezifikationen kDnnen Sie speichern, indem Sie auf die Schaltfl!che Speichern unter klicken. Access speichert Spezifikationen in der Datenbank. Als Dateiherkunft sind der unter Windows ,bliche ANSI-Zeichensatz und der unter DOS und OS/2 ,bliche PC-8-Zeichensatz verf,gbar (siehe Anhang C).
Dateien und Tabellen importieren
Abb. 10.17 Spezifikationen f r eine Textdatei mit festgelegtem Format
W!hlen Sie die Formate f,r den Import von Datums-, Zeit- und Zahlenfeldern aus. Wenn Sie eine Spezifikation f,r den Import von Textdateien mit festgelegtem Format entwerfen wollen, m,ssen Sie die Feldinformationen definieren.
Datum, Zeit und Zahlen Feldinformation
Geben Sie den Feldnamen ein. Wenn Sie die Textdatei an eine bereits bestehende Tabelle anf,gen wollen, dann sollten Sie die gleichen Feldnamen angeben wie in der bereits bestehenden Tabelle. W!hlen Sie einen Datentyp f,r das Feld der Textdatei aus dem Kombinationsfeld. Dieser Datentyp bestimmt, ob und wie Access die gelesenen Daten konvertiert. Sofern Sie nicht sicher sind, wie die Textdatei aufgebaut ist, sollten Sie den Datentyp Text ausw!hlen. Geben Sie die Nummer des Zeichens ein, an dem das Datenfeld beginnt. Es handelt sich dabei um die Zeichennummer, die der Position des ersten Zeichens des Datenfeldes in der Textdatei entspricht.
Feldname
Datentyp
Start
Geben Sie die Breite des Feldes als Zeichenanzahl ein. Breite
Die in Abbildung 10.17 gezeigten Einstellungen eignen sich beispielsweise f,r den Import einer Textdatei mit folgendem Aufbau (um den Aufbau der Textdatei besser darstellen zu kDnnen, sind einige der Leerzeichen, die zum Auff,llen der Feldl!ngen verwendet werden, nicht abgedruckt):
Beispiel
633
Datenaustausch
1 Chai 1 1 10 Kartons x 20 Beutel 18,00 DM 39 0 10 0 2 Chang 1 1 24 x 12-oz-Flaschen 19,00 DM 17 40 25 0 3 Aniseed Syrup 1 2 12 x 550-ml-Flaschen 10,00 DM 13 70 25 0
Tabellen exportieren Beim Importieren liest Access Daten fremder Herkunft und stellt sie in der Datenbank zur Verf,gung. Das Exportieren kehrt diesen Vorgang um. Beim Exportieren werden die Daten aus der aktuellen Datenbank f,r die Bearbeitung mit fremden Programmen vorbereitet. Um eine Tabelle oder eine Abfrage zu exportieren, markieren Sie sie im Datenbankfenster und w!hlen den Befehl Datei > Exportieren aus der Men,leiste. Markieren Sie die Option In eine externe Datei oder Datenbank und klicken Sie auf die Schaltfl!che OK. W!hlen Sie in dem sich Dffnenden Dialog einen der folgenden Eintr!ge aus dem Kombinationsfeld Dateityp: Microsoft Access, Textdateien, Microsoft Excel 5-7, Microsoft Excel 97-2000, HTML-Dokumente, Microsoft Excel 4, Microsoft Excel 3, Lotus 1-2-3, Paradox 3-8, dBASE III, dBASE IV, dBASE 5, Microsoft Word Merge, Rich Text Format, Microsoft IIs 1-2, Microsoft Active Server Pages oder ODBC-Datenbanken.
Tipp
Wenn Sie nur ausgew!hlte Informationen einer Tabelle exportieren wollen, dann erstellen Sie zun!chst eine Abfrage. Markieren Sie dann die Abfrage im Datenbankfenster, bevor Sie den Befehl Datei > Exportieren aus der Men,leiste w!hlen. Beim Exportieren sind die gleichen Besonderheiten zu ber,cksichtigen wie beim Importieren (siehe weiter oben in diesem Kapitel). Beachten Sie insbesondere, dass Sie alle Objekte einer Datenbank in andere Access-Datenbanken exportieren kDnnen. Beim Exportieren von Textdateien startet Access automatisch einen Assistenten, mit dem Sie die Spezifikationen f,r das Format der Textdatei einstellen.
Seriendruck mit Word Ein Serienbrief ist eine Sonderform des Standardbriefs. Das typische Beispiel ist ein Anschreiben, an verschiedene, in einer Tabelle gespeicherte Adressen.
Steuerdatei
F,r die Bew!ltigung dieser Aufgabe ist das perfekte Zusammenspiel von der Datenbank Access mit der Textverarbeitung Word gefragt. Access speichert die benDtigten Adressen in einer Tabelle. Mit Word gestalten und drucken Sie den Brief. Der Austausch der Adressen erfolgt ,ber eine so genannte Steuerdatei. Um Serienbriefe mit Word drucken zu kDnnen, sollten Sie bereits mit der Bedienung des Programms vertraut sein.
Hinweis 634
Seriendruck mit Word
Word XP Zum Erstellen einer Steuerdatei f,r den Seriendruck mit Word XP gehen Sie wie folgt vor: 1
Aktivieren Sie im Datenbankfenster die Tabelle oder Abfrage mit den Daten, die Sie f,r den Seriendruck verwenden wollen.
2
Klicken Sie auf den Pfeil des Symbols Office-Verkn,pfungen oder w!hlen Sie Extras > Office-Verkn1pfungen > Seriendruck mit Microsoft-Word.
3
Klicken Sie den Eintrag Seriendruck mit MSWord.
4
Bestimmen Sie, ob Sie die Steuerdatei mit einem bereits bestehenden Dokument verbinden wollen oder ob der Assistent ein neues Dokument erstellen soll.
5
Falls Sie die Steuerdatei mit einem bereits bestehenden Dokument verbinden wollen, w!hlen Sie dies aus dem sich Dffnenden Dateiauswahl-Dialog.
6
Klicken Sie auf OK.
Abb. 10.18 Der Seriendruck-Assistent
Der Seriendruck-Assistent bereitet die Tabelle oder Abfrage als Steuerdatei auf. Falls erforderlich, !ndert er automatisch die Feldnamen der Tabelle oder Abfrage so, dass sie mit den Namenskonventionen von Word ,bereinstimmen. Anschließend startet er Word und Dffnet ein bereits bestehendes Dokument oder erstellt ein neues Dokument und verbindet es mit der Steuerdatei.
635
Datenaustausch
Abb. 10.19 Serienbrief in Word XP
Serienbrief gestalten
Sie kDnnen den Serienbrief nun mit den MDglichkeiten von Word gestalten. Dazu stehen Ihnen insbesondere die in der Symbolleiste angezeigten Schaltfl!chen zur Verf,gung. Mithilfe dieser Schaltfl!chen kDnnen Sie beispielsweise neue Datenfelder in den Serienbrief einf,gen oder den Serienbrief drucken lassen. F,r weitere Informationen im Umgang mit Word schlagen Sie in dessen Hilfetexten, den Handb,chern oder einschl!giger Literatur nach.
Daten in Word weiterbearbeiten Eine Alternative zum Seriendruck besteht in der Pbergabe von Daten an Word, um sie dort weiter zu bearbeiten. Da hier eine Kopie der Daten angefertigt wird, entspricht diese Vorgehensweise dem Exportieren von Daten mit Access. Access verwendet bei der Pbergabe von Daten an Word automatisch das RichText-Format (kurz: RTF). Dieses Format hat den Vorteil, dass auch die Formatierung von Texten ,bertragen wird. Mit Access kDnnen Sie die Daten von Tabellen, Abfragen, Formularen und Berichten an Word ,bergeben. Um Daten in Word weiter zu bearbeiten, gehen Sie wie folgt vor:
636
1
Markieren Sie im Datenbankfenster von Access eine Tabelle, eine Abfrage, ein Formular oder einen Bericht.
2
Klicken Sie auf den Pfeil des Symbols Office-Verkn1pfungen.
Daten in Excel analysieren
3
W!hlen Sie den Eintrag Mit MS Word ver4ffentlichen aus der Liste.
Access exportiert die Daten dann in eine RTF-Datei und veranlasst Word, diese zu Dffnen. Sie kDnnen die Daten dann mit den MDglichkeiten von Word weiter bearbeiten.
Abb. 10.20 Tabelle, die an Word weitergegeben wurde
Daten in Excel analysieren Access verf,gt ,ber eine besondere Funktion f,r die Weitergabe von Daten an die Tabellenkalkulation Microsoft Excel. Um Daten in Excel zu analysieren, gehen Sie wie folgt vor: 1
Markieren Sie im Datenbankfenster eine Tabelle, eine Abfrage, ein Formular oder einen Bericht.
2
Klicken Sie auf den Pfeil des Symbols Office-Verkn1pfungen.
3
W!hlen Sie den Eintrag Analysieren mit MS Excel aus der Liste.
Access exportiert die Daten automatisch in eine Excel-Kalkulationstabelle. Es gibt der Kalkulationstabelle den gleichen Namen, wie ihn das Datenbankobjekt hat, aus dem die Daten stammen. Anschließend wird Excel gestartet und veranlasst, die Kalkulationstabelle zu Dffnen.
637
Datenaustausch
HTML exportieren, importieren und verkn/pfen Neben den in Kapitel 8 Datenzugriffsseiten ausf,hrlich besprochenen Datenzugriffsseiten gibt es noch zwei weitere MDglichkeiten, im Inter- oder Intranet Daten aus einer Access-Datenbank zur Verf,gung zu stellen.
Server-generierte HTML-Dateien
Statische HTMLDateien
Die erste MDglichkeit sind Server-generierte HTML-Dateien. Hierbei handelt es sich um ein Verfahren, bei dem Daten aus Tabellen, Abfragen und Formularen in Tabellenform als HTML-Seite dargestellt werden. Sobald ein Benutzer ,ber das Interoder Intranet die Seite mit den entsprechenden Informationen aufruft, wird die Seite mit den jeweils aktuellen Inhalten aus der Datenbank dynamisch erstellt. Diese Methode ist bei weitem nicht so komfortabel wie mit Datenzugriffsseiten. So kDnnen Sie nur Daten abrufen, aber keine 0nderungen an Daten vornehmen. Da die Erstellung solcher HTML-Seiten sehr komplex ist und umfangreiche InternetKenntnisse erfordert, wird hier nicht weiter darauf eingegangen. Die zweite MDglichkeit ist die Darstellung von Tabellen, Abfragen, Formularen und Berichten in Form statischer HTML-Seiten. Dabei werden Tabellen, Abfragen und Formulare in der Datenblattansicht in ein HTML-Dokument umgewandelt. Berichte werden in ein mit der Berichtsansicht weitgehend identisches HTML-Format umgewandelt. Der Nachteil dieser Art der Darstellung ist, dass die Daten auf dem HTML-Dokument bei jeder 0nderung der Originaldaten aktualisiert werden m,ssen – es sei denn, die Aktualit!t spielt keine allzu große Rolle. Daf,r kDnnen statische HTML-Seiten aber mit beliebigen Browsern gelesen werden, die HTML 3.2 und hDher beherrschen.
Exportieren von Objekten in statische HTML-Dateien Um Tabellen, Abfragen, Formulare oder Berichte als HTML-Datei zu speichern, gehen Sie folgendermaßen vor:
638
1
Markieren Sie das gew,nschte Objekt im Datenbankfenster.
2
W!hlen Sie den Men,befehl Datei > Exportieren.
3
Geben Sie im Exportieren-Dialog den Namen des HTML-Dokuments ein und w!hlen Sie als Dateityp HTML-Dokumente.
4
Bet!tigen Sie die Schaltfl!che Speichern.
HTML exportieren, importieren und verknpfen
Abb. 10.21 Exportieren einer Tabelle im HTML-Format
Haben Sie die Option Formatiert aktiviert, so erscheint, bevor die HTML-Datei erstellt wird, der Dialog HTML-Ausgabeoptionen. Hier kDnnen Sie eine Vorlage f,r das zu exportierende HTML-Dokument angeben. Mithilfe dieser Vorlage kDnnen Sie beispielsweise das Layout Ihrer Objekte im HTML-Format vereinheitlichen. In der Vorlage kDnnen Sie z.B. einen Seitenkopf mit Ihrem Firmen-Logo unterbringen. Damit die Vorlage mit dem Datenbankobjekt im HTML-Format zusammengef,hrt werden kann, muss diese auch im HTML-Format vorliegen.
Abb. 10.22 Festlegen einer Vorlage f r die statische HTMLDatei
Sie kDnnen die Position von Tabellen, Abfragen, Formularen oder Berichten in Ihren statischen HTML-Seiten selbst bestimmen. Außerdem kDnnen Sie in die Seite weitere Elemente wie den Objektnamen, Sprungmarken und Seitenzahlen einf,gen. Tabelle 10.3 enth!lt die HTML-Vorlage-Token, die bei der Erstellung der HTML-Seite automatisch durch die entsprechenden Elemente ersetzt werden. F,gen Sie einfach die auf der linken Seite der Tabelle aufgelisteten Token in Ihre Vorlage ein. Die auf der rechten Seite der Tabelle beschriebenen Elemente werden dann bei der Erstellung in die statische HTML-Seite eingef,gt. 639
Datenaustausch
Token fr HTML-Vorlagen
HTML-Vorlagen-Token
Ersetzung
Objektname (wird in der Titelleiste des Web-Browsers angezeigt)
Objektausgabe
Marke zum Springen zur ersten Seite
Marke zum Springen zur vorherigen Seite
Marke zum Springen zur n!chsten Seite
Marke zum Springen zur letzten Seite
Nummer der aktuellen Seite Tabelle 10.3
Importieren und Verknpfen von HTML-Dateien Das Importieren oder Verkn,pfen von HTML-Dateien ist nat,rlich nur dann sinnvoll, wenn sich Tabellen oder Listen in den Dateien befinden. Access ,berpr,ft aber selbstst!ndig, ob dies der Fall ist. Enth!lt das HTML-Dokument keine von Access verwertbaren Daten, wird dies mit einer entsprechenden Meldung kommentiert. In diesem Fall wird der Vorgang abgebrochen. Um Daten aus einem HTML-Dokument zu importieren oder zu verkn,pfen, gehen Sie folgendermaßen vor: 1
W!hlen Sie den Men,befehl Datei > Externe Daten > Importieren oder Datei > Externe Daten > Tabellen verkn1pfen.
2
Access Dffnet je nach Men,befehl den Dialog Importieren oder Tabellen verkn1pfen, in dem Sie die zu verkn,pfende Datei festlegen.
3
Wenn Access in dem HTML-Dokument Daten in Listen- oder Tabellenform findet, wird der HTML-Import-Assistent oder der HTML-Verkn,pfungs-Assistent aufgerufen.
4
Folgen Sie den Anweisungen des Assistenten.
MDglicherweise enth!lt Ihr HTML-Dokument mehrere Tabellen oder Listen. Sie kDnnen die oben genannten Schritte dann f,r jede Tabelle wiederholen.
640
Exportieren in XML-Dokumente
Exportieren in XML-Dokumente Neu ist in Access XP die MDglichkeit, Tabellen, Formulare, Berichte oder Abfragen in XML-Dokumente zu exportieren. Da dieses Format im Internet immer wichtiger wird, ist diese Option nicht unwichtig. Klammheimlich hatte Microsoft diese Funktionalit!t schon in Office 2000 integriert und zur Zwischenspeicherung und Datenablage benutzt. Als offizielles Exportformat gibt es das aber erst ab Office XP. 1
W!hlen Sie den Men,befehl Datei > Exportieren.
2
Stellen Sie als Dateityp XML-Documents ein.
3
Klicken Sie auf Exportieren.
4
Best!tigen Sie ,ber OK die vorgegebenen Einstellungen oder ver!ndern Sie diese nach Ihren Vorgaben.
Abb. 10.23 Exportieren in ein XMLDokument
Rffnen Sie ,ber die Schaltfl!che Weitere den erweiterten Dialog zum XML-Export, so kDnnen Sie weitere Vorgaben machen, etwa zur Erstellung einer XSL-Datei (einer Style-Sheet-Datei) die Vorgaben zur Gestaltung der XML-Dokumente festlegt. Hierzu benDtigen Sie aber XML bzw. XSL-Kenntnisse, die Ihnen dieses Buch an dieser Stelle nicht in der nDtigen Ausf,hrlichkeit vermitteln kann.
641
Datenaustausch
Abb. 10.24 Auch Stylesheet-Dateien (XSL) lassen sich beim XML-Export erzeugen
Verknpfung mit Outlook und Exchange Wenn Sie mit Outlook oder Exchange arbeiten, kDnnen Sie eine Verkn,pfung zu den in diesen Programmen verwendeten Adressb,chern erstellen. Um eine solche Verkn,pfung aufzubauen, m,ssen Sie den Exchange/Outlook-Verkn,pfungs-Assistenten starten. Rufen Sie dazu den Men,befehl Datei > Externe Daten > Tabellen verkn1pfen auf. Wenn Sie im Verkn1pfen-Dialog einen der Dateitypen Exchange oder Outlook w!hlen, wird automatisch der Exchange/Outlook-Verkn,pfungs-Assistent gestartet.
Abb. 10.25 Der Exchange/OutlookVerkn pfungs-Assistent
642
Exportieren in XML-Dokumente
Im Assistenten m,ssen Sie lediglich das gew,nschte Adressbuch ausw!hlen und einen Namen f,r die Tabelle angeben, die die verkn,pften Daten enth!lt. Der Assistent erstellt anschließend automatisch die Verkn,pfung. Sie kDnnen nun die Adressen, die Sie in Outlook und Exchange eingegeben haben, mit Access weiterverarbeiten. Nat,rlich kDnnen Sie die Daten auch importieren. Sie w,rden allerdings auf den großen Vorteil verzichten, dass die Daten in Access st!ndig auf dem aktuellen Stand sind. Außerdem werden Daten, die Sie in Access eingeben, auch in Outlook und Exchange aktualisiert.
Abb. 10.26 Angabe des Tabellennamens
643
Mit Bildern und anderen Objekten arbeiten Einfhrung Objekte einbetten Objekte verknpfen
646 650 655
11
Mit Bildern und anderen Objekten arbeiten
Mit Access kDnnen Sie Bilder, Diagramme und andere Objekte einbinden, die Sie mit anderen Programmen erstellt haben. Dieses Kapitel beschreibt die verschiedenen Verfahren zur Verwendung von Bildern und anderen Objekten mit Access sowie ihre Vor- und Nachteile.
Einf/hrung Mit dem Component Object Model (COM) hat Microsoft ein weitgehend standardisiertes Verfahren zur Kommunikation und zum Austausch von Objekten in Windows implementiert. Zu diesem Model gehDren auch die beiden Funktionsmerkmale OLE (englisch: Object Linking and Embedding, deutsch: Objekte verkn,pfen und einbetten) und Automatisierung (fr,her bezeichnet als OLE-Automatisierung).
OLE Das mit OLE bezeichnete Verfahren ermDglicht das Verkn,pfen oder Einbetten von beliebigen ActiveX-Objekten (fr,her: OLE-Objekte) zwischen OLE-f!higen Anwendungen. In Access kDnnen Sie so beispielsweise Bilder, Musiksequenzen, Videos und Diagramme einbinden. Access kann sowohl als OLE-Server als auch als OLE-Container fungieren.
Access als OLEServer
Wird Access als OLE-Server eingesetzt, dann greifen Sie mittels einer Anwendung auf die Daten und Objekte einer Datenbank zu. Sie kDnnen beispielsweise das Ergebnis einer Abfrage in Excel in einem Datenblatt speichern. Durch die Verkn,pfung mit der Datenbank werden 0nderungen in dieser auch im Excel-Datenblatt wirksam. Da der Einsatz von Access als OLE-Server jedoch nur f,r Anwender anderer Programme wie beispielsweise Excel und Word interessant ist und zudem manchmal Programmierkenntnisse erfordert, geht dieses Buch nicht weiter darauf ein.
Access als OLEContainer
Die andere in den folgenden Abschnitten beschriebene Funktion von Access ist die des OLE-Containers. Der Begriff OLE-Container ist so zu verstehen, dass Access Objekte aus fremden Anwendungen wie ein Container aufnehmen bzw. einbinden kann. Als OLE-Server l!sst sich beispielsweise das im Lieferumfang von Access enthaltene Programm Microsoft Graph zum Erstellen von Diagrammen eingesetzen. Die Graph-Objekte werden dann im OLE-Container Access-Datenbank abgelegt. Im Lieferumfang von Windows und Office finden Sie interessante OLE-Server f,r Access wie beispielsweise Microsoft ClipArt Gallery, Microsoft Map-Landkarte, Microsoft WordArt und MS Organisationsdiagramm. Ebenso z!hlen Microsoft Excel (ab 4.0) und Microsoft Word f,r Windows (ab 2.0) dazu.
Hinweis 646
Die große Vielfalt an OLE-f!higen Applikationen bedingt, dass nicht alle in diesem Buch besprochen werden kDnnen. Sie finden Einzelheiten ,ber OLE-f!hige Applikationen in der Dokumentation zu Microsoft Windows und in der Dokumentation zu den einzelnen Applikationen.
Einfhrung
Eingebettete Objekte Access unterscheidet zwei Varianten der Einbindung von Objekten: das Einbetten und das Verkn,pfen. Eingebettete Objekte werden mit der Server-Applikation erstellt und in Access eingebettet. Access speichert die Objekte dann in einer Tabelle, einem Formular oder einem Bericht der Datenbank. Zur Bearbeitung des Objekts muss zun!chst Access und anschließend die Server-Applikation gestartet werden.
Verknpfte Objekte Die Ausgangsbasis f,r die zweite Variante bildet ein Dokument, das mit der ServerApplikation erstellt und gespeichert wird. Das ganze Dokument oder auch nur ein Teil davon l!sst sich dann als verkn,pftes Objekt in Tabellen, Formularen oder Berichten von Access verwenden. Wenn Sie Objekte verkn,pfen wollen, m,ssen Sie sie vorher mit der Server-Applikation speichern. Access speichert dann nur die Verkn,pfung zu der Objektdatei in der Datenbank. Startet der Anwender die Server-Applikation, kann er das Dokument auch dann bearbeiten, wenn er Access vorher nicht gestartet hat. Alle 0nderungen an dem Dokument aktualisieren bei Bedarf automatisch das verkn,pfte Objekt in Access. Auf diese Weise kDnnen Sie beispielsweise mit Microsoft Excel ein Arbeitsblatt entwerfen, das die Geh!lter von Mitarbeitern berechnet. Eine Access-Tabelle kDnnte dann ein OLE-Feld enthalten, das mit den Geh!ltern des Excel-Arbeitsblatts verkn,pft wird. Starten Sie Excel und !ndern sich die Geh!lter, werden automatisch auch die verkn,pften Objekte in der Access-Tabelle aktualisiert. Diese Aktualisierung erfolgt, wenn Sie Access das n!chste Mal starten und die Tabelle mit den verkn,pften Objekten Dffnen. Alternativ kDnnen Sie das Objekt auch von Access aus zur Bearbeitung Dffnen. F,hren Sie dazu einfach einen Doppelklick auf das Objekt durch. Access startet dann die Anwendung, mit der Sie das Objekt erstellt haben. Wenn diese Anwendung die Vor-Ort-Aktivierung (englisch: In Place Activation) unterst,tzt, erfolgt die Bearbeitung des Objekts innerhalb der Benutzeroberfl!che von Access. Mehr Hinweise zur direkten OLE-Bearbeitung finden Sie weiter unten in diesem Kapitel. Wenn eine Anwendung die Vor-Ort-Aktivierung nicht unterst,tzt, startet Access sie und veranlasst gleichzeitig das Rffnen des Objekts. Ein wesentlicher Unterschied zwischen eingebetteten und verkn,pften Objekten besteht darin, dass Access verkn,pfte Objekte nicht in der der Datenbank speichert, sich aber die Verkn,pfung zu einem Dokument der Server-Applikation merkt. Wenn Sie das Dokument mit der Server-Applikation !ndern, aktualisiert Access das Objekt manchmal nicht automatisch auch in der Datenbank, und Sie m,ssen es manuell aktualisieren. Um ein Objekt in der Datenbank manuell zu aktualisieren, gehen Sie wie folgt vor:
Unterschiede zwischen eingebetteten und verkn pften Objekten
647
Mit Bildern und anderen Objekten arbeiten
1
Markieren Sie das Objekt.
2
W!hlen Sie den Befehl Bearbeiten > OLE/DDE-Verkn1pfungen aus der Men,leiste.
3
Markieren Sie eine oder mehrere Verkn,pfungen in der Liste.
4
Klicken Sie auf die Schaltfl!che Anzeige aktualisieren.
Abb. 11.1 Der Dialog Verkn3pfungen
Der Dialog Verkn1pfungen zeigt alle Verkn,pfungen des markierten Objekts an. Wenn die Liste der Verkn,pfungen leer ist, dann handelt es sich um ein eingebettetes und nicht um ein verkn,pftes Objekt, das Sie markiert haben.
Vor-Ort-Aktivierung (In-Place Activation) Die aktuelle Technologie zum Austausch von Objekten heißt OLE. OLE standardisiert nicht nur den Austausch von Objekten, sondern zus!tzlich auch von Befehlen zur Bearbeitung der Objekte. Wenn Sie in Access ein Objekt einf,gen, das mit einem modernen OLE-Server erstellt wurde, dann verf,gen Sie ,ber Vor-Ort-OLE-Bearbeitung (englisch: In-Place Editing). Access blendet dann automatisch die Men,leiste und die Symbolleisten des OLE-Servers ein, wenn Sie das Objekt markieren. Sie kDnnen das Objekt somit innerhalb der Benutzeroberfl!che von Access mit den Mitteln des OLE-Servers bearbeiten.
648
Einfhrung
Abb. 11.2 Direkte OLE-Bearbeitung
Automatisierung Das zweite aufgef,hrte Funktionsmerkmal des Component Object Model ist die Automatisierung. Darunter versteht man die MDglichkeit, Befehle zum Erstellen und Bearbeiten neuer oder vorhandener Objekte an einen Server wie beispielsweise Word oder Excel senden zu kDnnen. Wie auch bei OLE kann Access als Server oder als so genannter Controller arbeiten. Der f,r Access-Entwickler interessante Fall ist der des Controllers. Hierbei sendet Access die Befehle zur Steuerung anderer Anwendungen. Wird Access als Automations-Server eingesetzt, dann schicken andere automationsf!hige Anwendungen Befehle an Access, um dort Ver!nderungen vorzunehmen.
Access als Controller
Access als Server
Dynamischer Datenaustausch Der dynamische Datenaustausch (englisch: Dynamic Data Exchange, oder kurz: DDE) eignet sich nicht zum Austausch von Objekten, sondern zum Senden einzelner Werte und Befehle. DDE wird aus Kompatibilit!tsgr,nden noch von Access XP unterst,tzt, ist aber von der Automatisierung weitgehend verdr!ngt worden. Da DDE zunehmend an Bedeutung verliert, geht dieses Buch nicht weiter darauf ein.
649
Mit Bildern und anderen Objekten arbeiten
Objekte einbetten Mit Access kDnnen Sie Objekte in einer Tabelle speichern oder sie als Bestandteil eines Formulars oder Berichts definieren. Wenn Sie OLE-Objekte in einer Tabelle speichern wollen, dann erg!nzen Sie ein Feld mit dem Datentyp OLE-Objekt. In Feldern dieses Typs kDnnen Sie beliebige Objekte speichern. Weitere Einzelheiten zum Erstellen und Bearbeiten von Tabellen finden Sie in Kapitel 4 Tabellen. In Formularen und Berichten kDnnen Sie f,r die OLE-Felder einer Tabelle gebundene Objektfelder entwerfen. Ziehen Sie dazu das Datenfeld einfach aus der Feldliste in den Formularentwurf. Alternativ dazu kDnnen Sie ein gebundenes Objektfeld ,ber die Toolbox erstellen und als Steuerelementinhalt den entsprechenden Feldnamen eingeben. OLE-Objekte lassen sich nur in den Formular- und Seitenansichten von Formularen und Berichten darstellen. Access zeigt OLE-Objekte in der Datenblattansicht von Tabellen, Abfragen und Formularen nicht an.
Objekt einf gen
Ungebundene Objektfelder
Das Einf,gen von Objekten in gebundene Objektfelder erfolgt in der Formularansicht. Markieren Sie das Objektfeld und w!hlen Sie den Befehl Einf1gen > Objekt aus der Men,leiste oder den Befehl Objekt einf1gen aus dem Kontextmen, des Objektfeldes. OLE-Objekte eignen sich nicht nur zum Speichern in einer Tabelle, sondern auch als feste Bestandteile eines Formularentwurfs. Sie m,ssen dazu ein ungebundenes Objektfeld in den Formularentwurf einf,gen. Gehen Sie dazu wie folgt vor: 1
Markieren Sie in der Toolbox das Symbol f,r ungebundene Objektfelder.
2
Ziehen Sie im Formularentwurf einen Rahmen f,r das Objektfeld auf.
3
Access Dffnet automatisch den Dialog Objekt einf1gen.
Mit dem Dialog Objekt einf1gen kDnnen Sie ein neues Objekt erstellen und es in das ungebundene Objektfeld einf,gen oder Sie f,gen ein bestehendes Objekt ein. Weitere Hinweise zu diesem Dialog finden Sie im folgenden Abschnitt OLE-Objekte einf1gen und bearbeiten.
OLE-Objekte einfgen und bearbeiten Das Verfahren zum Einf,gen und Bearbeiten von Objekten in gebundene und ungebundene Objektfelder sowie in ein OLE-Feld einer Tabelle in der Datenblattansicht gestaltet sich nach dem gleichen Verfahren.
650
Objekte einbetten
Sie markieren das Objektfeld und w!hlen den Befehl Einf1gen > Objekt. Access zeigt dann eine Auswahlliste der verf,gbaren Objekttypen an. Das ist eine Liste der Programme, die unter Windows als OLE-Server angemeldet wurden.
Objekt einf gen
Abb. 11.3 Objekt einf gen
Wenn Sie einen der Objekttypen ausw!hlen und auf OK klicken, Dffnet Access die entsprechende Applikation. Erstellen Sie das neue Objekt und w!hlen Sie den Befehl Datei > Beenden, um die Server-Applikation zu beenden. Manchmal fragt ein weiterer Dialog, ob die 0nderungen am Objekt aktualisiert werden sollen. Klicken Sie auf Ja, wenn die 0nderungen in das Objektfeld ,bernommen werden sollen. Die Schaltfl!che Nein beendet die Server-Applikation, ohne die 0nderungen zu speichern. Sie brauchen das neue Objekt nicht mit der Server-Applikation zu speichern. Access speichert das Objekt bei gebundenen Objektfeldern im OLE-Feld der Tabelle oder im ungebundenen Steuerelement des Formulars oder Berichts. Einige Server-Applikationen wie beispielsweise Microsoft Excel lassen sich unabh!ngig von Access starten. Sie kDnnen mit diesen Applikationen Dokumente entwerfen und speichern. Wenn Sie ein solches Dokument als Objekt in Access einf,gen wollen, dann gehen Sie wie folgt vor: 1
Markieren Sie ein Objektfeld.
2
W!hlen Sie den Befehl Einf1gen > Objekt aus der Men,leiste.
Bestehende Dokumente als Objekt einf gen
651
Mit Bildern und anderen Objekten arbeiten
3
Markieren Sie im Dialog Objekt einf1gen die Option Aus Datei erstellen.
4
Geben Sie den Dateinamen des Dokuments ein oder klicken Sie auf die Schaltfl!che Durchsuchen, um eine Datei auszuw!hlen.
5
Kreuzen Sie das Kontrollk!stchen Verkn1pfen an, wenn Access das Objekt mit dem Ursprungsdokument verkn,pfen soll.
6
Klicken Sie auf OK, um das Objekt einzuf,gen.
Abb. 11.4 Objekt von Datei entwerfen
Access zeigt das Objekt dann im Formular an, ohne dass es in der Datenbank gespeichert wird. Lediglich die Verkn,pfung zu der Objektdatei wird in der Datenbank gespeichert.
Objekt bearbeiten
652
Zur Bearbeitung eines Objekts m,ssen Sie zun!chst die Server-Applikation starten, mit der Sie das Objekt erstellt haben. Markieren Sie dazu das Objektfeld, und w!hlen Sie den Befehl Bearbeiten > Objekt > Bearbeiten. Access erg!nzt den Auswahlpunkt Objekt in der Regel um den Namen des OLE-Servers. Wenn Sie beispielsweise ein Excel-Objekt bearbeiten, lautet der Befehl daher Bearbeiten > Tabelle-Objekt > Bearbeiten. Access startet die Server-Applikation und Sie kDnnen die erforderlichen 0nderungen durchf,hren. Beenden Sie die Server-Applikation mit dem Befehl Datei > Beenden und klicken Sie ggf. auf die Schaltfl!che Ja, um das Objekt zu aktualisieren. Die Schaltfl!che Nein verwirft alle 0nderungen am Objekt.
Objekte einbetten
Bei vielen Server-Applikationen wie beispielsweise Microsoft Graph und Microsoft Paint gen,gt ein Doppelklick auf das Objekt. Access startet dann die Server-Applikation zur Bearbeitung des Objekts. Bei anderen Objekten f,hrt der Doppelklick auf ein Objekt zur Ausf,hrung des Objekts. So veranlasst beispielsweise der Doppelklick auf ein Objekt des Microsoft Klangrecorders das Abspielen der Klangdatei. Weitergehende Informationen enth!lt die Dokumentation der Applikation, die Sie als OLEServer einsetzen. Als Beispiel f,r die Verwendung von Objekten soll eine Tabelle erstellt werden, in die dann Paintbrush-Bilder eingef,gt werden. Erstellen Sie eine neue Tabelle und f,gen ein Feld vom Datentyp OLE-Objekt hinzu. Erstellen Sie dann mit dem Formular-Assistenten ein Standardformular und Dffnen Sie es in der Formularansicht.
Beispiel: Paintbrush-Bild einf gen
Der Formular-Assistent f,gt dem Standardformular automatisch ein an das OLEFeld gebundenes Objektfeld hinzu. Klicken Sie auf dieses Objektfeld, um es zu markieren. W!hlen Sie dann den Befehl Einf1gen > Objekt und Paintbrush-Bild als Objekttyp aus.
Abb. 11.5 Paintbrush-Bild-Objekt einf gen
Access startet Microsoft Paint mit einer leeren Bilddatei. Sie kDnnen dann ein neues Bild entwerfen. Bet!tigen Sie einmal probeweise die D-Taste, damit Windows den Bildschirminhalt in die Zwischenablage kopiert.
653
Mit Bildern und anderen Objekten arbeiten
W!hlen Sie dann den Befehl Bearbeiten > Einf1gen aus der Men,leiste von Paintbrush. Klicken Sie als Antwort auf die Frage, ob die Bitmap vergrDßert werden soll, auf die Schaltfl!che Ja. Klicken Sie dann auf einen Bereich außerhalb des Paintbrush-Objekts, um die Bearbeitung zu beenden.
Hinweis
Access zeigt Objekte in der Datenblattansicht von Tabellen zwar nicht an, Sie kDnnen sie aber dennoch einf,gen und bearbeiten. Markieren Sie dazu eine Zelle der Tabelle, und w!hlen Sie den Befehl Einf1gen > Objekt oder Bearbeiten > Objekt > Bearbeiten. Bei letzterem Befehl m,ssen Sie beachten, dass Access den Platzhalter Objekt durch einen Begriff ersetzt, der das aktuelle Objekt bezeichnet, also z.B. Bitmap-Objekt oder Worksheet-Objekt.
Bearbeiten eingebetteter Objekte verhindern Ein Doppelklick auf ein eingebettetes Objekt oder die Auswahl des Befehls Bearbeiten > Objekt > Bearbeiten startet standardm!ßig die Server-Applikation, mit der das Objekt erstellt wurde. Auf diese Weise l!sst sich das Objekt bearbeiten. Wenn Sie das Bearbeiten eingebetteter Objekte verhindern wollen, dann markieren Sie das Objekt und w!hlen Sie den Befehl Bearbeiten > Objekt > Konvertieren. Markieren Sie in dem sich Dffnenden Dialog die Option Konvertieren zu und den Objekttyp Bild und klicken Sie auf OK. Der Befehl wandelt das Objekt in ein Bild um und lDscht die Information, mit welcher Server-Applikation das Objekt erstellt wurde.
Abb. 11.6 Ein Objekt konvertieren
Der Objekttyp Bild steht manchmal erst zur Verf,gung, wenn die Bitmap schon einmal konvertiert wurde. Wenn im Dialog Konvertieren nur der Objekttyp Bitmap angezeigt wird, dann markieren Sie zun!chst diesen Eintrag und klicken auf die Schaltfl!che OK. Rufen Sie den Dialog dann erneut auf und w!hlen Sie diesmal den Eintrag Bild (Ger7teunabh7ngige Bitmap) aus der Liste.
654
Objekte verknpfen
Der Befehl Bearbeiten > Objekt steht f,r dieses Objekt fortan nicht mehr zur Verf,gung. Außerdem f,hrt ein Doppelklick auf das Objekt zu der Anzeige, dass es nicht mehr bearbeitet werden kann.
Objekte verkn/pfen Mit Access kDnnen Sie Objekte nicht nur einbetten, sondern auch verkn,pfen. Access merkt sich dann die Verkn,pfung zu dem Objekt der Server-Applikation.
Verknpftes Objekt erstellen Verkn,pfte unterscheiden sich von eingebetteten Objekten dadurch, dass bei verkn,pften Objekten h!ufig ein Dokument der Server-Applikation den Ausgangspunkt bildet. Hier verf,gen Sie in der Regel ,ber ein gespeichertes Dokument und wollen dieses als Objekt in Access einbinden. Im Unterschied dazu speichert Access eingebettete Objekte in der Datenbank. Eingebettete Objekte lassen sich nur von Access aus Dffnen. Es gibt keine MDglichkeit, zun!chst die Server-Applikation zu starten, um das eingebettete Objekt zu bearbeiten. Um ein Objekt zu verkn,pfen, starten Sie dazu die Server-Applikation, und entwerfen oder Dffnen ein Dokument. Markieren Sie dann den Bereich des Dokuments, der Sie interessiert, und kopieren Sie ihn mit Bearbeiten > Kopieren in die Zwischenablage von Windows.
Unterschiede zwischen eingebetteten und verkn pften Objekten
Objekte verkn pfen
Im n!chsten Schritt wechseln Sie ,ber die Taskleiste von Windows zu Access und markieren das gew,nschte Objektfeld. W!hlen Sie den Befehl Bearbeiten > Inhalte einf1gen, so dass Access den gleichnamigen Dialog anzeigt.
Abb. 11.7 Inhalte einf gen
655
Mit Bildern und anderen Objekten arbeiten
Die Option Einf1gen f,gt lediglich den Inhalt der Zwischenablage ein, ohne eine Verkn,pfung zu erstellen. Markieren Sie daher die Option Verkn1pfung einf1gen. W!hlen Sie anschließend die Art und Weise, in der das Objekt verkn,pft werden soll, aus dem Listenfeld und klicken Sie auf OK. Access f,gt das Objekt ein und merkt sich die Verkn,pfung zum Ursprungsdokument. Bei Bedarf kDnnen Sie die Verkn,pfung aktualisieren oder aufheben. W!hlen Sie dazu jeweils den Befehl Bearbeiten > Verkn1pftes Objekt.
Verkn pfte Objekte bearbeiten
656
Das Bearbeiten verkn,pfter Objekte erfolgt mit der Server-Applikation. Sie kDnnen die Server-Applikation starten und das Dokument bearbeiten, auf dem das Objekt beruht. Speichern und schließen Sie die Server-Applikation anschließend. Die direkte OLE-Bearbeitung steht bei verkn,pften Objekten nicht zur Verf,gung.
Access im Netzwerk Access im Netzwerk bedienen Access im Netzwerk programmieren Access am SQL-Server
658 665 669
12
Access im Netzwerk
In einem Netzwerk kann Access eine zentrale Datenbank verwalten, die von mehreren Benutzern gleichzeitig genutzt wird. Dieser gemeinsame Datenbestand sorgt daf,r, dass alle Benutzer mit aktuellen Daten arbeiten. In diesem Kapitel erfahren Sie zun!chst, wie Netzwerke aufgebaut sind. Anschließend lernen Sie, wie Sie Access im Netzwerk konfigurieren und programmieren kDnnen.
Access im Netzwerk bedienen Vorteile von Access im Netzwerk
Redundanz und Inkonsistenz
Der Einsatz von Access im Netzwerk hat mehrere Vorteile: Zum einen sorgt ein zentraler Datenbestand im Netzwerk daf,r, dass alle Benutzer mit denselben aktuellen Daten arbeiten. Zum anderen verhindert die gemeinsame Datenbank so genannte Redundanzen: Wenn jeder Benutzer eine eigene Datenbank verwenden w,rde, m,ssten dieselben Daten mehrfach auf verschiedenen Computern – redundant – gespeichert werden. Diese Redundanz verschwendet nicht nur wertvollen Speicherplatz, sondern produziert auch widerspr,chliche Daten: W!hrend ein Benutzer die Adressen nur auf seinem Rechner aktualisiert, arbeitet sein Kollege mit veralteten Daten weiter. Die Daten auf beiden Rechnern sind dann widerspr,chlich. Dieser inkonsistente Zustand wird durch eine gemeinsame Datenbank im Netzwerk vermieden. Die gemeinsame Datenbank hat aber nicht nur Vorteile. Wenn mehrere Benutzer dieselbe Datenbank bearbeiten, muss Access den konkurrierenden Datenzugriff der Arbeitsstationen koordinieren, um Datenverluste zu vermeiden.
Beispiel f r Sperrung
Konkurrierender Datenzugriff
Automatische Sperrung mit Happy End
658
Angenommen, die zwei Kundenbetreuer, Frau Moog und Herr Dams, arbeiten zur selben Zeit mit derselben Kundendatenbank. Solange beide die Daten nur lesen, entstehen keinerlei Probleme. Frau Moog nimmt nun den Anruf der Firma Brause KG entgegen. Sie erf!hrt, dass sich die Anschrift des Kunden ge!ndert hat, beginnt gleich mit der 0nderung des Datensatzes und gibt auch die neue Adresse ein. W!hrend Frau Moog die neue Adresse bearbeitet, bekommt auch Herr Dams einen Anruf, ebenfalls von der Firma Brause KG. Herr Dams hat eben einen anderen Ansprechpartner bei diesem Kunden. Auch Herr Dams erf!hrt jetzt, dass sich die Anschrift ge!ndert hat. Was passiert, wenn Herr Dams denselben Datensatz !ndert, den Frau Moog gerade bearbeitet? In diesem Fall spricht man von konkurrierendem Datenzugriff. Ohne entsprechende Schutzmechanismen w,rde Herr Dams alle 0nderungen von Frau Moog einfach ,berschreiben, ohne etwas davon zu bemerken. In diesem Fall handelt es sich nur um ein kleines Mißverst!ndnis, der Datenverlust kDnnte aber gravierender sein.
Access im Netzwerk bedienen
Das Verhalten von Access im Mehrbenutzerbetrieb kann durch eine Reihe von Einstellungen ver!ndert werden. Die folgenden Abschnitte beschreiben, welche MDglichkeiten Ihnen zur Verf,gung stehen. Außerdem erfahren Sie, wie Sie die f,r Ihre Anwendung optimale Arbeitsumgebung schaffen.
Datenbanken &ffnen Beim Einsatz von Access im Netzwerk kDnnen mehrere Anwender gleichzeitig mit derselben Datenbank arbeiten. Dies betrifft nicht nur die Bearbeitung von in Tabellen gespeicherten Daten, sondern alle Objekte der Datenbank. Dazu z!hlen auch die in der MDB-Datei gespeicherten Tabellen, Abfragen, Formulare, Berichte sowie Module und Makros. Access Dffnet eine Datenbank nicht exklusiv und mit Schreibrechten. Falls Sie einen anderen Rffnungsmodus w,nschen, m,ssen Sie dies explizit angeben. Markieren Sie die Datenbank dazu im Dialog ffnen, und klicken Sie auf den Pfeil der Schaltfl!che ffnen. Access zeigt dann eine Liste mit den ffnungsmodi Schreibgesch1tzt 4ffnen, Exklusiv 4ffnen ,und Exklusiv Schreibgesch1tzt 4ffnen an.
Datenbank exklusiv ffnen
Abb. 12.1 MDB-Dateien exklusiv oder schreibgesch tzt ffnen
Bei strukturellen 0nderungen am Entwurf einer Datenbank ist es empfehlenswert, dass w!hrend der Durchf,hrung dieser 0nderung kein Anwender mit der Datenbank arbeitet. Dies gew!hrleisten Sie durch das exklusive Rffnen. Wenn ein Anwender die Datenbank exklusiv geDffnet hat, quittiert Access den Versuch, die Datenbank zu Dffnen, bei allen anderen Anwendern mit einer Fehlermeldung. 659
Access im Netzwerk
Datenbank schreibgesch tzt ffnen
Um sicherzustellen, dass die MDB-Datei nicht ge!ndert wird, kDnnen Sie die Datenbank schreibgesch,tzt Dffnen. In diesem Fall kDnnen 0nderungen in der MDB-Datei nicht gespeichert werden. Eine entsprechende Meldung macht auf diesen Umstand aufmerksam.
Abb. 12.2 Datenbank schreibgesch tzt ffnen
(bersicht
Die Tabelle enth!lt eine Pbersicht ,ber die MDglichkeiten beim Rffnen von Datenbanken. Die Tabelle beschreibt die KombinationsmDglichkeiten des exklusiven und des schreibgesch,tzten Rffnens einer Datenbank.
M&glichkeiten beim Lffnen einer Datenbank
Schreibgesch,tzt Exklusiv
Wirkung
Nein
Ja
Sie kDnnen die Datenbank Dffnen und bearbeiten. Alle anderen Benutzer kDnnen die Datenbank nicht Dffnen.
Nein
Nein
Alle Benutzer kDnnen die Datenbank Dffnen und bearbeiten
Ja
Nein
Sie kDnnen die Datenbank nur lesen. Alle anderen Benutzer kDnnen die Datenbank lesen und bearbeiten.
Ja
Ja
Sie kDnnen die Datenbank nur lesen. W!hrend Sie die Datenbank geDffnet haben, kDnnen alle anderen Benutzer sie nicht Dffnen. Tabelle 12.1
Tipp
660
Wie Access die Datenbanken Dffnet, kDnnen Sie mithilfe der Standardeinstellungen beeinflussen. Rufen Sie dazu den Befehl Extras > Optionen in der Men,leiste auf, und w!hlen Sie die Registerkarte Weitere. Daraufhin kDnnen Sie in der Optionsgruppe Standard4ffnungsmodus festlegen, ob Access Ihre Datenbanken standardm!ßig exklusiv oder f,r die gemeinsame Nutzung Dffnet.
Access im Netzwerk bedienen
Datenbankobjekte bearbeiten Beim schreibgesch,tzten Rffnen kann der Anwender die Datenbank zwar lesen, aber weder die Daten noch die Objektdefinitionen bearbeiten. Damit mehrere Anwender eine Datenbank gleichzeitig bearbeiten kDnnen, darf sie niemand exklusiv Dffnen. In diesem Fall stellt sich die Frage, wie Access bei der Bearbeitung von Datenbankobjekten reagiert. Die Struktur einer Tabelle kDnnen Sie nur dann in der Entwurfsansicht !ndern, wenn kein anderer Benutzer sie geDffnet hat. Es darf also auch keinen anderen Benutzer geben, der eine Abfrage, ein Formular oder einen Bericht geDffnet hat, dem die Tabelle zugrunde liegt. Andernfalls meldet Access, dass Sie die Tabellenstruktur nur zum Lesen Dffnen kDnnen.
Tabellen
W!hrend Sie eine Tabellenstruktur bearbeiten, kann kein anderer Benutzer mehr Objekte Dffnen, die auf dieser Tabelle basieren. Der Zugriff auf diese Tabelle ist damit gesperrt. Achten Sie darauf, dass Sie die Arbeit der anderen Benutzer auf diese Weise nicht zu stark einschr!nken. Die letzten beiden Abs!tze beziehen sich lediglich auf die Entwurfsansicht des Tabellenfensters, also das 0ndern der Tabellenstruktur. Die Besonderheiten bei der Bearbeitung der in Tabellen gespeicherten Daten werden weiter unten im Abschnitt Daten im Netzwerk bearbeiten besprochen. Alle anderen Datenbankobjekte, also Abfragen, Formulare, Berichte und Makros, kDnnen Sie auch dann !ndern, wenn andere Benutzer sie noch geDffnet haben. Die 0nderungen machen sich nach dem Speichern erst dann bemerkbar, wenn die anderen Benutzer die Datenbankobjekte erneut Dffnen. Access Dffnet also stets die zuletzt gespeicherte Version des Objekts.
Hinweis
Andere Datenbankobjekte
Eine Ausnahme bilden in VBA programmierte Module. Die anderen Benutzer kDnnen auf die aktualisierten Module erst dann zugreifen, wenn Sie die Datenbank schließen und erneut Dffnen. Eine weitere Ausnahme sind die Datenzugriffsseiten. Da Access Datenzugriffsseiten außerhalb der MDB-Datei speichert, gibt es hier ,berhaupt keine verbindlichen Mechanismen f,r das Rffnen dieser Objekte. Datenzugriffsseiten kDnnen prinzipiell auch außerhalb von Access mit einem Editor geDffnet werden. Wenn zwei Benutzer gleichzeitig dasselbe Datenbankobjekt bearbeiten, dann kann ein Benutzer die 0nderungen problemlos speichern. Wenn der andere Benutzer speichert, zeigt Access einen Dialog an. Der Benutzer, der zuletzt speichert, kann dann entscheiden, ob die 0nderungen des anderen Benutzers ,berschrieben werden sollen oder ob er sein ge!ndertes Datenbankobjekt unter einem neuen Namen speichern will. Wenn Sie das Pberschreiben des Datenbankobjekts verneinen, Dffnet Access den Dialog Speichern unter, damit Sie Ihre 0nderungen unter einem neuen Namen speichern kDnnen.
661
Access im Netzwerk
Abb. 12.3 Dieser Konflikt entsteht, wenn mehrere Benutzer parallel &nderung an einem Datenbankobjekt durchf hren
Wenn Sie Konflikte bei der Bearbeitung von Datenbanken im Mehrbenutzerbetrieb vermeiden wollen, dann sollte nur ein Benutzer die Datenbank bearbeiten d,rfen. Dieser Benutzer sollte beim Rffnen der Datenbank das Kontrollk!stchen Exklusiv ankreuzen. Access verhindert dann, dass andere Benutzer die Datenbank Dffnen kDnnen.
Daten im Netzwerk bearbeiten Im Mehrbenutzerbetrieb kDnnen mehrere Anwender gleichzeitig die Daten derselben Tabelle bearbeiten. Sie kDnnen dazu das Datenblatt der Tabelle, das Datenblatt einer Abfrage oder ein Formular Dffnen. Damit mehrere Benutzer auf einer Datenbank operieren kDnnen, sind spezielle Schutzmechanismen erforderlich. Access bietet verschiedene Sperrmethoden an, um den Datenzugriff der Benutzer zu koordinieren. Der folgende Abschnitt beschreibt, wie Sie f,r Ihre Anwendung die optimale Strategie zum Sperren von Datens!tzen finden.
Optionen f r den Netzwerkeinsatz
Tipp
Keine Sperrungen
Datensatz speichern
662
Die Regeln zum Sperren von Datens!tzen werden mit den Optionen von Access festgelegt. Um die Optionen f,r den Netzwerkeinsatz zu bearbeiten, rufen Sie den Befehl Extras > Optionen auf und w!hlen die Registerkarte Weitere aus. In der Optionsgruppe Standard bei Datensatzsperrung legen Sie fest, wie Access Datens!tze sperrt. Die Einstellungen im Dialog Optionen gelten nur f,r die Datenbl!tter von Tabellen und Abfragen. Bei Formularen entscheidet die Formulareigenschaft Datens7tze sperren, wie Datens!tze gesperrt werden. Bei neuen Formularen ,bernimmt Access jedoch automatisch die Standardeinstellungen. In der Optionsgruppe Standard bei Datensatzsperrung stellt Access standardm!ßig die Option Keine Sperrungen ein. In diesem Fall wendet Access die optimistische Sperrmethode an. Bei dieser Sperrmethode kDnnen mehrere Benutzer gleichzeitig denselben Datensatz bearbeiten. Beim Speichern der 0nderungen gilt aber das Recht des Schnelleren: Der erste Benutzer kann seine 0nderungen problemlos speichern, w!hrend alle anderen eine Fehlermeldung bekommen. Mithilfe des Dialoges Schreibkonflikt bestimmen Sie, wie Access mit den ge!nderten Daten verfahren soll. Wenn Sie auf die Schaltfl!che Datensatz speichern klicken, dann speichert Access Ihre 0nderungen. Damit gehen aber die 0nderungen des Benutzers, der vor Ihnen gespeichert hat, verloren.
Access im Netzwerk bedienen
Abb. 12.4 Verfahren bei ge!nderten Daten
Mit der Schaltfl!che In Zwischenablage kopieren veranlassen Sie das Programm, Ihre 0nderungen an dem Datensatz in die Zwischenablage zu kopieren. Access zeigt dann die Daten an, die der andere Benutzer vor Ihnen gespeichert hat. Sie kDnnen anschließend Ihre Daten aus der Zwischenablage mit dem ge!nderten Datensatz vergleichen und die 0nderungen gegebenenfalls vervollst!ndigen. Sofern Sie die Schaltfl!che Eigene Tnderungen verwerfen anklicken, gehen Ihre 0nderungen verloren. Access zeigt dann die Daten an, die der andere Benutzer vor Ihnen gespeichert hat.
In Zwischenablage kopieren
Eigene Inderungen verwerfen
Die optimistische Sperrmethode blockiert einen Datensatz nur f,r die kurze Dauer des Schreibvorgangs. Das beschleunigt zwar den Datenzugriff, ist aber relativ unsicher, weil Zugriffskonflikte dazu f,hren kDnnen, dass nur ein Benutzer seine 0nderungen ordnungsgem!ß speichern kann. Wenn Sie f,r die Option Standard bei Datensatzsperrung die Einstellung Alle Datens7tze w!hlen, dann sperrt Access automatisch alle Datens!tze der zugrundeliegenden Tabelle, sobald Sie die Tabelle, eine Abfrage oder ein Formular Dffnen. Diese Strategie schr!nkt den Mehrbenutzerbetrieb sehr stark ein und sollte daher nur in Ausnahmef!llen gew!hlt werden.
Alle Datens(tze
Wenn Sie eine Tabelle mit dieser Einstellung Dffnen, dann d,rfen keine Datens!tze von anderen Anwendern gesperrt sein. Andernfalls w!hlt Access automatisch die Einstellung Bearbeiteter Datensatz. Wenn Sie sich f,r die Sperrmethode Bearbeiteter Datensatz entscheiden, verwendet Access die pessimistische Sperrung. Bei der pessimistischen Datensatzsperrung kDnnen mehrere Benutzer eine Tabelle bearbeiten, jeder einzelne Datensatz kann aber nur von einem Benutzer ge!ndert werden. Solange dieser Datensatz bearbeitet wird, erlaubt die pessimistische Datensatzsperrung zwar lesende Datenzugriffe, verhindert aber jede 0nderung der Daten durch andere Benutzer. Die pessimistische Sperrung ist zwar die sicherste Methode, blockiert einen Datensatz aber w!hrend der gesamten Bearbeitungszeit. Wer auf einen gesperrten Datensatz zugreifen will, der muss warten, bis der Kollege seine Arbeit beendet.
Bearbeiteter Datensatz
Durch die pessimistische Sperrung mit der Option Bearbeiteter Datensatz werden Zugriffskonflikte verhindert, die bei der optimistischen Sperrmethode der Option Keine Sperrungen auftreten kDnnen. 663
Access im Netzwerk
Bearbeiteter Datensatz
Wenn Sie die Option Bearbeiteter Datensatz w!hlen, sperrt Access den aktuellen Datensatz, sobald Sie mit der Bearbeitung von Daten beginnen. W!hrenddessen zeigt Access den Stift als Datensatzindikator an. Bei allen anderen Anwendern markiert der Datensatzindikator den Datensatz als gesperrt. Access verhindert das 0ndern des Datensatzes durch andere Anwender. Jeden Versuch, den gesperrten Datensatz zu bearbeiten, quittiert Access mit einer Fehlermeldung.
Satz- oder seitenweise Sperrung
Bei den Versionen vor Access 2000 besteht manchmal das Problem, dass der Zugriff auf einen Datensatz nicht mDglich ist, obwohl er nicht explizit gesperrt wurde. Der Grund hierf,r besteht darin, dass Access bis einschließlich der Version 97 immer DatenblDcke von 2.048 Zeichen gesperrt hat. Wenn also ein Datensatz nur 100 Zeichen hat, sind mit der Sperrung eines Datensatzes auch die bis zu 20 umliegenden Datens!tze gesperrt worden. Ab Access 2000 kDnnen Sie diesem Effekt erstmals dadurch entgegenwirken, dass Sie die seitenweise Sperrung ausschalten. W!hlen Sie dazu den Befehl Extras > Optionen aus der Men,zeile, und markieren Sie im Dialog Optionen das Register Weitere. Stellen Sie sicher, dass das Kontrollk!stchen DB mit Sperrung auf Datensatzebene 4ffnen angekreuzt ist. Eine 0nderung an diesem Kontrollk!stchen wirkt sich erst aus, wenn Sie die Datenbank schließen und erneut Dffnen.
Abb. 12.5 Mit diesem Kontrollk!stchen schalten Sie die seitenweise Sperrung aus
Der nicht angekreuzte Zustand des Kontrollk!stchens entspricht dem Verhalten !lterer Access-Versionen. Ein Unterschied besteht allerdings darin, dass Access ab Version 2000 nun Seiten d 4.096 Zeichen und nicht mehr wie fr,her nur 2.048 Zeichen sperrt. 664
Access im Netzwerk programmieren
Sie sollten alle Benutzer eines Netzwerks anweisen, ge!nderte Datens!tze mDglichst schnell zu speichern. So wird verhindert, dass andere Anwender in ihrer Arbeit durch gesperrte Datens!tze beeintr!chtigt werden. Um einen Datensatz zu speichern, bet!tigen Sie die Tastenkombination H, oder klicken Sie auf den Datensatzmarkierer. Alternativ kDnnen Sie auch die 0nderungen am aktuellen Datensatz verwerfen, indem Sie die E-Taste zweimal nacheinander bet!tigen. Die Netzwerkeinstellungen gelten ,blicherweise nur f,r die Arbeitsstation, auf der sie vorgenommen werden. Wenn Sie die Optionen !ndern, dann sollten Sie alle Netzwerkbenutzer anweisen, die gleichen 0nderungen durchzuf,hren.
Tipp
Achtung
Anzeige aktualisieren In einer Mehrbenutzerumgebung kommt es vor, dass andere Anwender Daten !ndern, w!hrend Sie sich dieselben Daten auf einem Datenblatt oder im Formular ansehen. Deshalb kDnnen Sie den Bildschirm mit dem Men,befehl Datens7tze > Anzeige aktualisieren oder der )-Taste aktualisieren.
Anzeige aktualisieren
Wenn Sie regelm!ßig mit aktuellen Daten versorgt werden wollen, kDnnen Sie Access veranlassen, die Daten auf Ihrem Bildschirm in gewissen Zeitabst!nden automatisch zu aktualisieren. Standardm!ßig aktualisiert Access die Anzeige alle 60 Sekunden. Sie kDnnen den Zeitabstand f,r die Aktualisierung der Bildschirmanzeige aber auch selbst einstellen. Rufen Sie dazu den Befehl Extras > Optionen auf und w!hlen die Registerkarte Weitere aus. Geben Sie dann im Feld Intervall f1r Anzeigeaktualisierung den Zeitabstand f,r die automatische Aktualisierung der Anzeige in Sekunden ein. Der Maximalwert ist 32.766 Sekunden (entspricht 9 Stunden), der Minimalwert betr!gt 1 Sekunde. Beim Aktualisieren der Anzeige zeigt Access ge!nderte Daten an und markiert gelDschte Datens!tze mit dem Text #Gel4scht. Abfragen werden jedoch nicht erneut ausgef,hrt. Auch die Sortierung der Datens!tze und berechnete Felder werden nicht aktualisiert. Wenn Access die Anzeige vollst!ndig auf den neuesten Stand bringen soll, rufen Sie den Befehl Datens7tze > Filter > Sortierung entfernen in der Men,leiste auf, oder bet!tigen Sie die Tastenkombination H).
Aktualisierung der Anzeige einstellen
Alle Datens!tze anzeigen
Access im Netzwerk programmieren In diesem Abschnitt erfahren Sie, wie Sie Ihre Access-Anwendungen f,r den Netzwerkeinsatz richtig konfigurieren und programmieren kDnnen. Bevor eine AccessDatenbank im Netzerk eingesetzt werden kann, sind n!mlich einige Vorbereitungen nDtig. Die Programmierhinweise richten sich an fortgeschrittene VBA-Programmierer, sind also nicht f,r jeden so ohne weiteres verst!ndlich. Der Vollst!ndigkeit halber d,rfen sie aber auch in diesem Buch nicht fehlen. Zur Einarbeitung in diese Programmiersprache ist separate Literatur erh!ltlich.
665
Entfernte Tabellen verknpfen Access speichert die Tabellen gemeinsam mit Abfragen, Formularen, Berichten und Modulen in einer Datei mit der Endung MDB (Microsoft DataBase). Der Netzwerkeinsatz einer Datenbank setzt jedoch voraus, dass zumindest die Datenbanktabellen nur einmal auf dem Server zentral gespeichert werden. Andere Datenbankobjekte, wie Formulare, Berichte und Module, kDnnen separat auf jedem Arbeitsplatzrechner gehalten werden. Im Netzwerk sind also zwei MDB-Dateien erforderlich: eine MDB-Datei mit Datenbanktabellen f,r den Server und eine zweite MDB-Datei deP Anwendung f,r
Access im Netzwerk programmieren
Da die Tabellen nach dem Import auf dem Server liegen, werden sie in der lokalen MDB-Datei ,berfl,ssig; schließlich soll jeder Benutzer den gemeinsamen Datenbestand auf dem Server verwenden. Bevor Sie die lokalen Tabellen lDschen, legen Sie vorsichtshalber eine Sicherheitskopie der MDB-Datei an. Rffnen Sie dann die lokale MDB-Datei, w!hlen Sie im Datenbankfenster die Registerkarte Tabellen und lDschen die Tabellen nacheinander mit dem Befehl Bearbeiten > L4schen. Best!tigen Sie auch das LDschen der Beziehungen mit der Schaltfl!che Ja.
Lokale Anwendung vorbereiten
Nachdem die Tabellen in der lokalen Datenbank gelDscht wurden, fehlen dort Daten. Damit Access die entfernten Tabellen benutzt, die in der Datei Netz.mdb auf dem Server liegen, verkn,pfen Sie die dortigen Tabellen mit der lokalen MDB-Datei. Durch das Verkn,pfen von Tabellen kann die Access-Anwendung auf die Daten einer anderen MDB-Datei zugreifen. F,r den Zugriff auf die MDB-Datei des Servers sollten Sie auf jedem Arbeitsplatzrechner ein einheitliches Netzlaufwerk einrichten, zum Beispiel Q:\, das Windows beim Start automatisch wiederherstellt. Um die entfernten Tabellen in der lokalen MDB-Datei zu verkn,pfen, rufen Sie den Befehl Datei > Externe Daten > Tabellen verkn1pfen auf und w!hlen Sie die MDBDatei auf dem Server aus, zum Beispiel Netz.mdb. Daraufhin kDnnen Sie alle benDtigten Tabellen markieren und anschließend mit der Schaltfl!che OK die Verkn,pfung herstellen. Im Datenbankfenster erkennen Sie die eingebundenen Tabellen an einem Pfeil vor dem Tabellensymbol.
Entfernte Tabellen verkn pfen
Netzwerkeigenschaften von Access programmieren Damit mehrere Benutzer gleichzeitig eine Datenbank nutzen kDnnen, muss der exklusive Datenzugriff ausgeschaltet werden. In Ihren Programmen erreichen Sie den exklusiven Datenzugriff ,ber folgenden Access-Eigenschaften:
4ffnungsmodus
Application.GetOption ("Default Open Mode for Databases") Application.SetOption " Default Open Mode for Databases", 0 In den Beispielen werden f,r den Zugriff auf Optionswerte die englischen Zeichenfolgen-Argumente verwendet. Die englischen Werte kDnnen auch zum Beispiel von der franzDsischen Access-Version verstanden und verarbeitet werden. Die Methode GetOption gibt den Wert 0 zur,ck, wenn der gemeinsame Datenzugriff eingestellt ist. Die exklusive Nutzung entspricht dem Wert 1. Anhand der Methoden GetOption und SetOption erreichen Sie auch Eigenschaften wie den Rffnungsmodus f,r Datenbanken und die Datensatzsperrung (Default Record Locking):
Hinweis
Sperrung
Application.GetOption ("Default Record Locking") Application.SetOption " Default Record Locking", 0
667
Access im Netzwerk
Aktualisierung der Anzeige festlegen
Die GetOption-Methode gibt den Standard-Rffnungsmodus zur,ck. Die SetOptionMethode stellt die Standard-Sperrmethode ein: Der Wert 0 entspricht der Option Keine Sperrung, w!hrend die Optionen Alle Datens7tze und Bearbeiteter Datensatz die Werte 1 und 2 besitzen. Analog dazu kDnnen Sie auch den Zeitraum f,r die Aktualisierung der Anzeige festlegen: Application.SetOption " Refresh Interval (Sec)", 30
Formular-Tuning
Unabh!ngig von den Standardeinstellungen besitzt jedes Formular eigene Netzwerkeigenschaften, die Vorrang vor den Standardeinstellungen haben. Um eine Sperrmethode f,r Formulare festzulegen, Dffnen Sie das Formular in der Entwurfsansicht und w!hlen im Eigenschaftenfenster die Registerkarte Daten aus. Die Dateneigenschaft Datens7tze sperren erlaubt dieselben Optionen, wie die Standardsperrung: Keine Sperrung, Alle Datens7tze und Bearbeiteter Datensatz. Diese Einstellung gilt nur f,r das Hauptformular. Die Sperrmethode eines Unterformulars wird in der Entwurfsansicht des Unterformulars eingestellt. Programmgesteuert erreichen Sie die Sperrmethode eines Formulars mithilfe der Eigenschaft RecordLocks: Forms![Kunden].RecordLocks=2 Dieser Befehl aktiviert die pessimistische Datensatzsperrung f,r das Formular Kunden. Die Werte 0 bis 2 entsprechen den Optionen Keine Sperrung, Alle Datens7tze und Bearbeiteter Datensatz.
Abb. 12.7 Im Formular legt die Eigenschaft Datens(tze sperren die Sperrmethode fest
Recordsets sperren
668
Wem die SperrmDglichkeiten im Formular noch nicht ausreichen, der kann auf die Access-Programmierung zur,ckgreifen. Access kann nicht nur einzelne Datens!tze sperren, sondern auch ganze Recordsets mit beliebig vielen Datens!tzen. Zu diesem Zweck besitzt jeder Recordset die Eigenschaft LockEdits, die entweder wahr (True) oder falsch (False) ist. Wenn Sie dieser Eigenschaft den Wert True zuordnen, ver-
Access am SQL-Server
wendet Access die pessimistische Sperrung f,r den Recordset. In diesem Fall sperrt Access das Recordset, sobald die Methode Edit aufgerufen wird, bis die 0nderungen mit der Update-Methode gespeichert werden. Recordset.LockEdits=True "pessimistisch sperren Recordset.Edit "Recodset sperren ... "RecordSet Bndern Recordset.Update "Underungen speichern Eigenschaft LockEdits=False f,hrt zur optimistischen Sperrung des Recordsets. In diesem Fall wird die Sperrung erst mit der Update-Methode kurz f,r die Dauer des Schreibvorgangs aktiviert. Im Mehrbenutzerbetrieb kann es vorkommen, dass ein anderer Benutzer dieselben Daten ver!ndert, die Sie gerade im Formular sehen. Wenn Sie sichergehen wollen, dass Access die aktuellen Daten im Formular anzeigt, dr,cken Sie entweder die Taste ) oder rufen den Befehl Datens7tze > Anzeige aktualisieren auf. Im Programmcode erreichen Sie die Anzeigeaktualisierung mit folgendem Befehl:
Anzeige aktualisieren
Forms![Kunden].Refresh Die Anzeigeaktualisierung zeigt Ihnen jedoch nur ge!nderte Daten an. Neue oder gelDschte Datens!tze bleiben Ihnen trotzdem vorenthalten. Damit Sie von Access auch ,ber neue oder gelDschte Daten informiert werden, ist eine Datenaktualisierung erforderlich, die nicht nur den Bildschirm aktualisiert, sondern die zugrunden liegende Tabelle oder Abfrage neu ausf,hrt. Dabei wird aber auch der Satzzeiger neu positioniert, so dass Access die Datenaktualisierung nicht automatisch ausf,hren kann. Manuell erreichen Sie die Datenaktualisierung mit den Tasten H). Benutzen Sie in VBA statt Refresh die Methode Requery.
Daten aktualisieren
Forms![Kunden].Requery
Access am SQL-Server Obwohl Access netzwerkf!hig ist, kommt es in großen Netzwerken vor, dass die Leistungsgrenze von Access ,berschritten wird. Die Grenze bilden die Datenmenge einerseits und die Anzahl der Datenbankbenutzer andererseits. Wann die Leistungsgrenze von Access ,berschritten ist, l!sst sich nicht pauschal festlegen. Diese Frage produziert lediglich weitere Fragen, die im Einzelfall beantwortet werden m,ssen: Wie viele Datenbanknutzer arbeiten gleichzeitig mit derselben Datenbank? Handelt es sich haupts!chlich um lesende oder schreibende Datenzugriffe? Wie hoch ist die Auslastung des Netzwerks... Wo die MDglichkeiten von Access enden, beginnt das Einsatzgebiet der schnelleren SQL-Server, die große Datenmengen und mehrere hundert gleichzeitige Datenzugriffe verkraften. Neben der Geschwindigkeit sprechen auch Datensicherheit und Datenschutz f,r den Einsatz eines SQL-Servers. Das bedeutet aber keinesfalls, dass Sie auf Access verzichten m,ssen. Der Einstieg in die Client /Server-Welt f,hrt viel-
Leistungsgrenze von Access
Arbeitsteilung zwischen Access und SQL-Servern
669
Access im Netzwerk
mehr zu effektiver Teamarbeit: Als Client bleibt Access f,r Abfragen, Formulare, Berichte und die Programmierung zust!ndig, w!hrend der SQL-Server die Verwaltung der Datenbanktabellen ,bernimmt.
File-Server versus Client/Server
Diese Arbeitsteilung f,hrt zu einer erheblichen Entlastung des Netzwerks: Bei der Ausf,hrung einer Abfrage kann es im File-Server-Netzwerk vorkommen, dass Access die gesamte Datenbank vom Server auf die Arbeitsstation kopiert. Das kostet Zeit! In einer Client/Server-Umgebung muss Access die Daten mithilfe von SQLBefehlen beim SQL-Server anfordern. Die Abfrage wird dort ausgewertet, so dass der SQL-Server anschließend nur das Ergebnis an die Arbeitsstation zur,cksendet. Das Netz wird also nur mit der Ergebnismenge aber nicht mit der gesamten Datenbank belastet.
Projekte mit einem SQL-Server Der Entwurf einer Datenbank nach dem Client/Server-Prinzip erfordert zwei Komponenten: Die Schnittstelle zum Benutzer ,bernimmt das so genannte FrontEndProgramm. Hierf,r eignen sich anwenderfreundliche Programme, die mit Access, Visual Basic oder vergleichbaren Programmiersprachen entwickelt werden. F,r die Datenhaltung ist das BackEnd verantwortlich. Hier kommt einer der SQL-Server von Gupta, Informix, Microsoft, Oracle oder eines anderen Herstellers in Frage.
Microsoft Access Project
ξ ξ ξ ξ
ξ ξ ξ ξ ξ
Tabellen Sichten Gespeicherte Prozeduren Datenbankdiagramme
Formulare Berichte Seiten Makros Module
Verbindet das Access-Projekt mit der SQL-Server Datenbank
OLE DB
Microsoft SQL ServerDatenbank
Abb. 12.8 Aufbau eines AccessProjekts
ξ ξ ξ ξ
Tabellen Sichten Gespeicherte Prozeduren Datenbankdiagramme
In der SQL-Server Datenbank gespeicherte Datenbankobjekte
In Access gespeicherte Datenbankobjekte
Bei der Entwicklung einer Client/Server-Anwendung mit Access lagern Sie die Datenhaltung weitgehend auf den Server aus. Die Arbeit mit Access konzentriert sich hierbei auf die Entwicklung und Pflege der Anwendung, die sp!ter auf den Client-PCs ausgef,hrt wird. Ab der Version Access 2000 wird diesem Modell erstmals in Form so genannter Projekte Rechnung getragen. Um ein Projekt anlegen zu kDnnen, benDtigen Sie einen der folgenden SQL-Server: 670
Access am SQL-Server
Microsoft SQL-Server 7.0 Microsoft Data Engine (MSDE) Microsoft SQL-Server 6.5 zusammen mit SQL-Server Service Pack 5 oder hDher Die Anlage eines neuen Projekts erfolgt ,ber den Men,befehl Datei > Neu und einen Doppelklick auf das Symbol Projekt (neue Datenbank). Access Dffnet zun!chst den Dialog Neue Datenbankdatei, der Sie zur Eingabe eines Namens f,r das Projekt auffordert. Die Kennzeichnung der Datei erfolgt automatisch ,ber die Erweiterung .adp (f,r englisch Access Database Project).
Abb. 12.9 Start des MicrosoftSQLServer-Datenbank-Assistenten
Sobald Sie den Dateinamen f,r das Projekt festgelegt haben, startet Access den Microsoft-SQL-Server-Datenbank-Assistenten, mit dem Sie eine Verbindung zu einem SQL-Server herstellen. Der Assistent fordert Sie unter anderem zur Eingabe eines SQL-Server-Namens, einer Anmeldungs-ID und eines Kennwortes auf. Dies sind die Informationen, die zur Anmeldung an den SQL-Server erforderlich sind. Unmittelbar nach der erfolgreichen Anmeldung an den SQL-Server beginnt der Assistent mit der Anlage einer Datenbank und verbindet diese mit dem Access-Projekt. Die weitere Arbeit mit dem Access-Projekt !hnelt der Handhabung einer Access-Datenbank.
671
Access im Netzwerk
Abb. 12.10 Entwurfsansicht einer SQL-Server-Tabelle
Der wesentliche Unterschied gegen,ber einer herkDmmlichen Access-Datenbank besteht darin, dass Sie statt mit Access-Tabellen und -Abfragen nun mit SQL-ServerTabellen und -Sichten arbeiten. Diese Objekte werden nicht innerhalb einer AccessDatenbank, sondern direkt auf dem SQL-Server verwaltet. Das Datenbankfenster enth!lt außerdem die Symbole Datenbankdiagramme und Gespeicherte Prozeduren, die die gleichnamigen Objekttypen des SQL-Servers repr!sentieren. F,r den Entwurf dieser Objekte stellt Ihnen Access die gleichen Tools wie Microsoft Visual InterDev und Microsoft Visual Basic zur Verf,gung. Falls Sie den SQL-Server 7.0 installiert haben, stehen Ihnen außerdem die im Lieferumfang des SQL-Servers enthaltenen Tools zur Einrichtung und Wartung einer Datenbank, insbesondere der Enterprise Manager, zur Verf,gung.
Tipp
Hinweis
Um die Datenquelle eines Projekts sp!ter zu !ndern, w!hlen Sie den Befehl Datei -> Verbindung aus der Men,zeile. Access Dffnet dann den Dialog Datenlinkeigenschaften, mit dessen Hilfe Sie einen anderen SQL-Server ausw!hlen kDnnen. Die Pbertragung der Datentabellen und der Abfragen aus einer Access-Datenbank auf einen SQL-Server erleichtert der so genannte Upsizing-Assistent. Der Start dieses Assistenten erfolgt ,ber den Men,befehl Extras > Datenbank-Dienstprogramme > Upsizing-Assistent.
MSDE oder der SQL-Server im Lieferumfang von Access Die Microsoft Data Engine (kurz: MSDE) ist eine Art SQL-Server, der im Lieferumfang von Access XP enthalten ist. Laut Microsoft handelt es sich hierbei um die gleichen Bin!rdateien, die auch im Lieferumfang des SQL-Servers 7.0 enthalten sind. Die Microsoft Data Engine ist allerdings an den folgenden wesentlichen Punkten eingeschr!nkt: 672
Access am SQL-Server
Die MSDE enth!lt (außer Access XP) keine Tools zum Entwurf und zur Verwaltung von SQL-Server-Datenbanken. Die GrDße einer Datenbank ist auf zwei GByte begrenzt. Die Unterst,tzung der Parallelverarbeitung durch Symmetrical Multiprocessing (SMP) fehlt. Die MSDE kann bei der Verwendung von Transaktionsreplikation nicht als Replikationsverleger agieren. Es gibt noch mehr Unterschiede zwischen der MSDE und dem SQL-Server 7.0, die genannten weisen aber am deutlichsten auf das Einsatzgebiet der MSDE hin. Mit Ihr soll der Access-Entwickler in die Lage versetzt werden, Client/Server-Anwendung im kleinen Rahmen auch ohne die teure Anschaffung einer SQL-Server-Lizenz zu entwickeln, zu testen und einzusetzen. Mit einer wachsenden Anzahl von Daten und Benutzern, also gehobenen Anspr,chen, stDßt der Anwender immer Dfter auf die Notwendigkeit, einen vollwertigen SQL-Server als Produkt anzuschaffen und zu installieren. Der Vorteil liegt auf der Hand: Mit der MSDE kDnnen Sie Client/Server-Datenbanken sogar auf einem leistungsf!higen Notebook entwickeln und testen. Mit wachsenden Anspr,chen l!sst sich die Datenbank dann mit dem SQL-Server praktisch ohne 0nderungen weiter benutzen und in Netzwerke mit mehreren Hundert Benutzer ,bertragen. Mit Access XP kDnnen Sie also erstmals frei skalierbare Datenbanken entwickeln.
Abb. 12.11 Microsoft Data Engine installieren
673
Access im Netzwerk
MSDE installieren
Obwohl die Microsoft Data Engine nicht automatisch mit Access XP oder Office XP installiert wird, befindet sie sich dennoch auf der Installations-CD. Die Installation erfolgt mit dem Programm Setupsql.exe. Sie finden dieses Programm im Ordner \Sql\x86\Setup auf Ihrer Access-XP- oder Office-XP-CD. Auf dieser CD finden Sie außerdem einige Hilfstexte, die die Benutzung der Microsoft Data Engine und der im Lieferumfang enthaltenen Tools n!her beschreiben.
OLE DB, ADO und ODBC Datenquellen
Mit OLE DB (gesprochen: ollie-dibbie) bezeichnet Microsoft ihre neue Technologie f,r den allumfassenden Datenzugriff. OLE DB bietet auf der einen Seite den komfortablen Zugriff auf unterschiedliche Datenquellen. Einige Beispiele f,r solche als Provider bezeichneten Datenquellen lauten wie folgt: Relationale Datenbanken E-Mail-Dateien Unstruktierte Dateien Dateien mit Tabellendaten Mit Access XP werden automatisch die beiden Datenquellen Microsoft Jet 4.0 OLE DB Provider (also die in Microsoft Access enthaltene Datenbankmaschine) und Microsoft OLE DB Provider for SQL-Server auf Ihrem PC installiert.
Datenverbraucher
Datenlinkeigenschaften
Auf der anderen Seite stellt OLE DB diese Daten allen Anwendungsprogrammen zur Verf,gung, die als so genannte Datenverbraucher (data consumer) t!tig werden kDnnen. Dazu z!hlen derzeit Access XP, Office XP und Microsoft Visual Basic 6.0. Alle neu erscheinenden Microsoft-Programme werden sich ebenfalls als Datenverbraucher f,r OLE DB eignen. In der Oberfl!che von Access XP taucht OLE DB im Zusammenhang mit dem Dialog Datenlinkeigenschaften auf. Der Aufruf dieses Dialogs wird unter anderem beim 0ndern der Datenquelle einer Datenzugriffsseite (siehe Kapitel 8 Datenzugriffsseiten) und beim 0ndern der Datenquelle eines Access-Projekts (siehe weiter oben in diesem Kapitel) erforderlich. Sie als Anwender haben zwar nur an wenigen Stellen Kontakt zu OLE DB, profitieren aber in vielfacher Hinsicht von dieser Technologie. Mit OLE DB greifen Sie so komfortabel wie nie zuvor auf Access- und SQL-Server-Datenbanken zu. Da OLE DB außerdem die Schnittstelle zu ODBC, der bisher von Microsoft favorisierten Technik f,r den Datenzugriff, bildet, verf,gen Sie ,ber eine einheitliche Schnittstelle zu fast beliebigen Daten.
674
Access am SQL-Server
Die so genannten Active Data Objects sind nur f,r Programmierer interessant. Mit ihnen kDnnen Sie von Access Basic aus via OLE DB auf beliebige Datenquellen zugreifen. Gegen,ber dem ODBC-Standard bietet ADO den Vorteil, dass der Entwickler mittels objektorientierter Programmierung auf die Daten zugreifen kann. Der Gebrauch komplizierter API-Funktionen entf!llt weitgehend.
Abb. 12.12
ADO
Application/Browser
Der prinzipielle Aufbau von OLE DB
ADO
OLE DB
ODBC
SQL Data SQL Server Jet FoxPro
Oracle Other
Non SQL Data Mail Text
Video Directory Other Services
Mainframe and Legacy Data
Abb. 12.13 Aufbau der ODBCSchnittstelle zwischen Access und SQL-Servern
675
Access im Netzwerk
Bis zur Einf,hrung von OLE DB war ODBC (f,r: Open Database Connectivity) der unumstrittene Standard f,r den Datenzugriff. Da ODBC sich bereits seit mehreren Jahren etabliert hat, gibt es f,r praktisch jedes Datenbankformat vom PC bis zum Großrechner von FoxPro bis Oracle einen passenden ODBC-Treiber. Allein aus diesem Grund wird ODBC noch l!ngere Zeit die Welt der Daten pr!gen.
ODBC
ODBC ist urspr,nglich als direkte Schnittstelle zwischen einer Anwendung wie Microsoft Access und einer Datenquelle wie beispielsweise einem SQL-Server geschaffen worden und wird nach wie vor als solche eingesetzt. Im perfekten Zusammenspiel mit OLE DB stellt es eben die Daten zur Verf,gung, f,r die es bisher noch keinen OLE-DB-Treiber gibt. Ein Einschr!nkung von ODBC gegen,ber OLE DB besteht darin, dass es nur auf relationale Datenquellen wie Desktop-Datenbanken und SQL-Server zugreifen kann.
676
Makroprogrammierung Das erste Makro Makroerstellung im Detail Grundlagen der Makroprogrammierung Makroprogrammierung in der Praxis
680 683 692 745
13
Makroprogrammierung
In den vorhergehenden Kapiteln haben Sie alles Notwendige kennen gelernt, um Abfragen, Formulare und Berichte zu erstellen. In diesem Kapitel geht es darum, wie Sie die Benutzerfreundlichkeit dieser Objekte weiter steigern kDnnen. Das richtige Werkzeug dazu stellt Ihnen Access in Form der Makros zur Verf,gung. Makros dienen vor allem zur Automatisierung h!ufig wiederkehrender Vorg!nge. Im Gegensatz zu einer Programmiersprache kDnnen Makros auch von Anf!ngern nach kurzer Einarbeitungszeit effektiv eingesetzt werden. Das vergleichsweise unkomplizierte Erstellen der Makros geht jedoch nicht auf Kosten des Komforts oder der Leistungsf!higkeit. Es ist sogar mDglich, ohne eine einzige Programmierzeile in VBA nur mit der Hilfe von Makros eine ansprechende Datenbankanwendung zu entwickeln. Im Folgenden lernen Sie die grundlegenden Techniken zum Erstellen eines Makros sowie deren praktischen Einsatz kennen. Das Spektrum reicht hierbei von einfachen Befehlsschaltfl!chen bis hin zu selbsterstellten Dialogfenstern.
Aufbau von Makros
Makros sind nichts anderes als eine Liste von Aktionen, die nacheinander ausgef,hrt werden. Prinzipiell kDnnen Sie alle Aktionen eines Makros auch von Hand ,ber die Men,befehle von Access ausf,hren.
Abb. 13.1 Die Kategorie Makros des Datenbankfensters
678
Makroprogrammierung
Wie f,r alle Objekttypen stellt Access auch f,r Makros eine eigene Kategorie im Datenbankfenster zur Verf,gung. Nachdem Sie die Schaltfl!che Makros mit der Maus angeklickt oder den gleichnamigen Men,punkt des Men,s Ansicht > Datenbankobjekte ausgew!hlt haben, erscheinen im Datenbankfenster die Namen aller bereits vorhandenen Makros der aktuellen Datenbank. Im Datenbankfenster kDnnen Sie die Makros – wie bei Objekten des Datenbankfensters ,blich – verwalten. Dazu gehDrt beispielsweise das LDschen und Kopieren ,ber die Befehle des Men,s Bearbeiten oder das Umbenennen ,ber den gleichnamigen Men,punkt. MDchten Sie ein bereits vorhandenes Makro zur Bearbeitung Dffnen, markieren Sie den Namen des Makros ,ber einen Mausklick und bet!tigen die Schaltfl!che Entwurf des Datenbankfensters. Zum Erstellen eines neuen Makros klicken Sie auf die Schaltfl!che Neu.
4ffnen und Erstellen eines Makros
Abb. 13.2 Das Makro-Fenster
In beiden F!llen erscheint das Makro-Fenster, in dem die einzelnen Aktionen des Makros angeordnet werden. Sollten Sie ein neues Makro erstellt haben, werden Sie vor dem Schließen des Makro-Fensters ,ber das Systemfeldsymbol oder die Tastenkombination S$ zur Eingabe eines Namens aufgefordert. Bei der Namensvergabe d,rfen Sie Ihrer Phantasie freien Lauf lassen. Der Name darf jedoch keine Punkte (".") enthalten. Weiterhin sollten Sie beachten, dass Sie keine doppelten Makro-Namen vergeben d,rfen.
679
Makroprogrammierung
Abb. 13.3 Speichern des Makros
Autoexec-Makros
Hinweis
Wenn Sie Ihrem Makro den Namen Autoexec geben, hat dies eine besondere Bedeutung: Dieses Makro wird automatisch bei Rffnen der Datenbank ausgef,hrt. W!hrend der Bearbeitung eines Makros kDnnen Sie dieses ,ber den Men,befehl Datei > Speichern unter dem aktuellen Namen speichern. Der Men,befehl Datei > Speichern unter > Exportieren ermDglicht dagegen die Speicherung unter einem neuen Namen. Access legt hierbei eine Kopie des Makros an. Mit der Option Modul kann das Makro sogar in eine VBA-Prozedur konvertiert werden.
Das erste Makro Um nicht zu abstrakt an diese Thematik heranzugehen, soll im Folgenden die Erstellung eines einfachen Makros ohne große Detailerkl!rungen erfolgen. Sie haben schnell ein ausf,hrbares Makro erstellt. Die Erkl!rungen zu den einzelnen Schritten mDgen sp!ter erfolgen. Sie benDtigen dazu die Nordwind-Datenbank, die als Beispieldatenbank mit Access ausgeliefert wird.
680
1
Rffnen Sie die Nordwind-Datenbank.
2
Aktivieren Sie das Register Tabellen. (Normalerweise wird ein Makro ,ber das Register Makro erstellt; in diesem Fall soll die einfache MDglichkeit, Tabellen in den Editor zu ziehen, demonstriert werden.)
3
Starten Sie den Makro-Editor ,ber Einf1gen > Makro.
4
Verkleinern Sie beide Tabellen und ordnen Sie diese so auf dem Bildschirm an, dass sie sich nicht wesentlich ,berschneiden.
5
Fassen Sie die Tabelle Artikel mit der Maus an und ziehen Sie diese in den Makro-Editor. Im ersten Feld der Spalte Aktion lassen sie die Maustaste los.
6
In die Spalte Kommentar schreiben Sie “Artikel-Tabelle 4ffnen“.
7
Dr,cken Sie die T Taste. Der Zellcursor springt in die n!chste Zeile in das Feld Aktion.
8
Klicken Sie auf die Pfeilschaltfl!che im Eingabefeld und w!hlen Sie die Aktion AnwendenFilter.
9
Als Kommentar geben Sie ein “Tabelle nach Mindestbestandsunterschreitungen durchsuchen“.
10
Klicken Sie im unteren Bereich auf die Eingabezelle Bedingung.
11
Rffnen Sie ,ber die Schaltfl!che neben dem Eingabefeld den Ausdrucks-Editor.
12
Doppelklicken Sie im Ausdrucks-Editor nacheinander auf Tabellen – Artikel – Lagerbestand. Im Editor entsteht dadurch ein Ausdruck in korrekter Schreibweise.
Abb. 13.4 Das Makro-Fenster
13
Klicken Sie auf die Kleiner-Schaltfl!che (<).
14
Doppelklicken Sie auf den Listeneintrag Mindestbestand.
15
Pbernehmen Sie den Ausdruck mit OK in den Makro-Editor.
16
Klicken Sie auf die Schaltfl!che Makroname in der Symbolleiste. Im Editor wird dadurch eine Spalte hinzugef,gt.
17
Geben Sie Mindestbestand in der ersten Zeile ein.
18
Klicken Sie auf die Speichern-Schaltfl!che in der Symbolleiste.
19
Geben Sie als Namen Mindestbestand_pr1fen oder einen !hnlichen Namen ein. Dieser Name erscheint im Makro-Register der Datenbankansicht.
20
Schließen Sie den Makro-Editor.
21
Klicken Sie auf das Makro-Register im Datenbankfenster.
22
Markieren Sie das neue Makro Mindestbestand_pr1fen und klicken Sie auf die Schaltfl!che Ausf1hren.
Makroprogrammierung
Abb. 13.5 Das neue Makro wird in der Kategorie Makros aufgef hrt.
Das Makro durchsucht die Tabelle nach Artikeln, bei denen der Mindestbestand unterschritten ist und zeigt die positiven Datens!tze an. Dies ist ein sehr einfaches Beispiel, zeigt aber die funktionalen Vorteile eines Makros f,r immer wiederkehrende Aufgaben. Damit Sie aber in Zukunft ihre eigenen Makros erstellen kDnnen, folgt jetzt noch einmal ein einfaches Makro – diesmal aber mit detaillierten Erl!uterungen zu allen Details.
Abb. 13.6 Das Makro sucht alle Datens!tze, bei denen der Mindestbestand unterschritten wurde, heraus
682
Makroerstellung im Detail
Makroerstellung im Detail Jedes Makro wird in einem eigenen Makro-Fenster bearbeitet, das jeweils aus zwei Spalten besteht: In der Spalte Aktion (auch Aktionsspalte genannt) geben Sie die Namen der einzelnen Aktionen an; in der Spalte Kommentar kDnnen Sie diese bei Bedarf kommentieren.
Abb. 13.7
Aktionsspalte
Elemente des MakroFensters
Kommentarspalte
Aktion
Aktive Aktion
Aktionsargumente
Aktionsbeschreibung
Jede Aktion muss in einer einzelnen Zeile (auch Aktionszeile genannt) angegeben werden. Access arbeitet die einzelnen Aktionen eines Makros von oben nach unten ab. Dementsprechend kommt es auf die Reihenfolge an, in der Sie die einzelnen Aktionen in der Aktionsspalte platzieren. Zur Eingabe einer Aktion klicken Sie mit dem Mauszeiger auf eine freie Zelle der Spalte Aktion, wodurch die Einf,gemarke positioniert wird. Wahlweise navigieren Sie ,ber die Pfeiltasten durch die Zeilen und Spalten des Makro-Fensters. Am rechten Rand der Aktionsspalte erscheint eine Schaltfl!che, mit deren Hilfe Sie durch Anklicken ein Listenfeld herunterklappen kDnnen. In dieser Liste zeigt Access alle verf,gbaren Aktionen an. Aus dieser Liste w!hlen Sie beispielsweise die Aktion Meldung aus. Die Aufgabe dieser Aktion ist es, ein Meldungsfenster mit einem Informationstext anzuzeigen. Nachdem Sie die Aktion ausgew!hlt haben, erscheint der Name der Aktion in der Aktionsspalte. Wenn Ihnen die Auswahl einer Aktion ,ber die Liste zu umst!ndlich sein sollte, geben Sie den Aktionsnamen direkt ,ber die Tastatur ein. 683
Makroprogrammierung
Aktionsargumente
Die Aktion Meldung benDtigt zur Ausf,hrung noch genauere Angaben ,ber den Typ und das Aussehen des Meldungsfensters. Dazu gehDrt beispielsweise der Text, der als Information angezeigt wird oder die Auswahl eines Symbols, das zusammen mit dem Text in dem Meldungsfenster erscheint. Diese Angaben kDnnen Sie unter den Aktionsargumenten der Aktion machen, die im unteren Teil des Makro-Fensters angezeigt werden. Zwischen den beiden Fensterbereichen wechseln Sie durch Anklicken eines Aktionsarguments oder ,ber die Taste &. Die Aktion Meldung hat insgesamt vier Aktionsargumente, ,ber die Sie das Aussehen des Meldungsfensters an Ihre Anforderungen anpassen kDnnen. Die vier Aktionsargumente sind speziell auf die Meldung-Aktion zugeschnitten. Andere Aktionen wie beispielsweise die ffnenFormular-Aktion haben andere Aufgaben und damit auch andere Aktionsargumente.
Aktionsargumente der Meldung-Aktion
Der Name Meldung des erste Aktionsargument der Meldung-Aktion stimmt zuf!lligerweise mit dem Aktionsnamen ,berein. Unter diesem Argument geben Sie den Text an, den Access innerhalb des Meldungsfensters anzeigt. Neben dem Meldung-Aktionsargument finden Sie hier noch drei weitere Aktionsargumente mit den Namen Signalton, Typ und Titel. Die folgende Tabelle enth!lt eine Erkl!rung aller vier Argumente:
Die Aktionsargumente der Meldung-Aktion
Aktionsargument
Beschreibung
Meldung
Ein Text, der innerhalb des Meldungsfensters angezeigt wird
Signalton
Diese Argument bestimmt, ob kurz vor dem Anzeigen ein Signalton ertDnt, der den Anwender auf das Meldungsfenster aufmerksam macht. Geben Sie hier entweder Ja oder Nein an.
Typ
W!hlt ein Symbol aus, das zus!tzlich zum Text in dem Meldungsfenster angezeigt wird
Titel
Legt den Text fest, der im Titel des Meldungsfensters erscheint. Wenn Sie hier nichts angeben, erscheint der Text Microsoft Access. Tabelle 13.1
Bei einigen Aktionsargumenten d,rfen Sie keinen beliebigen Text eingeben, sondern m,ssen eine von mehreren Vorgaben ausw!hlen. Dies ist beispielsweise f,r das Aktionsargument Typ der Fall. Wenn Sie die Einf,gemarke in das Eingabefelder des Aktionsarguments positionieren, zeigt Access auf der rechten Seite die Schalt684
Makroerstellung im Detail
fl!che eines Kombinationsfeldes an. Durch einen Klick auf dieses Schaltfl!che erscheint eine Liste, die alle f,r das Aktionsargument Typ zul!ssigen Einstellungen enth!lt. Einen Pberblick ,ber dieses Einstellungen gibt Ihnen die folgende Tabelle:
M&gliche Einstellungen des Aktionsarguments Typ
Einstellung
Symbol
Ohne Symbol
Es wird kein Symbol angezeigt
Kritisch
Warnmeldung (?)
Warnmeldung
(!)Information
Tabelle 13.2 Das Aktionsargument Signalton hat ebenfalls eine entsprechende Liste, aus der Sie eine bestimmte Einstellung ausw!hlen kDnnen. Sie haben hier jedoch nur die Wahl zwischen Ja und Nein. Bei einigen Aktionen ist es wichtig, dass Sie die Aktionsargumente jeweils von oben nach unten mit Werten f,llen, da bestimmte Abh!ngigkeiten zwischen den Inhalten bestehen. Wenn Sie sich einmal nicht ,ber die Bedeutung eines Aktionsarguments im Klaren sind, hilft Ihnen der blaue Text weiter, den Access rechts neben den Aktionsargumenten anzeigt. Hier finden Sie eine Kurzbeschreibung des Aktionsarguments, in dem sich momentan die Einf,gemarke befindet. Auch in der Online-Hilfe von Access werden alle Aktionen dokumentiert. Um direkt zur passenden Hilfeseite zu gelangen, bet!tigen Sie einfach die !-Taste. Wenn Sie die Aktionsargumente der Meldung-Aktion mit den gew,nschten Angaben gef,llt haben, starten Sie das Makro zu Testzwecken. Dazu klicken Sie mit der Maus auf das Symbol Ausf1hren der Symbolleiste. Haben Sie seit dem letzten Speichern eine 0nderung an dem Makro vorgenommen, werden Sie vor der Ausf,hrung zum erneuten Speichern aufgefordert.
Hinweis
Hilfe zu Aktionsargumenten
Ausf hren des Makros
685
Makroprogrammierung
Alternativ kDnnen Sie das Makro auch ,ber den Men,punkt Extras > Makro > Makro ausf1hren starten. W!hlen Sie in dem Dialogfenster den Namen Ihres Makros aus und klicken Sie auf OK.
Abb. 13.8 Das Dialogfenster Makro ausf3hren
Wenn Sie die obigen Schritte nachvollzogen haben, sollte beim Ausf,hren des Makros ein Meldungsfenster erscheinen. Nachdem Sie die Meldung ,ber die OKSchaltfl!che quittiert haben, setzt Access die Ausf,hrung des Makros fort. Da in den folgenden Zeilen keine weiteren Aktionen angegeben sind, ist das Makro damit beendet.
Abb. 13.9 Das fertige Meldungsfenster
Das Makro soll nun um eine weitere Aktion erweitert werden, die ein bestimmtes Formular Dffnet. Dazu gehen Sie wie folgt vor: 1
Rffnen Sie das Makro in der Entwurfsansicht.
2
Positionieren Sie die Einf,gemarke in die zweite Aktionszeile direkt unterhalb der Meldung-Aktion.
3
W!hlen Sie aus der Liste die Aktion ffnenFormular aus, deren Aufgabe das Rffnen eines Formulars ist.
In unteren Teil des Makro-Fensters werden nun sechs verschiedene Aktionsargumente angezeigt. Von besonderem Interesse sind die ersten beiden Aktionsargumente mit den Namen Formularname und Ansicht. Pber das erste Argument geben Sie den Namen des Formulars an, das Access Dffnen soll. Auch dieses Aktionsargument ist wieder mit einer Liste verkn,pft, die alle Formulare der Datenbank enth!lt. W!hlen Sie hier ein beliebiges Formular aus. Sollte die Liste leer sein, sind in Ihrer Datenbank keine Formulare enthalten.
686
Makroerstellung im Detail
Das zweite Aktionsargument bestimmt, in welcher Ansicht das Formular geDffnet werden soll. Hier haben Sie – ebenfalls ,ber die Liste eines Kombinationsfeldes – die Auswahl zwischen den Ansichten Formular, Entwurf, Seitenansicht und Datenblatt. Um das Formular in der Formularansicht zu Dffnen, w!hlen Sie die Einstellung Formular aus. Wenn Sie zum Start des Makros auf das Ausf1hren-Symbol der Symbolleiste klicken, erscheint zun!chst wieder die Speichermeldung, die Sie mit Ja best!tigen. Anschließend startet das Makro. Access f,hrt nun zun!chst die erste Aktion – also die Meldung-Aktion – aus und zeigt das Meldungsfenster an. Erst wenn Sie dieses mit OK best!tigen und die erste Aktion damit beendet ist, f,hrt Access die zweite Aktion aus und Dffnet das Formular. Dies ist eine wichtige Tatsache, die f,r alle Makros gilt: Erst wenn eine Aktion vollst!ndig beendet ist, f,hrt Access die n!chste Aktion aus.
Abb. 13.10 Das Makro mit zwei Aktionen
9bersicht aller Makro-Aktionen Neben den beiden vorgestellten Aktionen stellt Access insgesamt 53 Aktionen zur Verf,gung, die spezielle Aufgaben erf,llen. Die folgende Tabelle enth!lt eine Pbersicht: 687
Makroprogrammierung
9bersicht ber alle Aktionen
688
Aktion
Erkl!rung
AbbrechenEreignis
Bricht das Ereignis ab, welches zum Start des Makros f,hrte
AktualisierenDaten
Aktualisiert die Daten eines Steuerelements, die auf Tabellen oder Abfragen basieren
AktualisierenObjekt
Aktualisiert ein Datenbankobjekt
AnwendenFilter
Filtert die Datens!tze eines Formulars oder Berichts
AnzeigenAlleDatens7tze
Entfernt alle Filter des aktiven Formulars
Ausf1hrenAnwendung
Startet eine DOS- oder Windows-Anwendung
Ausf1hrenBefehl
F,hrt einen bestimmten Befehl (z.B. aus der Men,leiste) aus. Diese Aktion ersetzt die Ausf1hrenMen1befehl-Aktion !lterer Access-Versionen.
Ausf1hrenCode
F,hrt eine VBA-Function-Prozedur aus
Ausf1hrenMakro
F,hrt ein Makro aus
Ausf1hrenSQL
F,hrt eine SQL-Aktionsabfrage aus
AusgabeIn
Exportiert ein Objekt in das Text-, Rich-Text-, Excel-, IIS-, Active Server Page- oder HTML-Format
Ausw7hlenObjekt
W!hlt ein Datenbankobjekt aus
Drucken
Druckt Datenbl!tter, Formulare oder Berichte aus
Echo
Bestimmt, ob Access den Bildschirm w!hrend der Makro-Ausf,hrung aktualisiert
EinblendenSymbolleiste
Aktiviert oder deaktiviert eine Access-Symbolleiste
GeheZuDatensatz
Macht einen bestimmten Datensatz zum aktuellen Datensatz
GeheZuSeite
Bewegt den Fokus des aktiven Formulars auf das erste Feld einer bestimmten Seite
GeheZuSteuerelement
Gibt einem bestimmten Feld oder Steuerelement den Fokus
Makroerstellung im Detail
9bersicht ber alle Aktionen (Forts.)
Aktion
Erkl!rung
Hinzuf1genMen1
Erstellt einen neuen Hauptmen,punkt f,r ein benutzerdefiniertes Men,. Diese Aktion ist nur noch aus Kompatibilit!tsgr,nden zu !lteren Access-Versionen vorhanden.
KopierenObjekt
Kopiert ein beliebiges Objekt des Datenbankfensters
L4schen Objekt
LDscht ein Objekt des Datenbankfensters
Maximieren
Bringt das aktive Fenster auf VollbildgrDße
Meldung
Zeigt ein Dialogfenster mit einem Text an
Minimieren
Bringt das aktive Fenster auf SymbolgrDße
ffnenAbfrage
Rffnet eine Abfrage
ffnenBericht
Rffnet einen Bericht
ffnenDatenzugriffsseite
Rffnet eine Datenzugriffsseite
ffnenDiagramm
Rffnet ein Diagramm
ffnenFormular
Rffnet ein Formular
ffnenGespeicherteProzedur
Rffnet eine gespeicherte Prozedur
ffnenModul
Rffnet ein VBA-Modul
ffnenSicht
Rffnet eine Ansicht
ffnenTabelle
Rffnet eine Tabelle
Positionieren
Verschiebt die Position oder !ndert die GrDße des aktiven Fensters
Sanduhr
Zeigt eine Sanduhr anstelle des Mauszeigers an
Schließen
Schließt ein Fenster
SendenObjekt
Verschickt ein Objekt ,ber das Netzwerk
SetzenMen1element
Deaktiviert einen Men,punkt oder markiert ihn mit einem H!kchen
SetzenWert
Ver!ndert einen Wert eines Felds, eines Steuerelements oder einer Eigenschaft
Signalton
Erzeugt einen kurzen Ton ,ber den PC-Lautsprecher 689
Makroprogrammierung
9bersicht ber alle Aktionen (Forts.)
Aktion
Erkl!rung
Speichern
Speichert ein Objekt
StopAlleMakros
Beendet alle momentan ausgef,hrten Makros
StopMakro
Beendet das Makro
SuchenDatensatz
Sucht einen Datensatz
SuchenWeiter
Wiederholt die letzte Suche nach Datens!tzen
Tastaturbefehle
Simuliert das Bet!tigen von Tasten
TransferArbeitsblatt
Tauscht Daten mit einer Tabellenkalkulation aus
TransferDatenbank
Tauscht Daten zwischen Datenbanken aus
TransferText
Im- oder exportiert Textdateien
UmbenennenObjekt
Benennt das ausgew!hlte Datenbankobjekt um
Verlassen
Beendet Access
Warnmeldungen
Unterdr,ckt die Ausgabe von Systemmeldungen
Wiederherstellen
Bringt das aktive Fenster auf seine urspr,ngliche GrDße Tabelle 13.3
Editieren von Makros Verschieben von Aktionszeilen
Oft ist es notwendig, nachtr!glich 0nderungen an Makros vorzunehmen. Dazu gehDrt beispielsweise das Verschieben einer oder mehrerer Aktionen zu einer anderen Aktionszeile. Um eine einzelne Aktionszeile zu verschieben, klicken Sie mit der Maus auf die Schaltfl!che am linken Rand der Aktionszeile, die auch als Aktionszeilenmarkierer bezeichnet wird. Durch das Anklicken wird die komplette Aktionszeile ausgew!hlt und mit einem Pfeil markiert. Die so markierte Zeile kDnnen Sie nun per Drag & Drop an eine neue Position verschieben. Dazu positionieren Sie den Mauszeiger auf die Pfeilschaltfl!che und dr,cken die linke Maustaste. Bewegen Sie den Mauszeiger bei gedr,ckt gehaltener Maustaste an die neue Position. Die genaue Position, an der die Aktion eingef,gt wird, kennzeichnet Access durch eine horizontale Linie im Makro-Fenster. Nachdem Sie die Maustaste gelDst haben, f,gt Access die Aktion inklusive den zugehDrigen Aktionsargumenten an der neuen Position ein. Sind an der neuen Position bereits Aktionen vorhanden, werden diese automatisch nach unten verschoben.
690
Makroerstellung im Detail
Mit der gleichen Technik verschieben Sie auch mehrere Aktionszeilen gleichzeitig. Hierzu markieren Sie lediglich mehrere Zeilen, indem Sie zun!chst den ersten Aktionszeilenmarkierer anklicken und die Maustaste gedr,ckt halten. Bevor Sie die Maustaste lDsen, ziehen Sie den Mauszeiger ,ber alle folgenden Zeilen, die Sie markieren mDchten. Access stellt nun diese Aktionszeilen invertiert dar. Eine weitere MDglichkeit besteht darin, dass Sie zun!chst die erste Aktionszeile markieren und anschließend bei gedr,ckt gehaltener H-Taste auf den Aktionszeilenmarkierer der letzten Aktionszeile klicken. Bei beiden Vorgehensweisen ist es nur mDglich, einen zusammenh!ngenden Block von Aktionszeilen zu markieren. Auf markierte Aktionszeilen kDnnen Sie auf die gewohnte Art und Weise die Funktionen der Zwischenablage anwenden. Der Men,punkt Bearbeiten > L4schen lDscht beispielsweise die markierten Aktionszeilen, wogegen der Men,punkt Bearbeiten > Ausschneiden diese vor dem LDschen in die Zwischenablage kopiert. Um schnellen Zugriff auf die Funktionen der Zwischenablage zu erhalten, kDnnen Sie ,ber einen Klick mit der rechten Maustaste auch das Kontextmen, aktivieren, in dem die Men,punkte Ausschneiden, Kopieren und Einf1gen zur Verf,gung stehen. Auch ein Men,punkt zum LDschen von Aktionszeilen ist im Kontextmen, vorhanden. MDchten Sie bestimmte Aktionszeilen duplizieren, so markieren Sie diese und w!hlen den Men,punkt Bearbeiten > Kopieren aus. Bewegen Sie die Einf,gemarke nun auf die Aktionszeile, nach der die Aktionen der Zwischenablage eingef,gt werden sollen, und w!hlen den Men,punkt Bearbeiten > Einf1gen aus. Nat,rlich erreichen Sie das Ziel auch, wenn Sie die gleichnamigen Men,punkte des Kontextmen,s verwenden. Wenn Sie ein Makro um neue Aktionen erg!nzen mDchten, benDtigen Sie eventuell zwischen zwei Aktionen Platz f,r neue Aktionszeilen. Positionieren Sie den Mauszeiger ,ber eine Aktionszeile und aktivieren Sie mit der rechten Maustaste das Kontextmen,. Hier w!hlen Sie nun den Men,punkt Zeilen einf1gen des Kontextmen,s aus. Access f,gt daraufhin eine leere Zeile oberhalb der aktuellen Aktionszeile ein. Wenn Sie eine vorhandene Aktion durch einen neue Aktion ersetzen, gehen alle Einstellungen der urspr,nglichen Aktion verloren. Sollte dies versehentlich passieren, kDnnen Sie dies ,ber den Men,punkt Bearbeiten > R1ckg7ngig oder einen Mausklick auf das gleichnamige Symbol der Symbolleiste r,ckg!ngig machen. Zum Ausdrucken eines Makros w!hlen Sie den Men,punkt Datei > Drucken aus. Es erscheint ein Dialogfenster, in dem Sie entscheiden kDnnen, welche Informationen des Makros gedruckt werden sollen. Nachdem Sie mit OK best!tigt haben, bringt Access das Makro zu Papier. Wenn Sie ein Makro in VBA-Code umwandeln mDchten, w!hlen Sie einfach den Men,punkt Datei > Speichern unter aus. Im nachfolgenden Dialogfenster aktivieren Sie dann die Option Modul.
Lschen und Kopieren von Aktionszeilen
Hinweis
Einf gen leerer Aktionszeilen
Hinweis
Ausdrucken von Makros
Makro als VBAModul speichern
691
Makroprogrammierung
Abb. 13.11 Das Dialogfenster Makrodefinition drucken
Grundlagen der Makroprogrammierung In diesem Teil des Kapitels geht es um die Grundlagen sowie die allgemeinen Konzepte der Makroprogrammierung. Sie lernen den Aufbau von Ausdr,cken, den Verweis auf Formulare, Unterformulare und Steuerelemente sowie das Konzept der ereignisorientierten Programmierung kennen.
Ausdrcke und Funktionen Eine besonders wichtige Rolle bei der Arbeit mit Makros spielen Ausdr,cke jeglicher Art. Ein Ausdruck ist beispielsweise stellvertretend f,r einen bestimmten Zahlenwert, einen Text oder ein bestimmtes Datum. Ein Ausdruck kann hierbei direkt eine Zahl, ein Text oder ein bestimmtes Datum sein oder eine Berechnungsvorschrift, die ein entsprechendes Ergebnis hat.
Grundlegende Datentypen
Access unterscheidet verschiedene Typen von Ausdr,cken, die eine gewisse 0hnlichkeit mit den Felddatentypen haben, die Sie vom Tabellenentwurf her kennen. Relevant ist hierbei der Datentyp, den der Ausdruck zum Ergebnis hat. Ein Ausdruck, der ein Datum zum Ergebnis hat, unterscheidet sich beispielsweise von einem Ausdruck, der einen Text repr!sentiert. Die folgende Tabelle enth!lt alle Datentypen, die f,r die Makroprogrammierung relevant sind:
Fr Makros relevante Datentypen
Datentyp
Beschreibung
Zahl
Eine beliebige Zahl. Dieser Datentyp wird auch als numerisch bezeichnet.
Text
Ein Text
Datum
Eine Datums- oder Zeitangabe
Logisch
Einer der beiden Zust!nde Wahr und Falsch Tabelle 13.4
692
Grundlagen der Makroprogrammierung
Numerische Ausdrcke Ein numerischer Ausdruck kann entweder ein Wert selbst – wie beispielsweise eine Zahl – oder eine Berechnung sein, die zu einem bestimmten Ergebnis f,hrt. Um beispielsweise zwei Zahlen zu addieren, geben Sie den folgenden Ausdruck an: 3 + 4 Bei diesem Beispiel handelt es sich eigentlich um zwei Ausdr,cke, die zu einem einzigen Ausdruck verkn,pft werden. Die Verkn,pfung wird hierbei durch das +-Zeichen bewerkstelligt, das auch als Operator bezeichnet wird.
Der „+“-Operator
Um sich davon zu ,berzeugen, dass Access diesen Ausdruck wirklich korrekt berechnen kann, legen Sie ein neues Makro an und plazieren in die erste Aktionszeile die Aktion Meldung. Unter dem Aktionsargument Meldung geben Sie nun den Ausdruck „3 + 4“ mit voranstehendem Gleichheitszeichen an: =3+4 Das Gleichheitszeichen ist notwendig, um Access mitzuteilen, dass es sich bei der Eingabe um einen Ausdruck und nicht etwa einen Text handelt. Wenn Sie das Gleichheitszeichen nicht angeben, geht Access davon aus, dass Sie den Text „3 + 4“ anzeigen lassen mDchten. Nach der Eingabe speichern und starten Sie das neue Makro. Access zeigt das Ergebnis kurze Zeit sp!ter in einem Meldungsfenster an. Auf diese Weise kDnnen Sie mithilfe des Testmakros alle Ausdr,cke ausprobieren, die im Folgenden vorgestellt werden.
Abb. 13.12 Das Testmakro zum Ausprobieren von Ausdr cken
693
Makroprogrammierung
Dezimalzahlen
Access kann nicht nur mit ganzen Zahlen, sondern auch mit Dezimalbr,chen rechnen. Probieren Sie einfach einmal den folgenden Ausdruck aus: = 4,6 + 6,3 Auch die Angabe negativer Zahlen ist zul!ssig. Stellen Sie der gew,nschten Zahl dazu einfach ein Minuszeichen voran: = -4,6 + 6,3
Numerische Operatoren
Numerische Operatoren Die Verkn,pfung zweier Teilausdr,cke erfolgt mithilfe so genannter Operatoren. Einen Operator – n!mlich den +-Operator – haben Sie bereits kennengelernt. Dieser Operator addiert zwei Teilausdr,cke. Zur Verkn,pfung zweier numerischer Ausdr,cke stehen eine Reihe von arithmetischen Operatoren zur Verf,gung, ,ber die sich die elementaren Rechenarten der Mathematik ausf,hren lassen. Die folgende Tabelle enth!lt alle Operatoren, die Access unterst,tzt:
Numerische Operatoren
Operator
Priorit!t
Bedeutung
^
1
Potenzierung
*
2
Multiplikation
/
2
Division
\
3
Ganzzahlige Division
Mod
4
Modulo-Berechnung
+
5
Addition
-
5
Subtraktion Tabelle 13.5
Hinweis
694
Der Operator \ f,hrt eine Division ohne Rest durch. Der Ausdruck “7\3“ h!tte daher den Wert 2 zum Ergebnis. Dagegen f,hrt der Mod-Operator eine Division durch und gibt lediglich den Rest aus. Das Ergebnis von “7 Mod 3“ ist also der Wert 1. Die folgende Tabelle enth!lt einige Beispiele zu den einzelnen Operatoren, die Sie ,ber das Testmakro ausprobieren kDnnen. Vergessen Sie nicht, den Ausdr,cken jeweils ein Gleichheitszeichen voranzustellen.
Grundlagen der Makroprogrammierung
Beispiele zur Verwendung von Operatoren
Ausdruck
Ergebnis
10 ^ 2
100
3+4*2
11
(3 + 4) * 2
14
5/2
2.5
2.5 * 3
7.5
2 * 2.5E-5
0.00005
&HAFE / 2
1407
20 Mod 6
2
20 \ 6
3 Tabelle 13.6
Wie bei einem Taschenrechner kommt bei Ausdr,cken mit mehreren Verkn,pfungsoperatoren – beispielsweise “10 * 5 / 7 + 3“ – auf die Priorit!ten an. So ber,cksichtigt Access beispielsweise die Regel “Punkt- vor Strichrechnung“ bei der Auswertung eines Ausdrucks. Die Operatoren mit der hDchsten Priorit!t (Priorit!t 1) haben vor Operatoren mit niedrigerer Priorit!t (z.B. Priorit!t 5) Vorrang. Bei Operatoren mit gleicher Priorit!t wertet Access den Ausdruck von links nach rechts aus. Die Priorit!ten der einzelne Operatoren entnehmen Sie der vorletzten Tabelle.
Priorit!ten der Operatoren
Wie in der Mathematik ver!ndern Sie die Priorit!t eines Operators, indem Sie den jeweiligen Teilausdruck einklammern. Das folgende Beispiel zeigt dies: = 5 * 3 + 4 = 5 * (3 + 4) Der erste Ausdruck hat den Wert 19, der zweite den Wert 35 zum Ergebnis.
Numerische Funktionen Neben den Operatoren zur Ausf,hrung der Grundrechenarten stellt Access noch einige Funktionen zur Verf,gung, die spezielle Berechnungen durchf,hren. Dazu gehDrt beispielsweise die Abs-Funktion, die immer den positiven Wert einer Zahl zur,ckgibt. Die Funktion wird auf die folgende Weise verwendet:
Abs-Funktion
Abs(
)
695
Makroprogrammierung
Der obige Ausdruck wird auch als Syntax bezeichnet. Er ist vergleichbar mit einem L,ckentext, den Sie noch f,llen m,ssen. Die L,cken sind mit einem Text gekennzeichnet, der von spitzen Klammern umgeben ist. Den Teilausdruck m,ssen Sie also durch eine Zahl oder einen Ausdruck ersetzen, der eine Zahl zum Ergebnis hat. G,ltig sind beispielsweise die folgenden Ausdr,cke: = Abs(-6) = Abs(3 - 7) Die Abs-Funktion kann nat,rlich auch als Teilausdruck eingesetzt werden, wie der folgende Ausdruck zeigt: = (2 + Abs(3 - 7) ) * Abs(-2) Die folgende Tabelle enth!lt eine Pbersicht ,ber die numerischen Funktionen von Access:
Numerische Funktionen
Funktion
Beschreibung
Abs()
Berechnet den Absolutwert einer Zahl. Das Ergebnis ist immer der positive Wert der
Exponential()
Potenziert den Wert der eulerschen Zahl e mit
Fix()
Schneidet die Nachkommastellen der ab
Int()
F,hrt zum gleichen Ergebnis wie die Fix-Funktion. Bei negativen Zahlen wird allerdings auf die n!chstkleinere Ganzzahl abgerundet.
Log()
Berechnet den nat,rlichen Logarithmus von
QWurzel()
Berechnet die Quadratwurzel von
Vorzchn()
Ermittelt das Vorzeichen einer Zahl. Wenn positiv ist, gibt die Funktion den Wert 1 zur,ck. Ist dagegen negativ, ist das Ergebnis der Funktion der Wert -1. Sollte den Wert 0 haben, gibt die Funktion ebenfalls 0 zur,ck. Tabelle 13.7
Die folgende Tabelle enth!lt einige Beispiele zu den Funktionen:
696
Grundlagen der Makroprogrammierung
Beispiele zu den mathematischen Funktionen
Ausdruck
Ergebnis
Ausdruck
Ergebnis
Abs(5)
5
Fix(3.12)
3
Abs(-5)
5
Fix(-3.12)
-3
Exp(3)
20,08554
Int(3.12)
3
Log(3)
1,098612
Int(-3.12)
-4
Sqr(9)
3
Sgn(5)
1
Sqr(2.5)
1,581138...
Sgn(-4)
-1 Tabelle 13.8
Neben den vorgestellten Funktionen bietet Access auch eine Reihe trigonometrischer Funktionen wie z.B. Sin, Cos, Tan und Atn. Auch zum Ermitteln zuf!lliger Zahlen gibt es eine entsprechende Funktion mit dem Namen ZZG.
Hinweis
Logische Ausdrcke Bis jetzt haben Sie nur Ausdr,cke kennen gelernt, die einen numerischen Wert zum Ergebnis haben. Eine weitere Klasse von Ausdr,cken bilden die logischen Ausdr,cke. Logische Ausdr,cke kDnnen nur zwei Zust!nde besitzen: Wahr oder Falsch. Sie sind damit vergleichbar mit dem Felddatentyp Ja/Nein, den Sie beim Entwurf von Tabellen verwenden. Access-intern werden diese beiden Zust!nde ,ber die beiden Zahlenwerte 0 (f,r Falsch) und -1 (f,r Wahr) dargestellt. Dies kDnnen Sie schnell ,berpr,fen, indem Sie unter dem Meldung-Aktionsargument des Testmakros den folgenden Ausdruck eingeben:
Wahr und Falsch
= Wahr Nach dem Start des Makros zeigt Access im Meldungsfenster den Wert -1 an. Logische Ausdr,cke kDnnen ,ber logische Operatoren miteinander verkn,pft werden. Ein verkn,pfter Ausdruck wird hierbei mit den Operatoren hDchster Priorit!t zuerst ausgewertet. Bei Operatoren gleicher Priorit!t erfolgt die Auswertung von links nach rechts. Access stellt die folgenden logischen Operatoren zur Verf,gung:
697
Makroprogrammierung
Logische Operatoren
Operator
Priorit!t
Bedeutung
Nicht
1
Negierung
Und
2
Und-Verkn,pfung
Oder
3
Oder-Verkn,pfung
ExOder
4
Exklusive Oder-Verkn,pfung
Tqv
5
Tquivalent-Verkn,pfung
Imp
6
Impliziert-Verkn,pfung Tabelle 13.9
Logische Operatoren
Die folgende Tabelle enth!lt einige Beispiele zur Verwendung der logischen Operatoren.
Beispiele zur Verwendung logischer Operatoren
Ausdruck
Ergebnis
Wahr Und Wahr
Wahr
Wahr Und Falsch
Falsch
Wahr Oder Falsch
Wahr
Falsch Oder Falsch
Falsch
Nicht Falsch
Wahr
Wahr ExOder Wahr
Falsch
Nicht Nicht Wahr
Wahr
Nicht Falsch ExOder Wahr
Falsch Tabelle 13.10
Genau wie bei numerischen Operatoren kDnnen Sie auch bei logischen Operatoren die Priorit!t der Auswertung durch Einklammern von Teilausdr,cken ver!ndern.
698
Grundlagen der Makroprogrammierung
Vergleichsoperatoren Besonders wichtig im Zusammenhang mit logischen Ausdr,cken sind die Vergleichsoperatoren. Sie ermDglichen es, zwei beliebige Ausdr,cke gleichen Typs miteinander zu vergleichen. Das Ergebnis eines Vergleichs ist immer ein logischer Ausdruck, also Wahr oder Falsch. Einer der wichtigsten Vergleichsoperatoren ist der =-Operator. Der Ausdruck 5=2+3 hat beispielsweise Wahr zum Ergebnis, da der Ausdruck links des Gleichheitszeichens mit dem Ausdruck rechts davon ,bereinstimmt. Dies kDnnen Sie im Direktfenster ,berpr,fen, indem Sie hier = 5 = 2 + 3 eingeben. Zur Erinnerung: Das erste Gleichheitszeichen teilt Access lediglich mit, dass Sie einen Ausdruck eingeben mDchten. Erst das zweite Gleichheitszeichen ist der eigentliche Vergleichsoperator. Das Ergebnis ist der Wert -1, der stellvertretend f,r den logischen Wert Wahr ist. Access stellt folgende Vergleichsoperatoren zur Verf,gung:
Vergleichsoperatoren
Operator
Bedeutung
>
GrDßer
<
Kleiner
=
Gleich
<>
Ungleich
<=
Kleiner oder Gleich
>=
GrDßer oder Gleich Tabelle 13.11
Alle Vergleichsoperatoren haben die gleiche Priorit!t. Der Ausdruck wird daher von links nach rechts ausgewertet. Um bestimmte Priorit!ten zu setzen, verwenden Sie wie bei arithmetischen Operatoren runde Klammern. Die folgende Tabelle enth!lt einige Beispiele:
Priorit!t von Vergleichsoperatoren
699
Makroprogrammierung
Beispiele zur Verwendung von Vergleichsoperatoren
Ausdruck
Ergebnis
4=6
Falsch
4<6
Wahr
4>6
Falsch
4 <> 6
Wahr
5 <= 5
Wahr
5<5
Falsch
Wahr Und (5 < 3)
Falsch
(5 < 3) Or (7 > 2)
Wahr Tabelle 13.12
Textausdrcke Angabe von Zeichenketten
Neben numerischen und logischen Ausdr,cken unterst,tzt Access nat,rlich auch die Arbeit mit Texten. Access interpretiert Texte als eine Folge von Zeichen, die auch Zeichenketten oder Strings genannt werden. Zeichenketten werden normalerweise in Anf,hrungszeichen angegeben. Eine g,ltige Angabe ist beispielsweise der folgende Ausdruck: = "Das ist eine Zeichenkette" Durch die Anf,hrungszeichen kann Access genau erkennen, wo ein Text beginnt und wo er endet. Ein Problem tritt auf, wenn die Anf,hrungszeichen Teil der Zeichenkette sein sollen. Dies ist beispielsweise dann der Fall, wenn Sie den Text Mein Name ist "MLller" ausgeben mDchten. In diesem Fall geben Sie die Anf,hrungszeichen, die Teil der Zeichenkette sein sollen, doppelt an. Das folgende Beispiel zeigt dies: = "Mein Name ist ""MLller"""
Verknpfen und Vergleichen von Zeichenketten Verkn pfen von Zeichenketten
700
Genau wie numerische Ausdr,cke lassen sich auch Zeichenketten verkn,pfen. Das Verkn,pfen beschr!nkt sich jedoch auf das Aneinanderh!ngen zweier Zeichenketten ,ber den &-Operator. Die folgenden Beispiele zeigen die Funktion des &-Operators:
Grundlagen der Makroprogrammierung
Funktionsweise des &-Operators
Ausdruck
Ergebnis
"Hallo"
Hallo
"Hans" & "M,ller"
HansM,ller
"Hans" & " " & "M,ller"
Hans M,ller Tabelle 13.13
Beim Vergleich zweier Zeichenketten stehen die gleichen Operatoren wie bei numerischen Ausdr,cken zur Verf,gung. Der =-Operator kontrolliert beispielsweise, ob zwei Zeichenketten identisch sind. Hierbei wird die Groß- und Kleinschreibung nicht ber,cksichtigt. Wenn Sie beispielsweise den Ausdruck
Vergleichen von Zeichenketten
= "Hallo" = "hallo" ,ber das Testmakro auswerten lassen, gibt Access den Wert -1 – also Wahr – zur,ck. Der Vergleich = "Hallo" = "Hall" f,hrt dagegen zum Ergebnis 0 (Falsch). Wenn Sie ,berpr,fen mDchten, ob zwei Zeichenketten nicht identisch sind, verwenden Sie den <>-Operator. Der folgende Ausdruck hat -1 (Wahr) zum Ergebnis, da sich die beiden Zeichenketten unterscheiden: = "Meier" <> "Meyer" Das gleiche Ergebnis ließe sich auch mit einer Kombination aus dem =-Operator und dem Nicht-Operator erzielen: = Nicht ("Meier" = "Meyer") Die Funktion der ,brigen Operatoren wie < oder > bezieht sich auf die alphabetische Sortierreihenfolge der Zeichenketten. Der Ausdruck = "a" < "b"
<, >, <=, >= Kontrolle der Sortierreihenfolge
f,hrt zu dem Ergebnis Wahr, da der Buchstabe “a“ im Alphabet vor dem Buchstaben “b“ liegt. Enth!lt die Zeichenkette mehrere Buchstaben, nimmt Access den Vergleich von links nach rechts f,r jeden einzelnen Buchstaben vor. Das folgende Beispiel hat den logischen Wert Wahr zum Ergebnis, da der dritte Buchstabe der ersten Zeichenkette im Alphabet vor dem entsprechenden Buchstaben der zweiten Zeichenkette liegt: = "Meier" < "Meyer" 701
Makroprogrammierung
Der Wie-Operator
Mit dem Wie-Operator stellt Access einen weiteren Operator zur Verf,gung, der speziell auf den Vergleich von Zeichenketten zugeschnitten ist. Der Wie-Operator ermDglicht den Vergleich einer Zeichenkette mit einem Muster, das mit einem L,ckentext vergleichbar ist. Die Syntax des Wie-Operators hat folgenden Aufbau: Wie <Muster> <Muster> ist ebenfalls eine Zeichenkette, die aus Buchstaben, Sonderzeichen und einigen besonderen Platzhalterzeichen bestehen kann. Platzhalterzeichen stehen f,r einen einzelnen oder eine Gruppe anderer Buchstaben. So liefert der Wie-Operator beispielsweise bei dem Muster M?ier“ das Ergebnis Wahr, wenn eine der Zeichenketten “Meier“ oder “Maier“ ist: = "Meier" Wie "M?ier" = "Maier" Wie "M?ier" Das Ergebnis ist außerdem bei jeder anderen Zeichenkette Wahr, die mit “M“ beginnt, an zweiter Stelle einen beliebigen Buchstaben besitzt und mit “hier“ endet. Die folgende Tabelle enth!lt die wichtigsten Platzhalterzeichen, die Sie zusammen mit dem Wie-Operator einsetzen kDnnen.
Platzhalterzeichen des Wie-Operators
Zeichen
Beschreibung
?
Platzhalter f,r ein beliebiges Zeichen (Buchstabe, Ziffer, Sonderzeichen)
*
Platzhalter f,r mehrere beliebige Zeichen (Buchstaben, Ziffern, Sonderzeichen) oder kein Zeichen
#
Platzhalter f,r eine beliebige Ziffer (0 bis 9) Tabelle 13.14
Die folgende Tabelle zeigt Ihnen einige Beispielmuster und Zeichenketten, bei denen der Wie-Operator zum Ergebnis Wahr oder Falsch f,hrt:
Beispiele zum Wie-Operator
702
<Muster>
Wahr
Falsch
M*er
Maier, Meier, Mer
Mayr
0*1
001,00001,010101
101, 000
Grundlagen der Makroprogrammierung
Beispiele zum Wie-Operator (Forts.)
<Muster>
Wahr
Falsch
A???A
AbbbA, AaBcA
abbbA, AA, ABA
a##a
a11a, a67a,
A00a, A7A, AA Tabelle 13.15
Zeichenkettenfunktionen Access stellt eine Reihe von Funktionen zur Verf,gung, mit denen Sie Zeichenketten manipulieren. Die folgende Tabelle gibt Ihnen eine Pbersicht der wichtigsten Funktionen:
Wichtige Zeichenkettenfunktionen
Funktion
Beschreibung
Links(; )
Liefert den linken Teil einer Zeichenkette
Rechts(; )
Liefert den rechten Teil einer Zeichenkette
TeilStr(; <Start>; )
Gibt einen Teil der Zeichenkette zur,ck
Großbst()
Wandelt die Zeichenkette in Großschrift um
Kleinbst()
Wandelt die Zeichenkette in Kleinschrift um
LGl!tten()
Gibt eine Zeichenkette zur,ck, bei der alle f,hrenden Leerzeichen abgeschnitten sind
RGl!tten()
Gibt eine Zeichenkette zur,ck, bei der alle nachfolgenden Leerzeichen abgeschnitten sind
Gl!tten()
Schneidet alle f,hrenden und nachfolgenden Leerzeichen ab
L!nge()
Ermittelt die Anzahl der Zeichen der Zeichenkette Tabelle 13.16
703
Makroprogrammierung
Links-, Rechts- und TeilStr-Funktion Verwenden Sie die Funktionen Links und Rechts dazu, einen bestimmten Teil einer Zeichenkette zu ermitteln. Die Links-Funktion gibt hierbei den Anfang, die RechtsFunktion das Ende eine Zeichenkette zur,ck. Die Anzahl der Zeichen, die Access auf diese Weise abschneidet, bestimmen Sie mit dem numerischen Argument . Der folgende Ausdruck hat beispielsweise den Text “Mei“ zum Ergebnis: = Links("Meier";3) Die Funktion TeilStr bietet die MDglichkeit, auch Teile inmitten einer Zeichenkette auszuschneiden. Hierzu geben Sie unter <Start> die Position des Zeichens an, bei dem Sie mit dem Ausschneiden beginnen mDchten. Das erste Zeichen der Zeichenkette hat die Position 1, das zweite die Position 2 usw. Das Argument gibt wieder die Anzahl der Zeichen an, welche die Funktion angefangen von der Startposition zur,ckgeben soll. Die folgende Tabelle enth!lt einige Beispiele zu den Funktionen. Sie kDnnen diese wie gewohnt mit vorangestelltem Gleichheitszeichen ,ber das Testmakro ausprobieren. Beispiele zu den Funktionen Links, Rechts und TeilStr
Ausdruck
Ergebnis
Links("Willi Meier"; 5)
"Willi"
Links("Willi Meier"; 1)
"W"
Rechts("Willi Meier"; 4)
"eier"
TeilStr("Willi Meier"; 3, 2)
"ll"
TeilStr("Willi Meier"; 8, 1)
"e" Tabelle 13.17
Hinweis
Wenn Sie f,r <Start> und ung,ltige Werte angeben, meldet Access trotzdem keinen Fehler. Access interpretiert Ihre Angaben in diesem Fall mDglichst sinnvoll und gibt ein entsprechendes Ergebnis zur,ck. Wenn Sie beispielsweise die Links-Funktion auf eine 20 Zeichen lange Zeichenkette anwenden und unter einen Wert grDßer als 20 angeben, gibt Access die komplette Zeichenkette zur,ck. Fehler treten nur dann auf, wenn Sie negative Zahlenwerte angeben.
Großbst- und Kleinbst-Funktionen Die beiden Funktionen Großbst und Kleinbst haben die Aufgabe, einen Text komplett in Groß- bzw. Kleinschreibung umzuwandeln. Das folgende Beispiel hat die Zeichenkette “WILLI MEIER“ zum Ergebnis: 704
= Großbst("Willi Meier")
Grundlagen der Makroprogrammierung
LGl*tten-, RGl*tten- und Gl*tten-Funktionen Mithilfe der Funktionen LGl7tten und RGl7tten kDnnen Sie voranstehende oder nachfolgende Leerzeichen von einer Zeichenkette abschneiden. Die Funktion Gl7tten ,bernimmt gleich beide Aufgaben in einem Arbeitsschritt. Die drei Funktionen werden insbesondere zur Bearbeitung von Benutzereingaben verwendet. Hier kommt es beispielsweise oft vor, dass vor einem Text aus Versehen ein Leerzeichen eingegeben wird. Mithilfe der Gl7tten-Funktionen schneiden Sie diese problemlos ab.
L*nge-Funktion Die L7nge-Funktion ermittelt die Anzahl der Zeichen, die sich in einer Zeichenkette befinden. Die Funktion z!hlt auch Leerzeichen mit, die sich am Anfang oder Ende der Zeichenkette befinden. Die folgende Tabelle enth!lt einige Beispiele zur L7ngeFunktion:
Beispiele zur Funktion L*nge
Ausdruck
Ergebnis
L!nge ("Willi Meier")
11
L!nge("")
0
L!nge(" Willi Meier ")
13
L!nge(Gl!tten(" Willi Meier "))
11 Tabelle 13.18
Datumsausdrcke Access behandelt ein Datum oder eine Zeit intern als numerischen Ausdruck. Zu diesem Zweck kommt eine Dezimalzahl zum Einsatz, deren Zahlenwert vor dem Komma das Datum und nach dem Komma die Uhrzeit angibt. Dieses Format wird auch als serielles Datumsformat bezeichnet. Der Teil vor dem Komma gibt die Anzahl der Tage an, die seit dem 31. Dezember des Jahres 1899 verstrichen sind. Tagen vor diesem Datum sind negative Werte zugeordnet. Der Teil nach dem Komma bestimmt die Anzahl der Sekunden seit Mitternacht. Aus diesen beiden Angaben kann Access ein eindeutiges Datum und eine eindeutige Uhrzeit ermitteln.
Aufbau des seriellen Datumsformats
Bei der Arbeit mit Datumsausdr,cken tritt das serielle Datumsformat allerdings selten zutage. Sowohl bei der Eingabe eines Datums als auch bei der Ausgabe f,hrt Access automatisch eine Konvertierung zwischen dem seriellen Datumsformat und der gewohnten Schreibweise (z.B. 1.1.01) durch. 705
Makroprogrammierung
Datumsausdr cke
Ein festes Datum oder eine feste Uhrzeit geben Sie innerhalb von Access !hnlich wie eine Zeichenkette an. Anstelle von Anf,hrungszeichen setzen Sie den kompletten Ausdruck allerdings in zwei Nummernzeichen (#). Bei Datumsangaben w!ren beispielsweise folgende Ausdr,cke g,ltig, die alle das Datum “1.1. 2001“ zum Ergebnis haben.
Datums- und Zeitangaben
Ausdruck
Ausdruck
#1.1. 2001#
#1.Jan.2001#
#1/1/2001#
#1 Januar 2001#
#1-1-2001#
#1.Januar. 2001#
#01.01. 2001#
#1.1.01# Tabelle 13.19
Sie kDnnen diese Beispiele ebenfalls ,ber das Testmakro ausprobieren. Stellen Sie dazu dem Ausdruck ein Gleichheitszeichen voran (z.B. “ = #1.1. 2001#“). Hinweis Zeitangaben
Eine Zeitangabe erfolgt ebenfalls innerhalb von Nummernzeichen. Das Format entspricht hierbei der Form #<Stunde>:<Minute>:<Sekunde># wobei die Angabe der Sekunden nicht unbedingt erforderlich ist. G,ltige Zeitangaben sind beispielsweise #10:00# oder #20:30:10#. Dar,ber hinaus kDnnen Sie eine Zeit in Kombination mit einem Datum angeben. Ordnen Sie die Zeit hierbei entweder vor oder hinter dem Datum an. Die folgende Tabelle enth!lt einige Beispiele:
Datums- und Zeitausdrcke
Ausdruck #22-Sept-01 20:00# #20:00# #20:00:00 22.9.01# Tabelle 13.20
706
Grundlagen der Makroprogrammierung
Das aktuelle Datum Ihres Rechners erhalten Sie mithilfe der Datum()-Funktion. Auf !hnliche Weise gibt die Zeit()-Funktion die aktuelle Uhrzeit zur,ck. Eine Kombination aus aktuellem Datum und aktueller Uhrzeit liefert die Jetzt()-Funktion. Alle drei Funktionen haben die Gemeinsamkeit, dass innerhalb der Klammern kein Ausdruck angegeben werden muss. Trotzdem ist es notwendig, das leere Klammernpaar stets mit anzugeben. Um beispielsweise die Jetzt-Funktion im Testmakro auszuprobieren, geben Sie den folgenden Ausdruck an:
Hinweis
= Jetzt()
Datumsoperationen und Datumsfunktionen Da sich hinter Datums- und Zeitangaben ganz normale numerische Ausdr,cke verbergen, kDnnen Sie alle numerischen Operatoren wie „+“ oder “*“ anwenden. Wenn Sie beispielsweise das Datum ermitteln mDchten, an dem eine Rechnung zu zahlen ist, addieren Sie zu dem Datumswert einfach nur die Rechnungsfrist in Tagen. So f,hrt beispielsweise die Berechnung
Addieren von Tagen
#20.7.01# + 30 zu dem Ergebnis 19.08.01. Schaltjahre und sonstige Besonderheiten des Kalenders werden hierbei nat,rlich genau ber,cksichtigt. Neben dem +-Operator kann auch der “-“-Operator eingesetzt werden. Bei allen anderen numerischen Operatoren wie * oder Mod erhalten Sie unsinnige Ergebnisse.
Die DatAdd-Funktion In der Praxis ist es oft notwendig, zu einem Datumswert nicht nur eine bestimmte Anzahl von Tagen, sondern z.B. Wochen oder Jahre zu addieren. Zu diesem Zweck stellt Access die DatAdd -Funktion zur Verf,gung: DatAdd(; ; ) Das Argument gibt das Datum an, von dem aus die Berechnung erfolgen soll. Mit bestimmen Sie, welche Zeitintervalle Sie addieren bzw. subtrahieren mDchten. Dies kDnnen beispielsweise Tage, Wochen oder Quartale sein. Dazu geben Sie unter eine der folgenden Zeichenketten an:
Angaben fr das Argument
Bedeutung
jjjj
Jahr
q
Quartal
m
Monat
j
Kalendertag 707
Makroprogrammierung
Angaben fr das Argument (Forts.)
Bedeutung
t
Tag
w
Wochentag
ww
Woche
h
Stunde
n
Minute
s
Sekunde Tabelle 13.21
Wie Sie der Tabelle entnehmen kDnnen, enth!lt sie auch drei Intervalle, mit denen sich Zeitberechnungen durchf,hren lassen. Sie kDnnen dazu unter entweder eine Kombination aus Datum und Uhrzeit oder ausschließlich eine Uhrzeit angeben. Wenn Sie lediglich ein Datum angeben und eine Zeitberechnung durchf,hren, geht Access von Mitternacht (00:00) des angegebenen Datums aus.
Hinweis
Beachten Sie, dass das Intervall Minuten ,ber den Buchstaben “n“ angegeben wird. Dies ist erforderlich, da der Buchstabe “m“ bereits f,r das Intervall “Monat“ reserviert ist. Das Argument bestimmt die Anzahl der Intervalle, die Sie addieren mDchten. Wenn Sie hier einen negativen Wert angeben, f,hrt Access eine Subtraktion durch. Die folgende Tabelle enth!lt einige Beispiele:
Beispiele zur DatAdd-Funktion
708
Ausdruck
Ergebnis
DatAdd("t"; 1; #1.1.01#)
02.01.01
DatAdd("ww"; 1; #1.1.01#)
08.01.01
DatAdd("jjjj"; 2; #1.1.01#)
01.01.03
DatAdd("jjjj"; -2; #1.1.01#)
01.01.99
DatAdd("n"; -100; #12:00#)
10:20:00
DatAdd("h"; -100; #1.1.01#)
27.12.00 20:00:00
Grundlagen der Makroprogrammierung
Beispiele zur DatAdd-Funktion (Forts.)
Ausdruck
Ergebnis
DatAdd("s"; 100000; #1.1.01 12:00#)
02.01.01 15:46:40
DatAdd("t"; 8; Datum())
Abh!ngig vom aktuellen Datum Tabelle 13.22
Die DatDiff-Funktion Das Gegenst,ck zur DatAdd-Funktion ist die DatDiff-Funktion. Sie ermittelt die Anzahl Intervalle, die zwischen zwei Tagen liegen: DatDiff(; ; [; <ErsterWochentag>][; <ErsteWoche>]) Unter geben Sie an, in welchem Intervall Sie den Abstand messen mDchten. Die Angabe muss in der gleichen Form erfolgen, wie vorher bei der DatAddFunktion. und geben die beiden Datumswerte an. Das Ergebnis der Funktion ist die Anzahl der Intervalle. Sollte vor liegen, ist das Ergebnis negativ. Die beiden Argumente <ErsterWochentag> und <ErsteWoche> m,ssen nicht unbedingt angegeben werden. In der Syntax ist dies durch die eckigen Klammern gekennzeichnet. Das Argument <ErsterWochentag> wirkt sich aus, wenn Sie als Intervall Wochen (ww) ausgew!hlt haben. Bei der Standardeinstellung – die dann aktiv ist, wenn Sie das Argument auslassen – addiert Access jedesmal dann eine neue Woche, sobald der Sonntag verstrichen ist. Pber das Argument <ErsterWochentag> definieren Sie einen anderen Tag als Wochenanfang (z.B. Montag), wodurch Sie das Ergebnis in einigen F!llen beeinflussen. F,r das Argument geben Sie einen Zahlenwert an, wobei 1 Sonntag, 2 Montag usw. bedeutet.
<ErsterWochentag> und <ErsteWoche>
Das Argument <ErsteWoche> hat eine !hnliche Bedeutung. Hiermit bestimmen Sie, wann f,r Access die erste Woche eines Jahres beginnt. Auch hier geben Sie einen Zahlenwert an, den Sie der folgenden Tabelle entnehmen:
Einstellungen fr <ErsteWoche>
Wert
Bedeutung
0
Verwendet die Systemeinstellung von Windows
1
Die erste Woche beginnt mit dem 1. Januar des Jahres. Diese Einstellung ist die Standardeinstellung, falls Sie das Argument <ErsteWoche> auslassen. 709
Makroprogrammierung
Einstellungen fr <ErsteWoche> (Forts.)
Wert
Bedeutung
2
Legt als erste Woche des Jahres diejenige Woche fest, welche mindestens vier Tage besitzt
3
Legt die erste vollst!ndige Woche als erste Woche des Jahres fest Tabelle 13.23
Die folgende Tabelle enth!lt einige Beispiele:
Beispiele zur DatDiff-Funktion
Ausdruck
Ergebnis
DatDiff("t"; #1.1.01#; #1.3.01#)
60
DatDiff("t"; #1.3.01#; #1.1.01#)
-60
DatDiff("s"; #1.1.01#; #2.1.01#)
86400
DatDiff("t"; Datum(); Datum() +8)
8
DatDiff("ww"; #1.1.01#; #1.2.01#)
4
DatDiff("ww"; #1.1.01#; #1.2.01#; 3)
5 Tabelle 13.24
Die DatTeil-Funktion Was noch fehlt, ist eine Funktion zur Ermittlung eines bestimmten Teils eines Datums. Dazu stellt Access die DatTeil-Funktion zur Verf,gung. Mit ihrer Hilfe lDsen Sie beispielsweise den Monat aus einem Datum heraus oder stellen fest, in welche Kalenderwoche ein bestimmtes Datum f!llt. Die Funktion hat folgende Syntax: DatTeil(, [, <ErsterWochentag>][, <ErsteWoche>]) Die vier Argumente stimmen mit denen der beiden vorhergehenden Funktionen ,berein. Es folgen einige Beispiele:
710
Grundlagen der Makroprogrammierung
Beispiele zur DatTeil-Funktion
Ausdruck
Ergebnis
DatTeil("t"; #1.1.01#)
1
DatTeil("t"; #3.5.01#)
3
DatTeil("m"; #3.5.01#)
5
DatTeil("jjjj"; #3.5.01#)
2001
DatTeil("ww"; #1.7.01#)
27 (Kalenderwoche!)
DatTeil("q"; #1.7.01#)
3 (Quartal!)
DatTeil("q"; Datum())
Das aktuelle Quartal (abh!ngig vom Tagesdatum) Tabelle 13.25
Weitere Datumsfunktionen Neben den beiden vorgestellten Funktionen bietet Access noch einige andere Datums- und Zeitfunktionen. Eine Pbersicht ,ber alle Funktionen gibt Ihnen die folgende Tabelle:
Datum- und Zeitfunktionen
Funktion
Beschreibung
DatAdd(; ; )
Addiert ein Intervall zu einem bestimmten Tag
DatDiff(; ; [; <ErsterWochentag>][; <ErsteWoche>])
Ermittelt die Differenz zwischen zwei Tagen
DatTeil(; [; <ErsterWochentag>][; <ErsteWoche>])
Ermittelt einen bestimmten Teil eines Datums
Jahr()
Ermittelt das Jahr eines Datums
Monat()
Ermittelt den Monat eines Datums
Tag()
Ermittelt den Tag eines Datums
Wochentag(;<ErsterWochentag>)
Ermittelt den Wochentag eines Datums. Das Ergebnis ist eine Zahl, wobei 1 dem Sonntag, 2 dem Montag, usw. entspricht.
Stunde()
Ermittelt die Stunde einer Uhrzeit
Minute()
Ermittelt die Minute einer Uhrzeit 711
Makroprogrammierung
Datum- und Zeitfunktionen (Forts.)
Funktion
Beschreibung
Sekunde()
Ermittelt die Sekunde einer Uhrzeit
DatSeriell(<Jahr>; <Monat>; )
Wandelt die drei numerischen Angaben f,r Jahr, Monat und Tag in ein komplettes Datum um
DatWert()
Wandelt den Inhalt einer Zeichenkette in ein Datum um Tabelle 13.26
Die folgende Tabelle enth!lt Beispiele zu den Funktionen:
Beispiele zu den Datums- und Zeitfunktionen
Ausdruck
Ergebnis
Tag(#23.8.1968#)
23
DatTeil("t"; #23.8.1968#)
23
Stunde(#23.8.1968#)
0
Stunde(#12:30#)
12
Minute(#12:30#)
30
DatSeriell(1998, 3, 5)
05.03.98
DatWert("1. Januar 1998")
01.01.98 Tabelle 13.27
Verweise auf Objekte Bei der Arbeit mit Makros spielen Ausdr,cke eine besondere Rolle, in denen Sie auf Formulare, Berichte oder Steuerelemente verweisen. Wenn Sie beispielsweise den Inhalt eines bestimmten Textfelds in Großbuchstaben umwandeln mDchten, so m,ssen Sie den Inhalt des Steuerelements zuerst auslesen, ihn dann in Großbuchstaben um zu wandeln und letztendlich wieder in das Steuerelement zur,ck zu schreiben. Es ist also eine MDglichkeit erforderlich, den Inhalt eines ganz bestimmten Steuerelements auf einem bestimmten Formular zu ermitteln oder zu ver!ndern.
712
Grundlagen der Makroprogrammierung
Der Zugriff auf ein bestimmtes Steuerelement erfolgt grunds!tzlich ,ber den Steuerelementnamen, den Sie f,r jedes einzelne Steuerelement w!hrend des Formularentwurfs ,ber die Name-Eigenschaft bestimmen.
Zugriff ber den Steuerelementnamen
Abb. 13.13 Die Name-Eigenschaft eines Steuerelements
Wenn Sie ein Formular mithilfe eines Formular-Assistenten anlegen, weist Access allen Steuerelementen, die an Datenfelder gebunden sind, automatisch einen Namen zu. Dieser Name stimmt in der Regel mit dem Feldnamen ,berein. Wenn ein Textfeld also die Daten des Tabellenfeldes Firmenname anzeigt, weist der Formular-Assistent dem Steuerelement ebenfalls den Namen Firmenname zu. Dass die beiden Namen ,bereinstimmen, ist jedoch nicht zwingend erforderlich. Sie kDnnen dem Steuerelement beispielsweise auch den Namen txtFirmenname geben, obwohl es weiterhin an das Datenfeld Firmenname gebunden ist. Wichtig f,r Verweise auf Steuerelemente ist alleine der Inhalt der Name-Eigenschaft.
Namenskonventionen des Formular-Assistenten
Oft ist es erforderlich, einem Formular nachtr!glich neue Steuerelemente hinzuzuf,gen. Wenn es sich hierbei um Steuerelemente handelt, die an ein Datenfeld gebunden sind, f,hrt der einfachste Weg ,ber die Feldliste, die Sie ,ber den Men,punkt Ansicht > Feldliste aktivieren. Wenn Sie ein Feld aus dieser Liste per Drag & Drop in das Formular ziehen, legt Access hier ein passendes Steuerelement an. Auch bei diesem Vorgang weist Access dem Steuerelement einen Namen zu, der mit dem Namen des Datenfeldes ,bereinstimmt. Anders sieht dies aus, wenn Sie ein Steuerelement “von Hand“ – also mithilfe der Toolbox – anlegen. Solche Steuerelemente sind zun!chst einmal an kein Datenfeld gebunden, so dass Access keinen vern,nftigen Namen ermitteln kann. Die Folge: Access gibt dem Steuerelement einen Namen, der aus der Typenbezeichnung des Steuerelements und einer laufenden Nummer besteht. Ein neues Textfeld erh!lt so beispielsweise den Namen Text0. Wenn Sie weitere Textfelder anlegen, erhalten diese die Namen Text1, Text2 usw. Solche Namen sind nat,rlich wenig aussagekr!ftig. Wenn Sie mit Steuerelementnamen wie Text35 in Ausdr,cken hantieren, werden diese schnell sehr un,bersichtlich. Ein Steuerelement mit dem Namen txtUmsatzergebnis l!ßt sich schließlich leichter identifizieren als eines mit dem Namen Text35. Sie sollten also solche Namen unbedingt in vern,nftige Namen ab!ndern. Wenn Sie planen, ein Steuerelement an ein Datenfeld zu binden, sollten Sie ihm den Namen dieses Feldes zuweisen. Sie folgen damit den Regeln des Formular-Assistenten und der Feldliste.
713
Makroprogrammierung
Bei Steuerelementen, die an kein Datenfeld gebunden sind (so genannte ungebundene Steuerelemente), sollten Sie einen Namen w!hlen, der den Zweck des Steuerelements mDglichst gut verdeutlicht. Es folgt eine Liste mit Regeln, die Sie bei der Namensvergabe beachten m,ssen: Der Name muss mit einem Buchstaben beginnen. Er darf Zahlen, Satzzeichen, Leerzeichen und das Unterl!ngen-Zeichen (_) enthalten.
Regeln bei der Vergabe von Steuerelementnamen
Eckige Klammern [ ] und Punkte (.) d,rfen nicht verwendet werden. Der Name darf aus maximal 255 Zeichen bestehen. K,rzere Namen lassen sich allerdings leichter handhaben. Es d,rfen keine Namen doppelt vergeben werden. Steuerelemente auf unterschiedlichen Formularen d,rfen jedoch gleiche Namen haben. Bei umfangreicheren Formularen mit vielen Steuerelementen sollten Sie bei der Namensvergabe besondere Sorgfalt walten lassen, damit Sie stets optimalen Pberblick ,ber das Formular haben.
Hinweis
Bei der Namensvergabe an ungebundene Steuerelemente hat es sich eingeb,rgert, diesen ein aus drei Zeichen bestehendes Pr!fix voranzustellen, das eine Identifizierung des Steuerelementtyps leichter macht. Steuerelementen des Typs Textfeld wird beispielsweise ein txt vorangestellt. An dem Namen txtUmsatzergebnis erkennen Sie also sofort, dass es sich um ein Textfeld handelt, in dem ein Umsatzergebnis angezeigt wird. Weitere Pr!fixe f,r die unterschiedlichen Steuerelementtypen zeigt die folgende Tabelle:
Namenspr%fixe fr die unterschiedlichen Steuerelementtypen
714
Steuerelementtyp
Pr!fix
Bezeichnungsfeld
lbl
Rechteck
rec
Linie
lin
Bild
img
Befehlsschaltfl!che
btn
Optionsfeld
opt
Kontrollk!stchen
chk
Optionsgruppe
ogr
Objektfeld
obj
Textfeld
txt
Grundlagen der Makroprogrammierung
Namenspr%fixe fr die unterschiedlichen Steuerelementtypen (Forts.)
Steuerelementtyp
Pr!fix
Listenfeld
lst
Kombinationsfeld
com
Unterformular
sub
Seitenumbruch
pbr
Register
tab
OLE Steuerelement
ocx (bzw. spezielle Abk,rzung f,r den Typ des OLESteuerelements)
Umschaltfl!che
tog Tabelle 13.28
Um es aber noch einmal deutlich zu machen: Die Namensvergabe mit Pr!fix ist eine willk,rliche Namenskonvention, die lediglich die Pbersichtlichkeit verbessert, aber von Access nicht vorgeschrieben ist.
Verweise auf Steuerelemente Wie bereits angedeutet, kDnnen Steuerelemente auf verschiedenen Formularen den gleichen Namen haben. Um nun auf ein bestimmtes Steuerelement eines bestimmten Formulars zu verweisen, gen,gt es also nicht, nur den Namen des Steuerelements anzugeben. Zus!tzlich muss der Name des Formulars angegeben werden, auf dem sich das Steuerelement befindet. Die allgemeine Form zur Bezugnahme auf den Inhalt eines bestimmtes Steuerelements lautet folgendermaßen:
Syntax zum Verweis auf Steuerelemente
Formulare![].Steuerelemente![] Der folgende Ausdruck verweist beispielsweise auf das Textfeld Nachname des Formulars Adressen: Formulare![Adressen].Steuerelemente![Nachname] In dem vierteiligen Ausdruck spiegelt sich die Objekthierarchie wider, die Access beim Verweis auf alle Formulare, Berichte und darin enthaltene Steuerelemente verwendet. Der erste Teilausdruck Formulare repr!sentiert eine so genannte Auflistung. Diese Auflistung ist vergleichbar mit einer Liste, in der alle momentan ge4ffneten Formulare aufgelistet sind. Um nun ein bestimmtes Formular aus dieser Auflistung auszuw!hlen, geben Sie hinter dem Auflistungsnamen Formulare ein Ausrufungszeichen und schließlich den Namen des gew,nschten Formulars an. Der Teilausdruck
Objekthierarchie
715
Makroprogrammierung
Formulare![Adressen] verweist also zun!chst auf das Formular Adressen.
Hinweis
SteuerelementeAuflistung
Abb. 13.14
In der Auflistung Formulare sind nur die momentan geDffneten Objekte enthalten. Wenn Sie auf ein Formular verweisen mDchten, das nicht geDffnet ist, m,ssen Sie dieses vorher ,ber das Datenbankfenster oder mithilfe der Aktion ffnenFormular Dffnen. Dem Namen des Formulars folgt nun ein Punkt und eine zweite Auflistung mit dem Namen Steuerelemente. Diese Auflistung enth!lt alle Steuerelemente des Formulars. Auch hier wird wieder ein bestimmtes Steuerelement ausgew!hlt, indem ein Ausrufzeichen gefolgt von dem Steuerelementnamen angegeben wird. Die folgende Grafik zeigt noch einmal die einzelnen Elemente des Ausdrucks.
Formulare![Adressen].Steuerelemente![Nachname]
Die Objekthierarchie beim Verweis auf ein Steuerelement
Neben Formularen enthalten auch Berichte Steuerelemente. Der Verweis auf ein bestimmtes Steuerelement eines Berichts hat eine !hnliche Syntax wie die bei Formularen. Anstelle der Auflistung Formulare muss lediglich die Auflistung Berichte angegeben werden:
716
Grundlagen der Makroprogrammierung
Berichte![].Steuerelemente![] Die beiden vorgestellten Varianten zum Verweis auf ein bestimmtes Steuerelement sind relativ lang. Dies wirkt sich negativ in Ausdr,cken aus, die mehrere Verweise auf Steuerelemente enthalten. Das folgende Beispiel zeigt einen solchen Ausdruck zur Berechnung des Preises einer Rechnungsposition:
Abk rzungen
Formulare![Rechnungen].Steuerelemente![Anzahl] * Formulare![Rechnungen].Steuerelemente![Einzelpreis] Der Ausdruck macht nichts anderes, als die Anzahl der Artikel mit dem Einzelpreis zu multiplizieren, um so den Gesamtpreis einer Rechnungsposition zu ermitteln. Die erste Vereinfachung besteht darin, dass Sie den Namen der Auflistung Steuerelemente auslassen kDnnen. Die abgek,rzte Version zum Verweis auf ein Steuerelement eines Formulars hat dementsprechend die folgende Syntax: Formulare![]![] Wenn der Name des Formulars bzw. des Steuerelements zudem keine Leerzeichen enth!lt, d,rfen Sie außerdem die eckigen Klammern auslassen. Die Berechnung des Einzelpreises kann also auch mit folgender Abk,rzung erfolgen: Formulare!Rechnungen!Anzahl * Formulare!Rechnungen!Einzelpreis Die Kurzform Formulare!!<Steuerelementname> zum Verweis auf ein Steuerelement hat noch eine besondere Funktion: Sollte Access auf dem angegebenen Formular kein Steuerelement unter dem angegebenen Namen finden, interpretiert es den <Steuerelementnamen> als Feldnamen – also als Name eines Datenfeldes, das dem Formular zugrunde liegt. Access liefert dann den Inhalt dieses Feldes zur,ck.
Hinweis
Zugriff auf Steuerelementeigenschaften In dem vorhergehenden Abschnitt haben Sie gelernt, wie Sie auf eines Steuerelement verweisen, um so den aktuellen Inhalt auszulesen. Bei der vorgestellten Syntax Formulare![].Steuerelemente![] hat es sich aber bereits um eine Kurzform gehandelt. Vollst!ndig m,ßte die Syntax folgendermaßen lauten:
Die WertEigenschaft
Formulare![]. Steuerelemente![].Wert 717
Makroprogrammierung
Der Unterschied besteht in dem letzten Teilausdruck .Wert. Hierbei handelt es sich um eine Eigenschaft, die den Inhalt des Steuerelements repr!sentiert. Wenn Sie den Namen der Eigenschaft nicht angeben, geht Access automatisch davon aus, dass Sie auf den Inhalt der Wert-Eigenschaft zugreifen mDchten. Die folgenden beiden Ausdr,cke ermitteln beide den Inhalt des Steuerelements Nachname und sind vollkommen gleichwertig: Formulare![Adressen].Steuerelemente![Nachname].Wert Formulare![Adressen].Steuerelemente![Nachname] Nat,rlich gilt dies auch f,r die entsprechenden Kurzformen: Formulare!Adressen!Nachname.Wert Formulare!Adressen!Nachname
Die SichtbarEigenschaft
Neben der Eigenschaft Wert stellen Steuerelemente noch eine Reihe weiterer Eigenschaften zur Verf,gung. So kDnnen Sie auf fast alle Eigenschaften zugreifen, die beim Formularentwurf im Eigenschaftenfenster eines Formulars aufgelistet sind. Dar,ber hinaus gibt es noch Eigenschaften, die hier nicht aufgelistet sind). Der folgende Ausdruck verweist beispielsweise auf die Sichtbar-Eigenschaft des Steuerelements Nachname: Formulare![Adressen]![Nachname].Sichtbar Mithilfe dieses Ausdrucks ermitteln Sie beispielsweise, ob das Textfeld momentan sichtbar ist. Weiterhin ist es per Makros mDglich, das Steuerelement ein- oder auszublenden. Sinnvoll w!re dies beispielsweise bei dem Feld Vorname. Wenn der aktuelle Datensatz keine Person, sondern eine Firma anzeigt, blenden Sie das in diesem Fall nicht benDtigte Steuerelement Vorname einfach aus.
Hinweis
Einige Eigenschaften des Eigenschaftenfensters von Steuerelementen besitzen innerhalb des Namens Leerzeichen. Ein Beispiel hierf,r ist die Eigenschaft AutoKorrektur zulassen. Wenn Sie auf solche Eigenschaften innerhalb von Ausdr,cken verweisen mDchten, m,ssen Sie die Leerzeichen auslassen. Das folgende Beispiel zeigt dies: Formulare![Adressen]![Nachname].AutoKorrekturZulassen
Zugriff auf Formular- und Berichtseigenschaften
Auf !hnliche Weise wie bei Steuerelementen kDnnen Sie nat,rlich auch auf die Eigenschaften von Formularen oder Berichten zugreifen. Hierzu lassen Sie die Namen der Steuerelemente-Auflistung und den Namen des Steuerelements einfach aus. Der folgende Ausdruck ermDglicht die Bezugnahme auf die Sichtbar-Eigenschaft des Formulars Adressen, um dieses beispielsweise unsichtbar zu machen: Formulare![Adressen].Sichtbar
718
Grundlagen der Makroprogrammierung
Zugriff auf Unterformulare Wenn Sie auf Steuerelemente Bezug nehmen mDchten, die sich innerhalb eines Unterformulars befinden, versagt die im vorhergehenden Abschnitt vorgestellte Syntax. Ein Unterformular wird in einem Hauptformular immer innerhalb eines Steuerelements vom Typ Unterformular-/bericht angezeigt, dessen Name – wie bei Steuerelementen ,blich – ,ber die Name-Eigenschaft bestimmt wird. Welches Formular Access letztendlich jedoch in dem Steuerelement als Unterformular anzeigt, bestimmt die Herkunftsobjekt-Eigenschaft des Steuerelements.
UnterformularSteuerelemente
Wenn Sie ein Unterformular per Drag & Drop aus dem Datenbankfenster in ein Formular einf,gen, legt Access ein neues Steuerelement des Typs Unterformular-/ bericht an und weist der Herkunftsobjekte-Eigenschaft den Namen des Formulars zu, das hier dargestellt werden soll. Dar,ber hinaus verwendet Access diesen Namen auch bei der Benennung des Unterformular-/bericht-Steuerelements. Nat,rlich kDnnen Sie den Namen des Unterformular-/bericht-Steuerelements nachtr!glich gem!ß den Namenskonventionen f,r Steuerelemente beliebig ab!ndern. Der Zugriff auf ein Steuerelement eines Unterformulars erfolgt ,ber die folgende allgemeine Syntax:
Zugriff auf Unterformulare
Formulare![].Steuerelemente![]. Formular.Steuerelemente![] Auch hier ergibt sich wieder die Kurzform, indem Sie den Namen der Auflistung Steuerelemente auslassen: Formulare![]![].Formular![] Sie verweisen also zuerst mit der bereits bekannten Syntax auf das Steuerelement vom Typ Unterformular/-bericht, in dem das Unterformular angezeigt wird. Um nun von dem Steuerelement aus auf das darin enthaltene Formular zuzugreifen, setzen Sie die Formular-Eigenschaft ein. Sie dient praktisch als Eintrittskarte in das Unterformular und ermDglicht den Schritt von dem Unterformular/-bericht-Steuerelement in das hier angezeigte Unterformular. Dieser Eigenschaft schließt sich wieder der Verweis auf ein bestimmtes Steuerelement innerhalb des Unterformulars an. In der folgenden Abbildung befindet sich beispielsweise innerhalb des Formulars Projekte ein Steuerelement vom Typ Unterformular/-bericht mit dem Namen Projektadresse. Innerhalb dieses Steuerelements zeigt Access das Formular Adressen als Unterformular an. Wenn Sie nun auf das Steuerelement Nachname dieses Unterformulars zugreifen mDchten, verwenden Sie den folgenden Ausdruck:
719
Makroprogrammierung
Formulare![Projekte]![Projektadresse]. Formular![Nachname]
Formulare![Projekte].Steuerelemente![Projektadresse].Formular![Nachname]
Abb. 13.15 Objekthierarchie bei Unterformularen
Bei Berichten erfolgt der Zugriff auf ein Steuerelement eines Unterberichts auf !hnliche Weise: Berichte![].Steuerelemente![]. Bericht.Steuerelemente![] Nat,rlich ist hier auch wieder die Kurzform ohne explizite Angabe der Steuerelemente-Auflistung zul!ssig.
Verwenden von Objektverweisen in Makros Objektverweise oder Ausdr,cke mit Objektverweisen als Elemente werden oft innerhalb von Aktionsargumenten verschiedener Aktionen eingesetzt. Im ersten Abschnitt dieses Kapitels haben Sie bereits die Meldung-Aktion kennen gelernt, deren Aufgabe das Anzeigen eines bestimmten Meldungstextes ist. In das Aktionsargument Meldung der Aktion haben Sie den gew,nschten Text einfach eingegeben. Im Zusammenhang mit dem Testmakro haben Sie außerdem kennengelernt, dass Sie hier auch einen Ausdruck eingeben kDnnen, der einen Text zum Ergebnis hat. Der folgende Ausdruck f,hrt beispielsweise dazu, dass Access den aktuellen Inhalt des Steuerelements Nachname aus dem Formular Adressen ausliest: = Formulare!Adressen!Nachname 720
Grundlagen der Makroprogrammierung
Wenn Sie einen der obigen Ausdr,cke in das Eingabefeld des Aktionsarguments Meldung eingeben und zu einem anderen Aktionsargument wechseln, setzt Access jeder einzelnen Bezeichner in eckige Klammern. Die Funktion des Ausdrucks wird hierdurch nicht beeintr!chtigt, so dass Sie dies nicht weiter stDren sollte.
Hinweis
Bevor Sie das Makro ausf,hren, m,ssen Sie sicherstellen, dass das Formular Adressen wirklich geDffnet ist. Dazu kDnnen Sie beispielsweise vor der Meldung-Aktion die Aktion ffnenFormular ausf,hren, um das betreffende Formular zu Dffnen. Sie finden das Formular in der Beispieldatenbank Makrobeispiel, Adressen und Projekte zu diesem Buch. Das Makro ist hier ebenfalls vorhanden. Es tr!gt den Namen Nachname aus dem Adressen-Formular anzeigen
Abb. 13.16 Der Aufbau des Makros zur Anzeige des aktuellen Nachnamens
Ein zweites Beispiel f,r die Verwendung eines Ausdrucks mit Objektverweisen basiert neben dem Formular Adressen auf dem Formular Projekte, das ebenfalls in der Beispieldatenbank enthalten ist. Den Formularen liegen die beiden gleichnamigen Tabellen zugrunde, zwischen denen eine 1:1-Verkn,pfung besteht. Jeder Adresse sind also mehrere Projekte zugeordnet. Wenn Sie das Projektformular Dffnen, finden Sie hier ein Textfeld mit dem Namen Adresse-Nr, in das die Nummer eines Auftraggebers eingetragen ist. Wenn Sie die Adresse zu einem Auftraggeber in Erfahrung bringen mDchten, m,ssen Sie das Adressenformular Dffnen und den passenden Datensatz ausfindig machen. Diese Aufgabe l!ßt sich auch mithilfe eines Makros erledigen. BenDtigt wird hierzu die ffnenFormular-Aktion. Die Aktion besitzt ein Aktionsargument mit dem Namen Bedingung. Hier geben Sie ein Kriterium (genauer gesagt der WHERE-Teil einer SELECT-Abfrage) an, das die Datens!tze des Formulars direkt beim Rffnen filtert. Wenn Sie hier beispielsweise den Ausdruck [Nachname] Wie "K*"
Filtern eines Formulars
721
Makroprogrammierung
eingeben und unter Formularname wieder das Adressenformular ausw!hlen, zeigt Access nur die Adressen an, deren Nachname mit dem Buchstaben “K“ beginnt. Zus!tzlich zeigt Access im Formular rechts neben den Navigationsschaltfl!chen den Hinweis (Gefiltert) an.
Abb. 13.17 Das gefilterte Adressenformular
Um nun diejenige Adresse anzuzeigen, die dem aktuellen Projekt zugeordnet ist, muss die aktuelle Adressennummer aus dem Projektformular ausgelesen und in das Filterkriterium eingebaut werden: [Adresse-Nr] = Formulare!Projekte![Adresse-Nr].Wert
Hinweis
Achten Sie bei der Eingabe des Ausdrucks darauf, dass Sie den Feldnamen Adresse-Nr in eckigen Klammern angeben. Dies ist erforderlich, da der Bindestrich ein Sonderzeichen darstellt. Wenn Sie die Klammern nicht angeben, w,rde Access den Bindestrich als mathematisches Minuszeichen interpretieren. Um dieses Problem generell zu vermeiden, sollten Sie in Feld- und Steuerelementnamen grunds!tzlich keine Sonderzeichen verwenden. Wenn Sie nun im Projektformular einen bestimmten Datensatz ausw!hlen und anschließend das Makro ausf,hren, Dffnet Access das Adressenformular und zeigt direkt den passenden Datensatz an. Das fertige Makro finden Sie in der Beispieldatenbank unter dem Namen Adresse zum Projekt anzeigen. Achten Sie beim Start des Makros darauf, dass das Projektformular geDffnet ist. Ansonsten tritt bei der Ausf,hrung des Makros ein Fehler auf.
722
Grundlagen der Makroprogrammierung
Wenn Sie das Makro ausf,hren, obwohl das Adressenformular bereits geDffnet ist, tritt kein Fehler auf. In diesem Fall aktiviert Access lediglich den neuen Filter. Hinweis Das Makro hat in der jetzigen Form einen kleinen Nachteil: Sobald Sie es starten, aktiviert es zur Anzeige der passenden Adresse einen Filter. Die Folge davon ist, dass Access im Formular Adressen nur noch einen einzigen Datensatz anzeigt. Ein Wechsel ,ber die Navigationsschaltfl!chen zu einem anderen Datensatz ist erst dann wieder mDglich, nachdem Sie den Filter mit dem Men,punkt Filter > Sortierung entfernen des Men,s Datens7tze deaktiviert haben.
Verbesserungen am Makro
Damit die Auswahl von Datens!tzen im Adressenformular weiterhin mDglich ist, darf also kein Filter aktiviert werden. Die Alternative besteht darin, dass der passende Datensatz im Adressenformular gesucht und zum aktuellen Datensatz gemacht wird. Dies bewerkstelligen Sie ,ber die Aktion SuchenDatensatz. Die Aufgabe dieser Aktion ist es, im momentan aktiven Formular nach einem bestimmten Dateninhalt zu suchen. Die Aktion hat eine Reihe von Aktionsargumenten, ,ber die Sie die Suche beeinflusen. Das wichtigste Aktionsargument tr!gt den Namen Suchen nach. Hier geben Sie einen Text oder Ausdruck ein, nach dem Access suchen soll. Um nach der Adressennummer des Projektformulars zu suchen, tragen Sie hier folgenden Ausdruck ein:
Die SuchenDatensatz-Aktion
=Formulare!Projekte![Adresse-Nr].Wert Das zweite wichtige Aktionsargument Nur aktuelles Feld bestimmt, ob Access nur das aktuelle Steuerelement oder alle Steuerelemente durchsuchen soll. Da sich die Suche in diesem Fall nur auf das Feld Adresse-Nr bezieht, behalten Sie die Vorgabe Ja bei. Bevor Sie das Makro starten, sind noch zwei Aufgaben zu erledigen: Zun!chst muss das Formular Adressen per ffnenFormular-Aktion geDffnet und damit aktiviert werden. Dies ist notwendig, da die SuchenDatensatz-Aktion nur bei geDffneten Formularen funktioniert. Ein weiterer wichtiger Grund ist, dass sich die Aktion immer auf das momentan aktive Formular bezieht. Da die ffnenFormular-Aktion das Adressen-Formular nicht nur Dffnet, sondern auch aktiviert, werden damit gleich zwei Schritte erledigt. Sollte das Adressenformular bereits geDffnet sein, wird es trotzdem aktiviert. Die zweite wichtige Aufgabe besteht darin, das richtige Steuerelement auf dem Adressenformular zu aktivieren. Dies ist ebenfalls erforderlich, da sich die SuchenDatensatz-Aktion gem!ß des Nur aktuelles Feld-Aktionsarguments ausschließlich auf das aktuelle Steuerelement bezieht. Diese Aufgabe erledigen Sie mithilfe der GeheZuSteuerelement-Aktion. Die Aktion hat nur ein einzelnes Aktionsargument mit dem Namen Steuerelementname, in das Sie den Namen des gew,nschten Steuerelements eingeben. Tragen Sie hier also den folgenden Text ein: [Adresse-Nr]
723
Makroprogrammierung
Das fertige Makro sollte nun den folgenden Aufbau haben: Aufbau des fertigen Makros
1. Aktion: RffnenFormular 2. Aktion: GeheZuSteuerelement 3. Aktion: SuchenDatensatz Sie finden es in der Beispieldatenbank unter dem Namen Adresse zum Projekt anzeigen, verbesserte Version.
Abb. 13.18 Das Makro zum Suchen eines Datensatzes
Um einen Test des Makros durchzuf,hren, Dffnen Sie das Projektformular und w!hlen ein Projekt aus. Anschließend starten Sie das neue Makro ,ber das Datenbankfenster. Im Adressenformular zeigt Access nun den passenden Adressendatensatz an. Pber die Navigationsschaltfl!chen des Adressenformulars kDnnen Sie nun weiterhin jeden anderen Adreßdatensatz ausw!hlen.
Hinweis
724
Auf die Dauer ist der Start eines Makros ,ber das Datenbankfenster etwas umst!ndlich. Um dies zu vereinfachen, ist ein kleiner Vorgriff auf den Abschnitt Ereignisse erforderlich: Rffnen Sie einfach das Projektformular in der Entwurfsansicht und ziehen Sie das neue Makro per Drag & Drop aus dem Datenbankfenster in das Formular. Access legt hier nun automatisch eine Schaltfl!che an. Nach einem Wechsel in die Formularansicht gen,gt ein Klick auf die Schaltfl!che, um das Makro zu starten.
Grundlagen der Makroprogrammierung
Abb. 13.19 Eine Schaltfl!che zum Start des Makros
Schreibzugriff auf Eigenschaften Der vorhergehende Abschnitt hat sich auf den Lesezugriff auf Eigenschaften beschr!nkt. Es ist jedoch nicht nur mDglich, den Inhalt eines Steuerelements auszulesen, sondern er kann auch per Makro ver!ndert werden. F,r diese Aufgabe ist eine spezielle Aktion namens SetzenWert zust!ndig. Die Aktion stellt zwei Aktionsargumente mit den Namen Feld und Ausdruck zur Verf,gung. Unter Feld geben Sie einen beliebigen Verweis auf eine Objekteigenschaft an. Den neuen Wert der Eigenschaft plazieren Sie schließlich unter Ausdruck.
Die SetzenWertAktion
In einem Beispiel soll nun in das Steuerelement Fertigstellungsdatum des Projektformulars das aktuelle Datum eingetragen werden. Legen Sie dazu ein neues Makro a, und w!hlen Sie in der erste Aktionszeile die Aktion SetzenWert aus. Unter Feld tragen Sie nun den Verweis auf das Steuerelement Fertigstellungsdatum des Formulars Projekte ein. Der Ausdruck kDnnte beispielsweise folgendermaßen aussehen: Formulare!Projekte!Fertigstellungsdatum.Wert In das Eingabefeld Ausdruck geben Sie nun einen Ausdruck ein, den Access in das Steuerelement Fertigstellungsdatum eintragen soll. Hierbei m,ssen Sie lediglich darauf achten, dass der Ausdruck mit dem Felddatentyp des Steuerelements kompatibel ist. Da das Feld Fertigstellungsdatum den Datentyp Datum/Zeit hat, d,rfen also nur Datumsausdr,cke – und z.B. keine Textausdr,cke – angegeben werden.
725
Makroprogrammierung
Aktuelles Datum eintragen
Um in das Steuerelement ein bestimmtes festes Datum eintragen zu lassen, kDnnten Sie dieses hier direkt angeben (etwa =#1.1.01#). Da aber das aktuelle Tagesdatum eingetragen werden soll, greifen Sie auf die Datum()-Funktion zur,ck. Geben Sie unter Feld also den folgenden Ausdruck an: Datum() Das fertige Makro kDnnen Sie nun speichern und einem Test unterziehen. Vergessen Sie vor dem Start des Makros nicht, das Projektformular zu Dffnen. In der Beispieldatenbank finden Sie das Makro unter dem Namen Fertigstellungsdatum eintragen.
Schaltfl!che zum Start des Makros anlegen
Hinweis
Ver!ndern anderer Eigenschaften
Wenn Sie den Start des Makros lieber von einer Schaltfl!che aus vornehmen mDchten, ziehen Sie es wieder per Drag & Drop in die Entwurfsansicht des Projektformulars. Um der Schaltfl!che den letzten Schliff zu geben, !ndern Sie die Beschriftung durch 0ndern der Beschriftung-Eigenschaft in Heute und positionieren Sie die Schaltfl!che in die N!he der Steuerelementes Fertigstellungsdatum. Sie haben nun eine komfortable MDglichkeit, das Datum einzutragen. Die Ausdr,cke der Aktionsargumente Feld und Ausdruck m,ssen jeweils ohne f,hrende Gleichheitszeichen angegeben werden. Dies ist bei allen Ausdr,cken der Fall, die Sie bei der SetzenWert-Aktion angeben. Wann ein Gleichheitszeichen angegeben werden muss oder nicht, ist selbst f,r den Profi nicht immer direkt erkennbar. Einen Hinweis darauf gibt in der Regel der blaue Informationstext, der zu jedem Aktionsargument im Makro-Fenster angezeigt wird. Genaue Informationen entnehmen Sie der Online-Hilfe von Access. Neben der Wert-Eigenschaft kDnnen Sie nat,rlich fast alle anderen Eigenschaften von Formularen oder Steuerelementen ver!ndern. Ein Beispiel hierf,r ist die Beschriftung-Eigenschaft von Formularen, die den Fenstertitel eines Formulars bestimmt. Um den Inhalt dieser Eigenschaft zu ver!ndern, geben Sie die SetzenWert-Aktion mit folgenden Aktionsargumenten an:
Die Aktionsargumente der SetzenWert-Aktion
Aktionsargument
Inhalt
Feld
Formulare!Projekte.Beschriftung
Ausdruck
"Dies ist eine neue Beschriftung" Tabelle 13.29
Hinweis
726
Wenn Sie – wie in diesem Beispiel – unter Ausdruck einen Text eingeben, muss dieser stets in Anf,hrungszeichen angegeben werden. Nur so kann Access unterscheiden, ob Sie einen Verweis auf ein Objekt oder einen Text eingegeben haben.
Grundlagen der Makroprogrammierung
Nach dem Rffnen des Projektformulars starten Sie das Makro. Access !ndert daraufhin den Text des Formulartitels. Diese 0nderung ist jedoch nicht dauerhaft. Wenn Sie also das Projektformular schließen und wieder Dffnen, erscheint erneut der urspr,ngliche Titel. Dieses Verhalten ist bei allen Eigenschaften ,blich, die Sie in der Formular- oder Datenblattansicht !ndern. Nur wenn Sie 0nderungen in der Entwurfsansicht vornehmen, werden diese dauerhaft gespeichert. Das fertige Makro ist unter dem Namen Fenstertitel des Projektformulars 7ndern in der Beispieldatenbank gespeichert.
Erstellen von Ausdrcken mit dem Ausdrucks-Editor Die Eingabe von langen Ausdr,cken mit Objektverweisen ist oft eine umst!ndliche Angelegenheit. Bei umfangreichen Datenbankanwendungen kommt noch hinzu, dass die Namen der einzelnen Steuerelemente nicht immer pr!sent sind. Um dies zu vereinfachen, stellt Access den Ausdrucks-Editor zu Verf,gung, der das Zusammenstellen l!ngerer Ausdr,cke vereinfacht
Abb. 13.20 Der Ausdrucks-Editor
Der Ausdrucks-Editor ist ein Werkzeug, mit dem Sie alle Arten von Ausdr,cken fast ausschließlich mit der Maus erstellen oder nachtr!glich bearbeiten kDnnen. Der Start des Ausdrucks-Editors erfolgt in der Regel ,ber die Editor-Schaltf!che, die beispielsweise bei bestimmten Aktionsargumenten angezeigt wird, sobald Sie die Einf,gemarke hierauf positionieren. Bei den beiden Aktionsargumenten der SetzenWert-Aktion ist dies beispielsweise der Fall.
727
Makroprogrammierung
Neben Aktionsargumenten wird die Editor-Schaltfl!che auch im Eigenschaftenfenster von Formularen und Steuerelementen bei zahlreichen Eigenschaften angezeigt. Die Standardwert-Eigenschaft von Steuerelementen ist hierf,r ein Beispiel. Eine weitere StartmDglichkeit ist der Men,punkt Aufbauen, der in verschiedenen Kontextmen,s enthalten ist.
Aufbau des Editors Der Ausdrucks-Editor besteht aus zwei Bereichen: Im oberen Bereich wird der erstellte Ausdruck innerhalb eines Fensters – dem Editierfeld – angezeigt. Im unteren Bereich finden Sie insgesamt drei Listen, ,ber die Sie auf alle Objekte von Access zugreifen kDnnen.
Objektliste
In der linken Liste – der Objektliste – sind alle Objekttypen aufgef,hrt, die der Editor zur Verf,gung stellt. Die Objekte sind auf !hnliche Weise gegliedert wie die Verzeichnisse Ihrer Festplatte. Wenn Sie beispielsweise den Text Formulare anklicken, stellt Access in dem Fenster eine weitere Hierarchieebene mit den AuswahlmDglichkeiten Geladene Formulare und Alle Formulare dar. Durch einen weiteren Doppelklick auf Alle Formulare zeigt Access nun wiederum eine neue Ebene mit allen Formularen der aktuellen Datenbank an. Sind in der aktuellen Datenbank keine Formulare vorhanden, ist diese Ebene leer. Wenn Sie eines der angegebenen Formulare anklicken, startet der Ausdrucks-Editor eine Analyse des Formulars. In der mittleren Liste werden nun alle Steuerelemente dieses Formulars mit ihren Namen aufgef,hrt. Wenn Sie wiederum eines dieser Steuerelemente durch einen Klick auf den Namen ausw!hlen, erhalten Sie in der rechten Liste eine Pbersicht ,ber alle zur Verf,gung stehenden Eigenschaften des Steuerelements. Sie kDnnen nun bereits den ersten Ausdruck erstellen. Dazu klicken Sie einfach doppelt auf einen Eigenschaftsnamen der rechten Liste oder markieren diesen Eintrag und klicken anschließend auf Einf1gen. Der Editor erstellt nun einen kompletten Verweis auf diese Eigenschaft und stellt den fertigen Ausdruck im Editierfeld dar. Gleichzeitig positioniert der Editor die Einf,gemarke hinter den Ausdruck. Um den Ausdruck im Editierfeld wieder zu lDschen, markieren Sie ihn und bet!tigen die _-Taste. Alternativ klicken Sie auf R1ckg7ngig.
Hinweis Wenn Sie nicht auf eine Eigenschaft eines Steuerelements Bezug nehmen mDchten, sondern auf den Inhalt, klicken Sie in der rechten Liste der Eigenschaft auf den Eintrag <Wert>. Im Editierfeld erscheint nun der Verweis auf das Steuerelement ohne Angabe einer Eigenschaft. Der Editor verwendet hierbei also die Kurzform ohne Angabe der Wert-Eigenschaft.
728
Grundlagen der Makroprogrammierung
Abb. 13.21 Auswahl eines Formulars
Auch in der mittleren Liste stehen zwei besondere Eintr!ge zur Verf,gung: Mit aktivieren Sie eine Liste aller Formulareigenschaften. Der Eintrag steht nur zur Verf,gung, wenn das Formular ,ber die Datensatzherkunft-Eigenschaft an eine Tabelle oder eine Abfrage gebunden ist. Durch einen Klick auf diesen Eintrag zeigt Access in der rechten Liste alle Felder der zugrunde liegenden Datensatzgruppe an. Auf die gleiche Weise wie bei Formularen kDnnen Sie sich auch Objekte von Berichten, Tabellen und Abfragen anzeigen lassen. Der erste Eintrag der Objektliste bezieht sich immer auf das Objekt, von dem aus der Ausdrucks-Editor gestartet wurde. Sie kDnnen auf dieses Objekt also direkt zugreifen. Ein weiterer Vorteil besteht darin, dass der Editor bei Verweisen auf dieses Objekt nicht die komplette Syntax, sondern – wenn mDglich – eine Kurzform einf,gt. Wenn Sie den AusdrucksEditor beispielsweise von einem Formular mit dem Namen Adressen starten und nun auf das Steuerelement Name dieses Formulars verweisen mDchten, f,gt der Editor nicht den kompletten Verweis Formulare![Adressen]![Name], sondern lediglich den Steuerelementnamen [Name] ein. Dies ist zul!ssig, da beide Ausdr,cke in diesem Fall gleichwertig sind.
Analyse anderer Objekte
In der Objektliste stehen nicht immer alle Objekttypen zur Verf,gung. Wenn Sie den Ausdrucks-Editor beispielsweise beim Tabellenentwurf von der StandardwertEigenschaft aus starten, sind die Objektgruppen Formulare, Berichte, Tabellen und Abfragen nicht vorhanden, da Verweise auf diese Objekte im Zusammenhang mit der Standardwert-Eigenschaft von Tabellen nicht zul!ssig sind.
729
Makroprogrammierung
Neben allen Datenbankobjekten stellt der Ausdrucks-Editor auch den Zugriff auf Funktionen, Konstanten und Operationen zur Verf,gung. Genau wie bei Formularen w!hlen Sie auch hier zun!chst eine der Gruppen in der Objektliste aus. Bei Funktionen kDnnen Sie zwischen den Eingebauten Funktionen – also den Funktionen, die in Access integriert sind – und den selbsterstellten VBA-Funktionen ausw!hlen, die in der aktuellen Datenbank vorhanden sind. Ein weiteres Verzeichnis tr!gt den Namen Gebr7uchliche Ausdr1cke. Hier finden Sie Funktionen, die h!ufig benDtigt werden. Unter anderem steht hier auch unter Aktuelles Datum die Funktion Datum() zur Verf,gung, die Sie bereits vom vorherigen Abschnitt her kennen.
Arbeiten mit dem Editierfeld Wenn Sie ein bestimmtes Objekt oder eine Funktion ,ber die Objektlisten ausgew!hlt haben, kDnnen Sie den Objektverweis oder den Ausdruck durch einen Doppelklick auf den entsprechenden Eintrag in das Editierfeld kopieren. Wenn sich hier bereits ein Ausdruck befindet, f,gt Access den neuen Ausdruck an der aktuellen Position der Einf,gemarke ein. Sie kDnnen diese Position entweder ,ber die Pfeiltasten oder durch Anklicken ver!ndern.
Operatoren
Direkt unter dem Eingabefeld stehen mehrere Schaltfl!chen zur Verf,gung, ,ber die Sie h!ufig benDtigte Operatoren wie +, Und oder auch Klammern ausw!hlen. Wenn Sie eine dieser Schaltfl!chen anklicken, f,gt Access den entsprechenden Operator an der Einf,gemarke ein.
Abb. 13.22 Die Schaltfl!chen zur Eingabe von Operatoren und Klammern
Mithilfe der Objektverweise und der Operatoren kDnnen Sie auch komplexere Ausdr,cke erstellen. Der Ausdrucks-Editor kann hierbei jedoch nicht die korrekte Syntax des Ausdrucks gew!hrleisten. Darauf m,ssen Sie genau wie bei der direkten Eingabe von Ausdr,cken selbst achten. Trotzdem kann der Editor einige grobe Fehler im Ausdruck erkennen. Wenn Sie beispielsweise aus den Objektlisten direkt hintereinander zwei Verweise auf die Inhalte von Steuerelementen in das Editierfeld einf,gen, zeigt der Editor den folgenden Text an: Formulare![Adressen]![Vorname] "Ausdr" Formulare![Adressen]![Name]
730
Grundlagen der Makroprogrammierung
Der Ausdrucks-Editor hat erkannt, dass die beiden Verweise – sofern sie direkt hintereinander angegeben sind – keinen g,ltigen Ausdruck ergeben. Zwischen den beiden Verweisen f,gt er daher den Text “Ausdr„ als Platzhalter ein. Dieser kennzeichnet, dass hier noch etwas fehlt. Um den Ausdruck zu vervollst!ndigen, positionieren Sie einfach die Einf,gemarke auf den Platzhalter und klicken auf eine der Operatorschaltfl!chen. Der Platzhalter wird nun durch den Operator ersetzt. Alternativ kDnnen Sie den Platzhalter nat,rlich auch direkt mithilfe der Tastatur ,berschreiben.
Platzhalter
Neben dem Platzhalter “Ausdr„ kennt der Ausdrucks-Editor noch eine Reihe weiterer Platzhalter. Wenn Sie beispielsweise ,ber die Objektliste zur Gruppe Funktionen > Eingebaute Funktionen > Meldungen wechseln und die Funktion Meldung in das Editierfeld einf,gen, zeigt der Editor den folgenden Text an: Meldung ("Mldg"; "Typ"; "Titel") Jeder Platzhalter kennzeichnet einen Parameter, der der Funktion Meldung ,bergeben werden kann. Sie m,ssen diese jetzt lediglich noch durch sinnvolle Ausdr,cke erg!nzen. Ist der komplette Ausdruck fertig gestellt, schließen Sie den Ausdrucks-Editor durch einen Klick auf die Schaltfl!che OK. Der Ausdruck wird nun in das Feld eingetragen von dem aus der Editor gestartet wurde. Soll der Ausdruck nicht eingetragen werden, klicken Sie auf Abbrechen.
Bedingungen Die einzelnen Aktionen eines Makros werden nacheinander von oben nach unten abgearbeitet. In vielen F!llen ist es notwendig, die Abarbeitung einer oder mehrerer Aktionen nur in bestimmten F!llen durchzuf,hren. Sinnvoll w!re dies beispielsweise im Zusammenhang mit der SetzenWert-Aktion des vorletzten Abschnitts, die das aktuelle Datum in das Steuerelement Fertigstellungsdatum eintr!gt. Wenn hier n!mlich bereits ein Datum eingetragen ist, wird dieses einfach ,berschrieben. Besser w!re es, wenn Access in diesem Fall das urspr,ngliche Datum nicht ,berschreibt. Um solche Bedingungen zur Ausf,hrung von Aktionen anzugeben, stellt das Makro-Fenster eine spezielle Spalte mit dem Namen Bedingung zur Verf,gung. Sie aktivieren dieses Spalte vom Makro-Fenster aus ,ber das Symbol Bedingungen der Symbolleiste oder den gleichnamigen Men,punkt des Men,s Ansicht. Wenn die Spalte auch bei neuen Makros standardm!ßig eingeblendet werden soll, kDnnen Sie im Optionen-Dialog (Men,punkt Extras > Optionen) im Register Ansicht die Option Bedingungsspalte entsprechend einstellen. In der Spalte Bedingung kDnnen Sie zu jeder Aktion einen Ausdruck angeben. Access wertet diesen Ausdruck vor der Ausf,hrung der jeweiligen Aktion aus. Je nach Ergebnis f,hrt es die Aktion aus oder nicht. 731
Makroprogrammierung
Abb. 13.23 Die Spalte Bedingung
Logische Ausdr cke
Der angegebene Ausdruck – in diesem Zusammenhang auch als Bedingung bezeichnet – darf allerdings nicht einen Text oder eine Zahl zum Ergebnis haben, sondern lediglich die beiden Zust!nde Wahr und Falsch. Es handelt sich also um einen logischen Ausdruck. Nur dann, wenn die Bedingung Wahr zum Ergebnis hat, f,hrt Access die betreffende Aktion der gleichen Aktionszeile aus. Eine g,ltige Bedingung w!re beispielsweise der folgende Ausdruck, der nur dann das Ergebnis Wahr zur,ckgibt, wenn der Inhalt des Steuerelements Fertigstellungsdatum auf dem geDffneten Formular Projekte kleiner ist als das aktuelle Datum: Formulare![Projekte]![Fertigstellungsdatum] < Datum()
Die IstNull-Funktion
Um nun das am Anfang dieses Abschnitts gestellte Problem zu lDsen, fehlt Ihnen allerdings noch eine MDglichkeit, um festzustellen, ob ein Steuerelement einen Inhalt hat oder eventuell leer ist. Zu diesem Zweck stellt Access die IstNull-Funktion zur Verf,gung. Die Funktion hat folgende Syntax: IstNull() Das Ergebnis der Funktion ist Wahr, wenn keinen Inhalt hat. Wenn Sie also durch den Verweis auf das Steuerelement Fertigstellungsdatum ersetzen, ist das Ergebnis der Funktion Wahr, wenn das Steuerelement leer ist. Die komplette Bedingung h!tte den folgenden Aufbau: IsNull(Formulare!Projekte!Fertigstellungsdatum)
732
Grundlagen der Makroprogrammierung
Diese Bedingung bauen Sie nun noch in das Makro Fertigstellungsdatum eintragen ein. Rffnen Sie das Makro dazu in der Entwurfsansicht und blenden Sie die Spalte Bedingung ein. Direkt links neben der Aktion SetzenWert geben Sie die obige Bedingung ein. Wenn Sie das Makro nun starten, tr!gt Access nur dann ein Datum ein, wenn das Steuerelement noch leer ist. In der Beispieldatenbank tr!gt das vollst!ndige Makro den Namen Fertigstellungsdatum eintragen, verbesserte Version.
Abb. 13.24 Das Makro Fertigstellungsdatum eintragen, verbesserte Version
Bei ung,ltigen oder falschen Bedingungen werden Sie von Access ,ber ein Meldungsfenster zur Korrektur Ihrer Eingaben aufgefordert.
Bedingte Ausfhrung mehrerer Aktionen Wenn Sie in die Bedingung-Spalte einer Aktionszeile einen Ausdruck eingegeben haben, der bei der Auswertung den logischen Wert Wahr zum Ergebnis hat, wird die entsprechende Aktion der gleichen Aktionszeile ausgef,hrt. Ansonsten ,berspringt Access diese Aktion. Soll die Ausf,hrung mehrerer Aktionen von einer einzigen Bedingung abh!ngig gemacht werden, kDnnten Sie die Bedingung vor jeder Aktion wiederholen. Des bedeutet allerdings nicht nur zus!tzliche Tipparbeit, sondern es f,hrt auch zu unerw,nschten Resultaten, wenn sich das Ergebnis der Bedingung w!hrend der Ausf,hrung des Makros !ndert. Um eine einzige Bedingung auf mehrere Aktionszeilen anzuwenden, geben Sie diese direkt links neben der ersten Aktionszeile an. In allen weiteren Aktionszeilen, deren Ausf,hrung ebenfalls von dieser Bedingung abh!ngig sein soll, geben Sie in der Bedingung-Spalte drei Punkte (...) an. Das folgende Beispiel verdeutlicht dies:
Aktionsblcke
733
Makroprogrammierung
Bedingte Verzweigung
Spalte Bedingung
Spalte Aktion
Aktion1
...
Aktion2
...
Aktion3 Aktion4
Aktion5 Tabelle 13.30
Hat der Ausdruck den Wert Wahr zum Ergebnis, f,hrt Access die Aktionen 1, 2 und 3 aus. Ist das Ergebnis Falsch, ,berspringt Access diese drei Aktionen. Unabh!ngig von der f,hrt Access die Aktion 4 immer aus, da sich in dieser Aktionszeile weder eine Bedingung noch drei Punkte befinden. Die Aktion 5 dagegen wird nur dann ausgef,hrt, wenn die das Ergebnis Wahr hat. Durch die drei Punkte vor den Aktionen 2 und 3 fassen Sie diese praktisch mit der Aktion 1 zu einem Aktionsblock zusammen. Diesen Block f,hrt Access nur dann aus, wenn die vorhergehende Bedingung den logischen Wert Wahr zum Ergebnis hat. Andernfalls ,berspringt Access den Aktionsblock.
Hinweis
Zur besseren Strukturierung der Bedingungen kDnnen Sie im Makro-Fenster leere Aktionszeilen einf,gen. Leere Zeilen werden von Access ignoriert und beeinflussen die Ausf,hrung des Makros nicht. If...Then...Else Hat eine Bedingung, die Sie in der Spalte Bedingung angegeben haben, den logischen Wert Wahr zum Ergebnis, f,hrt Access die entsprechenden Aktionen des Aktionsblocks aus. Ist dies nicht der Fall, ,berspringt Access den Block und setzt die Ausf,hrung des Makros fort. Oftmals ist es jedoch erw,nscht, dass in diesem Fall – und nur in diesem Fall – ein weiterer Aktionsblock ausgef,hrt wird. Um Konstrukte dieser Art zu ermDglichen, spielt die StopMakro-Aktion eine wichtige Rolle. Ihre Aufgabe ist es, die Ausf,hrung des Makros sofort zu beenden. In dem Beispiel der folgenden Tabelle f,hrt Access die Aktionen 1 bis 3 immer dann aus, wenn die Bedingung den logischen Wert Wahr zum Ergebnis hat. Nach der dritten Aktion beendet Access das Makro durch die StopMakro-Aktion. Liefert die Bedingung dagegen den logischen Wert Falsch, f,hrt Access ausschließlich die Aktionen 4 und 5 aus.
734
Grundlagen der Makroprogrammierung
If...Then...Else-Verzweigung
Spalte Bedingung
Spalte Aktion
Aktion1
...
Aktion2
...
Aktion3
...
StopMakro Aktion4 Aktion5 Tabelle 13.31
Damit l!ßt sich nun die ProblemlDsung vom Anfang dieses Abschnitts noch weiter verbessern: Im aktuellen Entwicklungsstadium des Makros wird dem Anwender n!mlich kein Hinweis gegeben, wenn das aktuelle Datum nicht eingetragen werden konnte. Die verbesserte Version soll in diesem Fall ein Meldungsfenster anzeigen (Meldung-Aktion) und den Anwender auf dieses Tatsache aufmerksam machen. Die folgende Tabelle zeigt Ihnen den Aufbau des neuen Makros:
Schematischer Aufbau des verbesserten Makros
Spalte Bedingung
Spalte Aktion
IstNull(Formulare!Projekte!Fertigstellungsdatum)
SetzenWert
...
StopMakro Meldung Tabelle 13.32
Unter dem Meldung-Aktionsargument der Meldung-Aktion geben Sie beispielsweise den folgenden Text an: Es ist bereits ein Datum vorhanden. Das Datum wird nicht Lberschrieben! Nach dem Start des Makros ,berpr,ft Access nun zun!chst, ob das Steuerelement Fertigstellungsdatum bereits einen Inhalt hat. Wenn dies nicht der Fall ist, tr!gt Access das neue Datum ein und beendet das Makro noch vor Ausf,hrung der Meldung-Aktion. Ist dagegen bereits ein Datum vorhanden, werden die Aktionen SetzenWert und StopMakro ,bersprungen. Access zeigt also nur die Meldung an. Sie finden das fertige Makro in der Beispieldatenbank unter dem Namen Fertigstellungsdatum eintragen, zweite verbesserte Version.
735
Makroprogrammierung
Gruppen-Makros Bei komplexen Anwendungen wird sich schnell eine große Anzahl an Makros ansammeln, was der Pbersichtlichkeit bei der Makroprogrammierung nicht gerade dienlich ist. Aus diesem Grund ist es mDglich, mehrere Makros in einer MakroGruppe zusammenzufassen. Strengenommen handelt es sich hierbei um mehrere Unter-Makros, die in einem Makro – in diesem Fall auch Gruppen-Makro genannt – angeordnet sind. Um ein Gruppen-Makro zu erzeugen, erstellen Sie wie gewohnt ein normales Makro und Dffnen dieses in der Entwurfsansicht. Als N!chstes w!hlen Sie den Men,punkt Ansicht > Makro-Namen aus oder klicken das gleichnamige Symbol der Symbolleiste an. Access erstellt daraufhin im Makro-Fenster eine neue Spalte mit dem Namen Makro-Name. In dieser Spalte geben Sie jeweils den Namen eines Unter-Makros an. Genau wie bei der Spalte Bedingungen kDnnen Sie auch die Spalte Makro-Name direkt nach dem Anlegen eines neuen Makros einblenden lassen, indem Sie im Optionen-Dialog (Men,punkt Extras > Optionen) im Register Ansicht die Option Namenspalte entsprechend einstellen. Wie bei der Spalte Bedingung blenden Sie auch hier die Spalte Makro-Namen nachtr!glich ,ber den Men,punkt Ansicht > Makro-Namen oder durch Anklicken des Symbols der Symbolleiste wechselweise ein oder aus, ohne dass der Inhalt dieser Spalte verloren geht.
Abb. 13.25 Ein Gruppen-Makro
736
Grundlagen der Makroprogrammierung
Der Eintrag des Unter-Makro-Namens markiert nun den Anfang des Unter-Makros. Das Ende wird durch das Makro-Ende selbst oder einen weiteren Eintrag in die Makro-Name-Spalte markiert. Sie sollten darauf achten, dass sich der Name eines Unter-Makros in dem aktuellen Makro nicht wiederholt! Ein Gruppen-Makro kDnnen Sie jedoch nicht so ohne weiteres ,ber den Men,punkt Ausf1hren > Start ausf,hren, da nicht klar ist, welches Unter-Makro des Gruppen-Makros ausgef,hrt werden soll. Ein Aufruf eines Unter-Makros muss daher immer in der Form
Aufruf eines UnterMakros
. erfolgen. Einen solchen Ausdruck kDnnen Sie beispielsweise ,ber das Dialogfenster Extras > Makro ausf1hren angeben. In der Liste Makro-Name werden nicht nur alle “normalen“ Makros, sondern auch alle Unter-Makros in der oben vorgestellten Syntax aufgef,hrt. Wenn Sie ein Gruppen-Makro, das mehrere Unter-Makros enth!lt, aufrufen, ohne ein spezielles Unter-Makro anzugeben, startet Access automatisch das erste UnterMakro. Hierbei gibt es jedoch eine Besonderheit zu beachten: Access sieht alle Aktionszeilen vor dem ersten Unter-Makro ebenfalls als Unter-Makro an. Sollte das erste Unter-Makro also nicht in der ersten Aktionszeile beginnen, f,hrt Access beim Start des Makros alle vor dem ersten Unter-Makro angeordneten Aktionen aus. Wenn Sie hier keine Aktionen ausgew!hlt haben, f,hrt Access nicht automatisch das erste Unter-Makro aus, sondern stoppt das Makro.
Fehlersuche Access ,berpr,ft bei der Eingabe von Aktionen und deren Aktionsargumenten, ob alle Eingaben in der richtigen Schreibweise und Syntax erfolgen. Dennoch kann ein Makro fehlerhaft sein. Dies ist beispielsweise dann der Fall, wenn Sie den Namen eines nicht existierenden Formulars angeben. Um den Fehler genauer einzugrenzen, bietet Access die MDglichkeit zur schrittweisen Ausf,hrung des Makros. Dazu markieren Sie den Men,punkt Einzelschritt des Men,s Ausf1hren oder das gleichnamige Symbol der Symbolleiste. Das Makro befindet sich nun im Einzelschrittmodus. Um den Einzelschrittmodus wieder zu deaktivieren, w!hlen Sie den Men,punkt ein zweites Mal aus oder klicken erneut auf das Einzelschritt-Symbol. Sobald Sie das Makro im Einzelschrittmodus auf die gewohnte Art und Weise ausf,hren, erscheint vor der Abarbeitung der ersten Aktion das Dialogfenster Einzelschritt.
Einzelschrittausf hrung
737
Makroprogrammierung
Abb. 13.26 Das EinzelschrittDialogfenster
In dem Dialogfenster zeigt Access den Makro-Namen sowie den Namen der Aktion an, die momentan ausgef,hrt wird. Zus!tzlich erscheint die Bedingung, die zur Ausf,hrung der Aktion gef,hrt hat. Haben Sie f,r die aktuelle Aktion keine Bedingung angegeben, erscheint lediglich der Text Wahr. Andernfalls zeigt Access das Ergebnis der Bedingung, gefolgt von einem Doppelpunkt und der kompletten Bedingung, an. Das Feld Argumente enth!lt die Inhalte aller Aktionsargumente, jeweils durch ein Semikolon getrennt, in der gleichen Reihenfolge, wie sie im Makro-Fenster angezeigt werden. Die hier angezeigten Ausdr,cke stimmen jedoch oft nicht mit den urspr,nglich eingegebenen Ausdr,cken ,berein. Der Grund daf,r liegt darin, dass Access in diesem Dialogfenster leider die englische Schreibweise von Auflistungen, Eigenschaften und Funktionen verwendet. Formulare wird so beispielsweise zu Forms und die Wert-Eigenschaft zur Value-Eigenschaft. Die vier Felder dienen lediglich zur Kontrolle der Aktion. 0nderungen sind nicht mDglich! Hinweis Funktion der Schaltfl!chen
Fehlermeldungen
738
Soll die in dem Feld Aktionsname angegebene Aktion ausgef,hrt werden, bet!tigen Sie die Schritt-Schaltfl!che. Access arbeitet diese Aktion ab und zeigt die n!chste Aktion im Einzelschritt-Fenster an. Pber die Schaltfl!che Halt unterbrechen Sie die Ausf,hrung des Makros. Die Schaltfl!che Weiter bewirkt, dass Access den Einzelschrittmodus deaktiviert und die restlichen Aktionen des Makros ohne Unterbrechung abarbeitet. Tritt im Unterbrechungsmodus oder w!hrend der normalen Makro-Ausf,hrung ein Fehler auf, zeigt Access zun!chst ein Dialogfenster mit dem jeweiligen Fehlertext an. Anschließend erscheint das Dialogfenster Aktion ist fehlgeschlagen, das den gleichen Aufbau wie das Einzelschritt-Fenster hat. Durch die Informationen in diesem Dialogfenster kDnnen Sie die Fehlerursache weiter eingrenzen. Zum Schließen des Dialogfensters bet!tigen Sie die Halt-Schaltfl!che. Alle anderen Schaltfl!chen des Dialogfensters haben in diesem Zusammenhang keine Funktion.
Grundlagen der Makroprogrammierung
Ereignisse Bis jetzt haben Sie gelernt, wie Sie Makros mithilfe von Men,punkten oder mittels der Ausf1hren-Schaltfl!che direkt vom Datenbankfenster aus starten. Diese StartmDglichkeiten werden in der Praxis allerdings nur w!hrend der Entwicklung von Makros zu Testzwecken eingesetzt. Normalerweise werden Makros durch so genannte Ereignisse ausgelDst, die innerhalb eines Formulars oder Berichts auftreten. Ein Ereignis ist beispielsweise der Klick auf eine Schaltfl!che, das Einf,gen oder LDschen eines Datensatzes oder das Rffnen eines Formulars. Access stellt eine ganze Reihe von Ereignissen zur Verf,gung, die in den unterschiedlichsten Situationen ausgelDst werden. Um beim Auftreten eines bestimmten Ereignisses ein bestimmtes Makro auszuf,hren, muss das Makro mit dem betreffenden Ereignis verkn,pft werden. Access ermDglicht dies durch Ereigniseigenschaften, die bei Formularen, Berichten und Steuerelementen zur Verf,gung stehen. Sie finden diese Eigenschaften wie auch alle anderen Eigenschaften im Eigenschaftenfenster der betreffenden Objekte. Wenn Sie ausschließlich die Ereigniseigenschaften eines Objekts aufgelistet haben mDchten, aktivieren Sie im Eigenschaftenfenster das Register Ereignis.
Ereigniseigenschaften
Abb. 13.27 Das Eigenschaftenfenster mit den Ereigniseigenschaften
739
Makroprogrammierung
Auf den ersten Blick unterscheiden sich Ereigniseigenschaften kaum von den “normalen“ Eigenschaften. Der Unterschied besteht jedoch darin, dass Sie hier keinen Wert oder Ausdruck, sondern den Name eines Makros eintragen.
Die Beim KlickenEreigniseigenschaft
Ein Beispiel f,r eine Ereigniseigenschaft ist die Beim Klicken-Eigenschaft, die Sie im Eigenschaftsfenster von Befehlsschaltfl!chen finden. Diese Ereigniseigenschaft repr!sentiert das Klick-Ereignis, das Access beim Anklicken der Schaltfl!che ausgelDst. Tragen Sie hier einfach den Namen des gew,nschten Makros ein. Eine Befehlsschaltfl!che stellt neben der BeimKlicken-Ereigniseigenschaft noch weitere Ereigniseigenschaften – beispielsweise die Beim Doppelklicken-Ereigniseigenschaft – zur Verf,gung. Access startet das hier eingetragene Makro nur dann, wenn das Doppelklicken-Ereignis auftritt d.h., wenn Sie kurz hintereinander doppelt auf die Schaltfl!che klicken
Abb. 13.28 Die Beim Klicken-Eigenschaft einer Befehlsschaltfl!che
Hinweis
Aufruf von UnterMakros
In den vorhergehenden Abschnitten haben Sie bereits kennen gelernt, wie Sie eine Schaltfl!che zum Start eines Makros per Drag & Drop in ein Formular einf,gen. Access macht hierbei nichts anderes, als eine neue Schaltfl!che anzulegen und den Namen des Makros in die Beim Klicken-Eigenschaft einzutragen. Wenn Sie ein Unter-Makro eines Gruppen-Makros durch eines der Ereignisse ausf,hren lassen mDchten, geben Sie das Makro in der folgenden Form an: .
740
Grundlagen der Makroprogrammierung
Um die Eingabe eines Makros zu vereinfachen, ist jede Ereigniseigenschaft mit einer Liste aller Makros und Unter-Makros ausgestattet. Sie aktivieren diese Liste durch einen Klick auf die Pfeil-Schaltfl!che, die Sie an der rechten Seite jeder Ereigniseigenschaft finden. Nach Auswahl eines Eintrags f,gt Access den entsprechenden Makro-Namen unter der Ereigniseigenschaft ein. Noch komfortabler wird das Eintragen eines Makros mithilfe des Makro-Editors. Zun!chst w!hlen Sie die Ereigniseigenschaft aus, in die Sie ein Makro eintragen mDchten. Klicken Sie hier auf die Editor-Schaltfl!che rechts neben dem Eingabefeld der Eigenschaft. Es erscheint das Dialogfenster Generator ausw7hlen, in dem Sie zum Start des Makro-Editors doppelt auf den Listeneintrag Makro-Generator klicken. Access legt nun ein neues Makro an und fordert Sie zur Eingabe des MakroNamens auf. Anschließend tr!gt es diesen Makro-Namen automatisch in das Eingabefeld der Ereigniseigenschaft ein. Gleichzeitig Dffnet Access das Makro in der Entwurfsansicht und Sie kDnnen direkt mit der Eingabe von Aktionen beginnen.
Makros per Editor erstellen
Ist in eine Ereigniseigenschaft bereits ein Makro eingetragen, bewirkt ein Klick auf die Editor-Schaltfl!che das Rffnen des Makros zur Bearbeitung in der Entwurfsansicht. In der Liste aller Makros finden Sie an erster Stelle den Eintrag [Ereignisprozedur]. Dieser ermDglicht es Ihnen, auf das Ereignis mit einer VBA-Prozedur zu reagieren. Hinweis
9bersicht aller Ereigniseigenschaften In der folgenden Tabelle sind alle Ereigniseigenschaften aufgelistet, die Steuerelemente zur Verf,gung stellen.
Ereigniseigenschaften von Steuerelementen, die sich in Formularen befinden
Ereigniseigenschaft
Beschreibung
Vor Aktualisierung
Der Inhalt des Steuerelements wurde ge!ndert und es verliert den Fokus. Das Ereignis tritt jedoch auf, bevor Access die Daten des Steuerelements in der zugrunde liegenden Tabelle speichert.
Nach Aktualisierung
Der Inhalt des Steuerelements wurde ge!ndert und es verliert den Fokus. Das Ereignis tritt auf, nachdem Access die Daten des Steuerelements bereits in der zugrund liegenden Tabelle gespeichert hat.
Bei Tnderung
Der Inhalt des Steuerelements hat sich ge!ndert
Beim Hingehen
Das Steuerelement erh!lt den Fokus beispielsweise durch Anklicken oder Auswahl ,ber die T-Taste von einem anderen Steuerelement des gleichen Formulars. 741
Makroprogrammierung
Ereigniseigenschaften von Steuerelementen, die sich in Formularen befinden (Forts.)
Ereigniseigenschaft
Beschreibung
Beim Verlassen
Das Steuerelement verliert den Fokus an ein anderes Steuerelement des gleichen Formulars
Bei Fokuserhalt
Das Steuerelement erh!lt den Fokus
Bei Fokusverlust
Das Steuerelement verliert den Fokus
Beim Klicken
Das Steuerelement wird einmal angeklickt
Beim Doppelklicken
Das Steuerelement wird doppelt angeklickt
Bei Maustaste Ab
Eine Maustaste wird niedergedr,ckt
Bei Mausbewegung
Die Maus wird ,ber ein Objekt hinwegbewegt
Bei Maustaste Auf
Eine Maustaste wird gelDst
Bei Taste Ab
Eine Taste wird niedergedr,ckt
Bei Taste
Eine Taste wurde bet!tigt
Bei Taste Auf
Eine Taste wurde gelDst
Bei Nicht In Liste
Diese Eigenschaft steht nur bei Kombinationsfeldern zu Verf,gung. Das Nicht In Liste-Ereignis tritt auf, wenn ein Text eingegeben wird, der nicht in der Kombinationsfeldliste enthalten ist Tabelle 13.33
Ereigniseigenschaften von Formularen
Doch nicht nur Steuerelemente, sondern auch Formulare und Berichte stellen Ereigniseigenschaften zur Verf,gung. Die folgende Tabelle enth!lt die Ereigniseigenschaften von Formularen:
Ereigniseigenschaften von Formularen
742
Ereigniseigenschaft
Beschreibung
Beim Anzeigen
Ein anderer Datensatz wird ausgew!hlt
Vor Eingabe
Eingabe eines neuen Datensatzes, bevor Access den neuen Datensatz in der zugrunde liegenden Tabelle anlegt
Nach Eingabe
Eingabe eines neuen Datensatzes, nachdem Access den neuen Datensatz in der zugrunde liegenden Tabelle angelegt hat
Grundlagen der Makroprogrammierung
Ereigniseigenschaften von Formularen (Forts.)
Ereigniseigenschaft
Beschreibung
Vor Aktualisierung
Wechsel von einem ver!nderten Datensatz zu einem anderen Datensatz, bevor Access die 0nderungen in der zugrunde liegenden Tabelle speichert
Nach Aktualisierung
Wechsel von einem ver!nderten Datensatz zu einem anderen Datensatz, nachdem Access die 0nderungen in der zugrunde liegenden Tabelle gespeichert hat
Bei Tnderung
Der aktuelle Datensatz wird ver!ndert
Beim L4schen
Der aktuelle Datensatz wird gelDscht
Vor L4schbest7tigung
Bevor die Sicherheitsabfrage bei LDschen eines Datensatzes angezeigt wird
Nach L4schbest7tigung
Nachdem die Sicherheitsabfrage bei LDschen eines Datensatzes angezeigt wurde
Beim ffnen
Das Formular wird geDffnet
Bei Laden
Die Datens!tze eines Formulars wurden angezeigt
Bei Gr4ßen7nderung
Die GrDße des Formulars wurde ver!ndert
Bei Entladen
Die Datens!tze eines Formulars werden entfernt
Beim Schließen
Das Formular wird geschlossen
Bei Aktivierung
Das Formular wird aktiviert
Bei Deaktivierung
Das Formular wird deaktiviert
Bei Fokuserhalt
Das Formular erh!lt den Fokus. Dies ist nur mDglich, wenn sich auf dem Formular kein aktives oder sichtbares Steuerelement befindet
Bei Fokusverlust
Das Formular verliert den Fokus. Dies ist nur mDglich, wenn sich auf dem Formular kein aktives oder sichtbares Steuerelement befindet
Beim Klicken
Das Formular wird angeklickt
Beim Doppelklicken
Das Formular wird doppelt angeklickt
Bei Maustaste Ab
Eine Maustaste wird niedergedr,ckt
Bei Mausbewegung
Die Maus wird ,ber ein Objekt hinwegbewegt 743
Makroprogrammierung
Ereigniseigenschaften von Formularen (Forts.)
Ereigniseigenschaft
Beschreibung
Bei Maustaste Auf
Eine Maustaste wird gelDst
Bei Taste Ab
Eine Taste wird niedergedr,ckt
Bei Taste Auf
Eine Taste wurde gelDst.
Bei Taste
Eine Taste wurde bet!tigt
Bei Fehler
Im Formular tritt ein Fehler auf
Bei Filter
Ein Filter wird bearbeitet
Bei angewendetem Filter
Ein Filter wird aktiviert oder deaktiviert
Bei Zeitgeber
Das Zeitgeber-Ereignis wurde ausgelDst Tabelle 13.34
Es folgen die Ereigniseigenschaften von Berichten:
Ereigniseigenschaften von Berichten
Ereigniseigenschaft
Beschreibung
Beim ffnen
Der Bericht wird in der Seitenansicht geDffnet bzw. gedruckt
Beim Schließen
Der Bericht wird geschlossen
Bei Aktivierung
Das Seitenansichtsfenster des Berichts wird aktiviert
Bei Deaktivierung
Das Seitenansichtsfenster des Berichts wird deaktiviert
Bei Ohne Daten
Dem Bericht liegen keine Daten zugrunde
Bei Seite
Eine Seite wird gedruckt
Bei Fehler
Im Bericht tritt ein Fehler auf
Beim Formatieren
Der aktuelle Bereich wird f,r den Ausdruck formatiert
Beim Drucken
Der aktuelle Bereich wird gedruckt
Bei R1cknahme
Access wechselt zum vorhergehenden Bereich Tabelle 13.35
744
Makroprogrammierung in der Praxis
Jede Ereigniseigenschaft korrespondiert mit einem bestimmten Ereignis. Der Name der Ereigniseigenschaft wird in fast allen F!llen durch die Silbe Bei bzw. Beim und den Namen des betreffenden Ereignisses gebildet (z.B. Klick-Ereignis => BeimKlicken-Eigenschaft). Eine Ausnahme sind lediglich die mit Vor oder Beim beginnenden Ereigniseigenschaften, deren Namen direkt mit den Ereignisnamen ,bereinstimmen. Viele der Ereignisse sind auf die Programmierung mit VBA zugeschnitten und kDnnen daher nicht sinnvoll mit Makros eingesetzt werden. Ein Beispiel hierf,r ist das Taste-Ereignis von Steuerelementen, das Access beim Bet!tigen einer Taste auslDst. Leider l!ßt sich mit Makros nicht feststellen, welche Taste bet!tigt wurde. Bei der Verwendung von VBA-Prozeduren wird diese Information dagegen in Form von Parametern zur Verf,gung gestellt.
Hinweis
Makroprogrammierung in der Praxis Nach der Theorie zur Makroprogrammierung in zweiten Teil dieses Kapitels geht es im dritten Teil um die praxisnahe Anwendung von Makros. Alle Beispiele zu diesem Kapitel befinden sich in den entsprechenden Beispieldatenbanken der beiliegenden CD. Die Datenbank Makrobeispiel, Adressen und Projekte eignet sich hierbei besonders gut, um die vorgestellten LDsungen nachzuvollziehen. Alle weiteren Beispieldatenbanken enthalten die fertigen LDsungen.
Hinweis
Arbeiten mit Makros in Formularen In den vorhergehenden Abschnitten haben Sie bereits das Makro Adresse zum Projekt anzeigen, verbesserte Version kennen gelernt. Zu Erinnerung: Das Makro hat die Aufgabe, zu dem aktuellen Projekt im Adressenformulars die passende Adresse auszuw!hlen. Ein Schwachpunkt ist allerdings, dass das Makro immer “von Hand“ ,ber das Datenbankfenster oder eine Schaltfl!che im Formular Projekte gestartet werden muss. Wenn Sie also im Projektformular einen anderen Datensatz ausw!hlen, zeigt Access im Adressenformular nicht automatisch den passenden Datensatz an. Dieses Problem l!ßt sich lDsen, indem Sie das Makro mit dem Anzeigen-Ereignis des Formulars verkn,pfen. Access lDst dieses Ereignis immer dann aus, wenn Sie den Datensatz – beispielsweise durch Einsatz der Navigationsschalfl!chnen – wechseln. Da das Rffnen des Formulars ebenfalls einem Datensatzwechsel gleichkommt, lDst Access zu diesem Zeitpunkt ebenfalls das Anzeigen-Ereignis aus.
Formulare synchronisieren
Die Beim AnzeigenEreigniseigenschaft
Um das Makro mit dem Anzeigen-Ereignis zu verkn,pfen, Dffnen Sie das Formular Projekte in der Entwurfsansicht, und tragen den Namen des Makros Adresse zum Projekt anzeigen, verbesserte Version in die Beim Anzeigen-Ereigniseigenschaft ein.
745
Makroprogrammierung
Abb. 13.29 Die Verkn pfung des Makros mit dem Anzeigen-Ereignis
Wenn Sie nun das Formular Projekte Dffnen, passiert Folgendes: Access Dffnet das Formular und lDst die Ereignisse ffnen und Laden auf. Da hier keine Makros eingetragen sind, passiert zun!chst nichts. Danach tritt das Ereignis Anzeigen auf, da – wie bereits erw!hnt – das Anzeigen des ersten Datensatzes ebenfalls einen Datensatzwechsel darstellt. Access stellt nun fest, dass hier ein Makro eingetragen ist, und startet es. Die erste Aktion ffnenFormular des Makros f,hrt nun dazu, dass Access das Adressenformular Dffnet. Anschließend aktiviert die GeheZuSteuerelement-Aktion das Steuerelement Adresse-Nr und die SuchenDatensatz-Aktion positioniert danach auf den passenden Adressendatensatz. Wenn Sie nun im Projektformular einen anderen Datensatz ausw!hlen, startet Access das Makro erneut. Da das Adressenformular bereits geDffnet ist, aktiviert die ffnenFormular-Aktion das Formular lediglich. Anschließend erfolgt dann eine erneute Suche nach dem passenden Adressendatensatz. Die beiden Formulare werden also automatisch synchronisiert. Diese LDsung zur Darstellung relational verkn,pfter Daten ist in einigen F!llen besser geeignet als eine Kombination aus Haupt- und Unterformular.
746
Makroprogrammierung in der Praxis
Verbesserte Formularsynchronisation Die vorgestellte LDsung zur Synchronisation zweier Formulare hat noch einen Schwachpunkt: Sobald Sie das Formular Projekte Dffnen, wird automatisch immer auch das Formular Adressen geDffnet. Dies ist nicht verwunderlich, da genau dies ja die Aufgabe der ersten Aktion ffnenFormular ist. Besser w!re es, wenn das Adressenformular nur dann synchronisiert w,rde, wenn es momentan geDffnet ist. Wenn Sie das Adressenformular dagegen schließen und im Projektformular einen anderen Datensatz ausw!hlen, sollte das Adressenformular auch nicht geDffnet werden. Um dieses Problem zu lDsen, muss zun!chst einmal festgestellt werden, ob das Adressenformular ,berhaupt geDffnet ist. Nur wenn dies der Fall ist, soll eine Synchronisation stattfinden. Diese Aufgabe erledigt die Funktion IstGeladen:
Die IstGeladenFunktion
IstGeladen() Diese Funktion gibt immer dann den logischen Wert Wahr zur,ck, wenn das Formular, dessen Namen unter angegeben wurde, geDffnet ist. Mithilfe dieser Funktion kDnnen Sie einen Ausdruck formulieren, der nur dann das Ergebnis Wahr hat, wenn das Adressenformular geDffnet ist: IstGeladen("Adressen") Dieser Ausdruck kann nun als Bedingung eingesetzt werden. Bei der Funktion IstGeladen handelt es sich um eine besondere Funktion, die nicht zum Standardfunktionsumfang von Access gehDrt. Die Funktion ist in der Programmiersprache VBA geschrieben und befindet sich in dem Modul IstGeladen-Funktion der Beispieldatenbank. Wenn Sie die Funktion in Ihren eigenen Datenbanken verwenden mDchten, kopieren oder importieren Sie einfach das komplette Modul in Ihre Datenbank.
Hinweis
Eine weitere 0nderung an dem Makro betrifft die ffnenFormular-Aktion. Zur Erinnerung: Die Aktion Dffnet nicht nur ein Formular, sondern sie aktiviert es auch gleichzeitig. Besonders die letzte Tatsache ist wichtig, da sich die nachfolgende SuchenDatensatz-Aktion immer auf das momentan aktive Formular bezieht. Da das Adressenformular nun nicht mehr automatisch vom Makro aus geDffnet werden soll, muss die Aktion durch die Ausw7hlenObjekt-Aktion ersetzt werden. Die Aufgabe dieser Aktion ist es, ein beliebiges Objekt (z.B. eine Tabelle, eine Abfrage oder ein Formular) zu aktivieren. Unter den Aktionsargumenten muss dazu sowohl der Objekttyp als auch der Name des gew,nschten Objekts eingetragen werden. Das dritte Argument Im Datenbankfenster ermDglicht es, ein bestimmtes Objekt lediglich im Datenbankfenster zu markieren. Da diese Funktion in diesem Fall nicht benDtigt wird, stellen Sie hier Nein ein.
Ausw(hlenObjektAktion
747
Makroprogrammierung
Die folgende Tabelle zeigt den kompletten Aufbau des Makros
Aufbau des Makros Adressenformular synchronisieren
Spalte Bedingung
Spalte Aktion
IstGeladen("Adressen")
Ausw7hlenObjekt
...
GeheZuSteuerelement
...
SuchenDatensatz Tabelle 13.36
Die Aktionsargumente der einzelnen Aktionen haben folgende Einstellungen: Aktionsargumente des Makros
Ausw%hlenObjekt-Aktion: Objekttyp: Formular Objektname: Adressen Im Datenbankfenster: Nein
GeheZuSteuerelement-Aktion: Steuerelementname:
748
[Adresse-Nr]
Makroprogrammierung in der Praxis
SuchenDatensatz-Aktion: Suchen nach: =Formulare!Projekte!Adresse-Nr.Wert Vergleichen: Gesamter Feldinhalt Groß-/Kleinschreibung: Nein Suchen: Alle Wie formatiert: Nein Nur aktuelles Feld: Ja Am Anfang beginnen: Ja
Sie finden das fertige Makro zusammen mit den Formularen Adressen und Projekte in der Beispieldatenbank Makrobeispiel, Formulare synchronisieren unter dem Namen Adressenformular synchronisieren.
Abb. 13.30 Das Makro Adressenformular synchronisieren
Lffnen und Schließen des Adressenformulars Was nun noch zu einer komfortablen Projektverwaltung gehDrt, ist eine MDglichkeit, um das Adressenformular vom Projektformular aus zu Dffnen und zu schließen. Das passende Makro zum Rffnen des Adressenformulars ist schnell erstellt: Ordnen Sie in der ersten Aktionszeile einfach die Aktion ffnenFormular an und w!hlen Sie unter Formularname das Formular Adressen aus.
4ffnen des Adressenformulars
749
Makroprogrammierung
Hinweis
F,r diesen Schritt stellt Access eine Abk,rzung per Drag & Drop zur Verf,gung. Ziehen Sie dazu einfach das gew,nschte Formular auf eine freie Aktionszeile des Makro-Fensters. Daraufhin w!hlt Access die ffnenFormular-Aktion aus und tr!gt den Namen des Makros ins Aktionsargument Formularname ein. Gleiches funktioniert ,brigens auch bei allen anderen Objekten des Datenbankfensters. Damit nach dem Rffnen des Adressenformulars auch direkt eine Synchronisation erfolgt, muss anschließend das Makro Adressenformular synchronisieren ausgef,hrt werden. Geben Sie dazu als zweite Aktion die Ausf1hrenMakro-Aktion an und w!hlen Sie unter Makroname das Makro Adressenformular synchronisieren aus. Speichern Sie das Makro unter dem Namen Adressenformular 4ffnen.
Abb. 13.31 Das Makro Adressenformular -ffnen
Schließen-Aktion
Das zweite Makro mit dem Namen Adressenformular schließen ist !hnlich einfach aufgebaut. Das Schließen wird hierbei von der Aktion Schließen erledigt. Unter dem Aktionsargument Objekttyp w!hlen Sie den Typ Formular aus der Liste aus. Unter Objektname geben Sie schließlich den Formularnamen Adressen an. Die zwei entsprechenden Schaltfl!chen zum Start der Makros legen Sie am einfachsten an, indem Sie beide Makros nacheinander in die Entwurfsansicht des Projektformulars ziehen. Eventuell m,ssen Sie die vorhandenen Steuerelemente verschieben, um etwas Platz zu schaffen.
750
Makroprogrammierung in der Praxis
Nachdem die wichtigsten Schritte bei der Bedienung der Projektverwaltung nun automatisiert sind, fehlt nur noch das automatische Schließen des Adressenformulars beim Schließen des Projektformulars. Dazu tragen Sie den Namen des Makros Adressenformular schließen einfach in die Beim Schließen-Ereigniseigenschaft des Projektformulars ein. Wenn das Projektformular nun geschlossen wird, lDst Access f,r dieses Formular das Schließen-Ereignis aus und startet das Makro Adressenformular schließen. Das Adressenformular wird also ebenfalls geschlossen. Sollten Sie das Formular bereits vorher “von Hand“ geschlossen haben, tritt bei der Ausf,hrung der Schließen-Aktion trotzdem kein Fehler auf.
Automatisches Schließen des Adressenformulars
Alle in diesem Abschnitt vorgestellten Makros finden Sie in der Datenbank Makrobeispiel: Formulare synchronisieren.
Abb. 13.32 Das fertige Projektformular
Kontrolle der Dateneingabe bei Formularen Sie haben bereits eine Technik zum Kontrollieren der Dateneingabe bei Steuerelementen ,ber die G1ltigkeitsregel- bzw. G1ltigkeitsmeldung-Eigenschaft kennen gelernt. Mithilfe dieser Eigenschaften legen Sie eine einfache Regel fest, nach der Access die G,ltigkeit der Eingabe ,berpr,ft und ggf. ein Meldungsfenster angezeigt. Komplexere Pberpr,fungen oder eine automatische Korrektur der Eingaben sind auf diese Weise jedoch nicht mDglich.
751
Makroprogrammierung
Die Beim VerlassenEreigniseigenschaft
Access stellt bei allen Steuerelementen, in die Daten eingegeben werden kDnnen, die Ereigniseigenschaft Beim Verlassen zur Verf,gung. Das entsprechende Ereignis lDst Access immer dann aus, wenn Sie den Fokus von einem Steuerelement zu einem anderen Steuerelement des gleichen Formulars bewegen. Ein ,ber dieses Ereignis gestartetes Makro kann also die Daten in dem Steuerelement direkt nach der Eingabe ,berpr,fen und ggf. korrigieren oder eine Fehlermeldung ausgeben. Ein Beispiel f,r die Korrektur einer Eingabe ist die Umwandlung eines Textes in Großbuchstaben. In der Beispieldatenbank Makrobeispiel: Kontrolle der Dateneingabe finden Sie das Makro Nachname in Großbuchstaben umwandeln. Die Aufgabe des Makros ist es, den Nachnamen bei der Eingabe ins Adressenformular in Großbuchstaben umzuwandeln. Das Makro enth!lt ausschließlich die Aktion SetzenWert mit folgenden Einstellungen der Aktionsargumente:
Aktionsargumente des Makros
SetzenWert-Aktion: Feld: Ausdruck:
[Nachname] Großbst([Nachname])
Das Makro tragen Sie in der Beim Verlassen-Ereigniseigenschaft des Steuerelements Nachname ein. Wenn Sie nun bei der Eingabe oder Korrektur eines Adressendatensatzes zum Nachname-Steuerelement wechseln und dieses wieder verlassen, wandelt Access den Inhalt automatisch in Großbuchstaben um.
Hinweis
752
Bei der Angabe des Steuerelements, dessen Inhalt in Großbuchstaben umgewandelt werden soll, wurde in dem obigen Beispiel nicht der komplette Verweis auf das Steuerelement (Formulare!Adressen!Nachname), sondern lediglich der Steuerelementname angegeben. Diese Kurzform ist zul!ssig, da das Makro direkt vom Adressenformular aus gestartet wird. In diesem Fall beziehen sich alle Steuerelementund Eigenschaftsnamen automatisch auf das Adressenformular. Nat,rlich h!tten alternativ auch die vollst!ndigen Verweise angegeben werden kDnnen:
Makroprogrammierung in der Praxis
SetzenWert-Aktion: Feld: Ausdruck:
Formulare!Adressen!Nachname Großbst(Formulare!Adressen!Nachname)
Eine zweite Ereigniseigenschaft mit dem Namen Beim Hingehen hat eine !hnliche Funktion wie die Beim Verlassen-Eigenschaft. Das Ereignis wird jedoch immer dann ausgef,hrt, wenn das jeweilige Steuerelement den Fokus von einem anderen Steuerelement des gleichen Formulars erh!lt. Neben den Ereignissen Hingehen und Verlassen gibt es noch zwei weitere Ereignisse mit den Namen Fokuserhalt und Fokusverlust, die ebenfalls mit dem Fokus zusammenh!ngen. Der Unterschied zwischen den beiden Ereignissen besteht darin, dass die Fokuserhalt- und Fokusverlust-Ereignisse auch dann auftreten, wenn der Fokus zu einem Steuerelement eines anderen Formulars wechselt. Die Ereignisse Hingehen und Verlassen treten dagegen nur bei einem Fokuswechsel innerhalb eines Formulars auf.
Beim HingehenEreigniseigenschaften
Bei Fokuserhalt, Bei Fokusverlust
Wenn Sie die Umwandlung des Namens im obigen Beispiel nicht in der Beim Verlassen-, sondern in der Bei Fokusverlust-Eigenschaft durchgef,hrt h!tten, w,rde Access die Umwandlung auch dann durchf,hren, wenn Sie w!hrend der Eingabe des Namens kurzzeitig das Datenbankfenster aktivieren. Wichtig ist der Unterschied beispielsweise dann, wenn Sie per Makro die Benutzereingaben auf Fehler untersuchen. Die entsprechenden Fehlermeldungen sollten nur dann angezeigt werden, wenn die Eingabe abgeschlossen ist und der Benutzer zum n!chsten Steuerelement wechselt. Wenn er dagegen zu einem anderen Formular wechselt, um hier eventuelle eine Information nachzuschlagen, sollte zun!chst keine Fehlermeldung erscheinen.
Erzwingen der Dateneingabe Oft muss sichergestellt werden, dass in einem Steuerelement bei der Eingabe eines neuen Datensatzes auch wirklich eine Eingabe erfolgt. Bei einer Adressenverwaltung trifft dies beispielsweise auf das Feld Nachname zu. Eine entsprechende Pberpr,fung kann jedoch nicht ohne weiteres in der Beim Verlassen-Ereigniseigenschaft des Nachname-Steuerelements durchgef,hrt werden. Schließlich kann es vorkommen, dass der Anwender das Steuerelement per Mausklick ,berspringt und es damit ,berhaupt nicht aktiviert wird. Das Verlassen-Ereignis wird damit ebenfalls nicht ausgelDst. Die Pberpr,fung muss also auf hDherer Ebene – n!mlich durch das Formularereignis Vor Aktualisierung – erfolgen. Sie finden diese Ereigniseigenschaft im Eigenschaftenfenster von Formularen.
753
Makroprogrammierung
Abb. 13.33 Die Vor AktualisierungEreigniseigenschaft von Formularen
Ein Makro, das in der Vor Aktualisierung-Ereigniseigenschaft eingetragen ist, f,hrt Access immer dann aus, wenn Sie einen neuen oder ge!nderten Datensatz speichern. Beim Eingeben oder 0ndern eines Datensatzes kopiert Access diesen zun!chst in einen tempor!ren Zwischenspeicher. Hiervon bemerken Sie als Anwender in der Regel nichts. Access lDst das Vor Aktualisierung-Ereignis aus, bevor es die Daten aus dem Zwischenspeicher in die zugrunde liegende Tabelle schreibt. Mit einem entsprechenden Makro kDnnen Sie das Speichern also noch abgefangen und die Daten im Zwischenspeicher korrigieren. Das Gegenst,ck dazu stellt das Nach Aktualisierung-Ereignis dar: Bei Eintreten dieses Ereignisses wurde der Datensatz bereits gespeichert. 0nderungen oder Korrekturen m,ssen nun an den Daten der zugrunde liegenden Tabelle erfolgen.
Die Vor AktualisierungEreigniseigenschaft
F,r das Erzwingen der Eingabe eines Nachnamens eignet sich am besten die Vor Aktualisierung-Ereigniseigenschaft. Erfolgte im Steuerelement Nachname keine Eingabe, kann das Speichern ,ber die AbbrechenEreignis-Aktion verhindert werden. Das entsprechende Makro hat den folgenden Aufbau:
Das Makro Adresseneingaben /berpr/fen
Bedingung
Aktion
IstNull([Nachname])
Meldung
...
AbbrechenEreignis Tabelle 13.37
754
Makroprogrammierung in der Praxis
Meldung-Aktion: Meldung: Signalton: Typ: Titel:
Es muss ein Name eingegeben werden! Ja Kritisch Achtung
Pber den Ausdruck IstNull([Nachname]) ,berpr,fen Sie, ob das Steuerelement einen Inhalt enth!lt oder nicht. Im letzteren Fall (Inhalt Null) zeigt Access eine Meldung an und bricht das Speichern des tempor!ren Zwischenspeichers mithilfe der AbbrechenEreignis-Aktion ab. Sie finden das fertige Makro in der Beispieldatenbank Makrobeispiel: Kontrolle der Dateneingabe unter dem Namen Adresseneingaben 1berpr1fen. Mit der gleichen Technik stellen Sie nicht nur sicher, ob in ein bestimmtes Steuerelement eine Eingabe erfolgt. Sie kDnnen alle Arten von Eingaben kontrollieren. Gegebenenfalls reagieren Sie auf verschiedene Eingabefehler mit verschiedenen Fehlermeldungen.
Filtern und Suchen Access stellt verschiedene MDglichkeiten zur Verf,gung, die Datens!tze eines Formulars zu filtern. Der einfachste Weg zu einem Filter f,hrt ,ber die Men,punkte des Men,s Datens7tze > Filter.
AnwendenFilterAktion
Auch per Makro kann ein bestimmter Filter aktiviert werden. Die entsprechende Aktion tr!gt den Namen AnwendenFilter. Pber das Aktionsargument Filtername der Aktion geben Sie einen als Abfrage gespeicherten Filter an. Alternativ ist auch die Angabe einer Bedingung mDglich, die den WHERE-Teil einer SQL-Abfrage darstellt. Solche Bedingungen haben Sie bereits im Zusammenhang mit der ffnenFormular-Aktion kennen gelernt. Die AnwendenFilter-Aktion bezieht sich immer auf das Formular, welches momentan aktiviert ist. Um also die Datens!tze eines bestimmten Formulars zu filtern, m,ssen Sie dieses vorher mithilfe der Ausw7hlenObjekt-Aktion aktivieren. In der Beispieldatenbank Makrobeispiel, Filtern und Suchen finden Sie ein entsprechendes Beispiel. Das Formular Projektliste dieser Datenbank enth!lt ein Textfeld, in das Sie einen bestimmten Betrag eingegeben. Nach Aktivierung des Filters sollen nur Projekte angezeigt werden, deren Nettobetrag grDßer als der eingegebene Grenzbetrag ist.
755
Makroprogrammierung
Abb. 13.34 Das Formular Projektliste
Die Aktivierung des Filters erfolgt ,ber eine Umschaltfl!che. Wenn Sie diese anklicken, repr!sentiert sie den logischen Wert Wah, und Access soll den Filter aktivieren. Erneutes Anklicken hebt den Filter wieder auf. In diesem Zustand hat die Umschaltfl!che den Wert Falsch. Sowohl das Textfeld als auch die Umschaltfl!che sind ungebundene Steuerelemente. Dies bedeutet, dass sie an kein Datenfeld gebunden sind. Das Textfeld tr!gt den Namen txtGrenzbetrag und die Umschaltfl!che den Namen togFilter. Das entsprechende Makro zur Aktivierung und Deaktivierung des Filters hat den folgenden Aufbau:
Das Makro Projektliste filtern
Bedingung
Aktion
[togFilter] = Falsch
AnzeigenAlleDatens!tze
[togFilter] = Wahr
AnwendenFilter Tabelle 13.38
756
Makroprogrammierung in der Praxis
AnwendenFilter-Aktion: Filtername: Bedingung:
[Nettobetrag] >= Formulare!Projektliste! [txtGrenzbetrag]
Das fertige Makro mit dem Namen Projektliste filtern ist in der Beim Klicken-Ereigniseigenschaft der Umschaltfl!che eingetragen. Access f,hrt das Makro also immer dann aus, wenn Sie auf die Umschaltfl!che klicken und damit ihren Zustand !ndern. Im markierten Zustand der Umschaltfl!che f,hrt die Bedingung [togFilter] = Wahr zu dem logischen Wert Wahr und Access aktiviert ,ber das Projektliste filtern-Makro den Filter. Dieser filtert nun alle Datens!tze heraus, deren Feld Nettobetrag einen hDheren Betrag aufweist als der Inhalt des Steuerelements txtGrenzbetrag. Nach dem zweiten Anklicken der Umschaltfl!che nimmt sie wieder den Wert Falsch an und Access f,hrt das Makro Projektliste filtern erneut aus. Dieses Mal kommt jedoch die Aktion AnzeigenAlleDatens7tze zur Ausf,hrung. Diese Aktion hebt den Filter des momentan aktiven Formulars wieder auf. Im Formular Projektliste zeigt Access jetzt also wieder alle Datens!tze an. Das fertige Formular finden Sie zusammen mit dem Makro in der Beispieldatenbank Makrobeispiel, Filtern und Suchen. Besonders ansprechende Filter erstellen Sie, indem Sie transparente Schaltfl!chen vor einer Grafik anordnen. Ein Klick auf einen bestimmten Punkt der Grafik w,rde dann zur Aktivierung eines bestimmten Filters f,hren. Eine Demonstration dieser Technik finden Sie ebenfalls in der Beispieldatenbank Makrobeispiel, Filtern und Suchen, Formular Adressenliste.
Hinweis
757
Makroprogrammierung
Abb. 13.35 Das Formular Adressenliste
Suchen von Datens%tzen Eine der h!ufigsten Aufgaben beim Arbeiten mit Formularen ist das Suchen nach bestimmten Datens!tzen. Access stellt zu diesem Zweck das Dialogfenster Suchen des Men,s Bearbeiten zur Verf,gung. Hier legen Sie alle notwendigen Kriterien und Bedingungen zum Suchen eines Datensatzes fest.
SuchenDatensatzAktion
Wie Sie bereits im Zusammenhang mit der Synchronisation von Formularen kennen gelernt haben, kann die Suche auch per Makro mithilfe der SuchenDatensatzAktion erfolgen. Diese Aktion stellt die gleichen Suchkriterien zur Verf,gung wie das Dialogfenster Suchen. Doch die Gemeinsamkeiten gehen noch einen Schritt weiter: Wenn Sie ,ber die SuchenDatensatz-Aktion eine Suche starten, ,bernimmt Access die Suchkriterien automatisch in das Dialogfenster Suchen. Nach erfolgloser Suche kDnnen Sie das Dialogfenster daher Dffnen und die Suchkriterien komfortabel ab!ndern. In der Datenbank Makrobeispiel, Filtern und Suchen finden Sie das Formular Adressen, das im Formularkopf ein Textfeld mit dem Namen txtSuchNachname und drei Schaltfl!chen enth!lt. In das Textfeld geben Sie einen Nachnamen oder lediglich den Teil eines Nachnamens ein, nach dem Access bei einem Klick auf die Schaltfl!che Nachname suchen sucht. Pber die Schaltfl!che Suche wiederholen wiederholen Sie die Suche, falls mehrere passende Nachnamen vorhanden sind. Die dritte Schaltfl!che aktiviert schließlich das Standarddialogfenster Suchen, um die Suchkriterien zu ver!ndern.
758
Makroprogrammierung in der Praxis
Abb. 13.36 Die Suchkriterien der SuchenDatensatz-Aktion werden in das Dialogfenster Suchen bernommen
Abb. 13.37 Das Formular Adressen
759
Makroprogrammierung
Die erste Schaltfl!che Nachname suchen ist ,ber die Beim Klicken-Ereigniseigenschaft an das Makro Adressenformular:Nachname suchen gebunden, welches den folgenden Aufbau hat:
Das Makro Adressenformular:Nachname suchen
Bedingung
Aktion
IstNull([txtSuchNachname])=Falsch
GeheZuSteuerelement
...
SuchenDatensatz Tabelle 13.39
GeheZuSteuerelement-Aktion: Steuerelementname:
Nachname
Aktionsargumente des Makros
SuchenDatensatz-Aktion: Suchen nach: Vergleichen: Groß/Klein beachten: Suchen: Wie formatiert: Nur aktuelles Feld: Am Anfang beginnen:
760
= [txtSuchNachname] Teil des Feldinhaltes Nein Unten Nein Ja Ja
Makroprogrammierung in der Praxis
Voraussetzung f,r die Suche ist, dass in das Steuerelement txtSuchNachname ,berhaupt ein Text eingetragen ist, nach dem gesucht werden soll. Dies wird mit einer entsprechenden Bedingung gepr,ft. Sollte ein Text vorhanden sein, aktiviert die GeheZuSteuerelement-Aktion das Steuerelement Nachname. Anschließend startet das Makro die Suche mittels SuchenDatensatz-Aktion. Nach erfolgreicher Suche zeigt Access den ersten gefundenen Datensatz im Formular an. F,r den Fall, dass noch ein weiterer passender Datensatz vorhanden ist, muss die Suche erneut gestartet werden. Zu diesem Zweck stellt Access die SuchenWeiter-Aktion zur Verf,gung. Das folgende Makro ist an die Schaltfl!che Suche Wiederholen gebunden.
Das Makro Adressenformular:Suche wiederholen
Aktion GeheZuSteuerelement SuchenWeiter Tabelle 13.40
GeheZuSteuerelement-Aktion: Steuerelementname:
Nachname
Aktionsargumente des Makros
Wichtig ist hierbei, dass Sie den Fokus vor der erneuten Suche mithilfe der GeheZuSteuerelement-Aktion wieder auf das richtige Steuerelement positionieren. Die dritte Schaltfl!che mit der Beschriftung Kriterien bearbeiten ist von der Funktion her identisch mit dem Men,befehl Bearbeiten > Suchen. Sie aktiviert das Dialogfenster Suchen zur Bearbeitung der Suchkriterien. Das entsprechende Makro mit dem Namen Adressenformular:Kriterien bearbeiten enth!lt zu diesem Zweck die Aktion Ausf1hrenBefehl, die fast jeden beliebigen Men,punkt bzw. Befehl von Access ausf,hren kann. Den gew,nschten Befehl geben Sie unter dem Aktionsargument Befehl. In diesem Fall hat das Aktionsargumente folgenden Inhalt:
761
Makroprogrammierung
AusfhrenBefehl-Aktion: Befehl:
Suchen
Komfortable Suche ber Dialogfenster In bestimmten F!llen ist das Suchen eines Datensatzes ,ber die SuchenDatensatzAktion ausreichend. Oft ist es jedoch erw,nscht, dass Access in verschiedenen Feldern nach bestimmten Kriterien sucht. Eine solche Suche l!ßt sich nur in Form einer Abfrage definieren, was jedoch f,r den Endanwender in der Regel zu kompliziert ist. Bei der Suche nach einer bestimmten Adresse kann es beispielsweise notwendig sein, alle Adressendatens!tze anzeigen zu lassen, deren Name mit dem Buchstaben “M“ beginnt und in deren Ortsfeld D1sseldorf eingetragen ist. Ein entsprechend gestaltetes Suchformular, mit dem diese Art der Suche mDglich ist, finden Sie in der Beispieldatenbank Makrobeispiel, Filtern und Suchen unter dem Namen Adresse suchen.
Abb. 13.38 Das Dialogfenster Adresse suchen
Aufbau des Suchformulars
762
Das Formular besteht im oberen Bereich aus vier Steuerelementen, in die Sie die jeweiligen Suchkriterien eingeben. Sobald Sie dies erledigt haben und auf die Schaltfl!che Suchen klicken, startet Access die Suche und zeigt alle passenden Datens!tze in der unteren Tabelle des Dialogfensters an. Hier w!hlen Sie einen
Makroprogrammierung in der Praxis
beliebigen Datensatz durch einen Klick auf eine der OK-Schaltfl!chen am Anfang jeder Zeile aus. Access Dffnet daraufhin das Adressenformular und zeigt den passende Datensatz an. Die Steuerelemente des Suchformulars, in die Sie die Suchkriterien eingeben, tragen die Namen Suchkriterium:Nachname, Suchkriterium:Vorname, Suchkriterium:Straße und Suchkriterium:Ort. Es handelt sich hierbei um ungebundene Steuerelemente, die nicht an ein Feld einer zugrunde liegenden Tabelle oder Abfrage gebunden sind.
Die Funktionsweise des Suchformulars basiert auf der Abfrage Adresse suchen. Diese Abfrage hat eine Besonderheit: Sie verwendet die Inhalte der Steuerelemente Suchkriterium:Nachname, Suchkriterium:Vorname, Suchkriterium:Straße und Suchkriterium:Ort als Kriterien f,r die Auswahl der Datens!tze.
Die Abfrage Adresse suchen
Abb. 13.39 Die Auswahlabfrage Adresse suchen
Um diese Abfrage zu erstellen, erzeugen Sie zun!chst eine normale Auswahlabfrage ,ber das Datenbankfenster, der die Tabelle Adressen zugrunde liegt, und w!hlen die Datenfelder Adresse-Nr, Nachname, Vorname, Straße und Ort aus. Als Kriterien geben Sie nun die Ausdr,cke der folgenden Tabelle (jeweils ohne Zeilenumbr,che) in die entsprechenden Kriterien-Eingabefelder ein:
763
Makroprogrammierung
Ausdrcke im Eingabefeld Kriterien
Datenfeld
Ausdruck
Adresse-Nr
(kein Ausdruck)
Name
Wie ([Formulare]![Adresse suchen]![Suchkriterium:Name] & "*")
Vorname
Wie ([Formulare]![Adresse suchen]![Suchkriterium:Vorname] & "*") Oder Ist Null
Straße
Wie ([Formulare]![Adresse suchen]![Suchkriterium:Straße] & "*") Oder Ist Null
Ort
Wie ([Formulare]![Adresse suchen]![Suchkriterium:Ort] & "*") Oder Ist Null Tabelle 13.41
Aufbau des Adressen-Formulars
Die Abfrage Adresse suchen liegt nun dem Formular Adresse suchen-Unterformular zugrunde, welches als Unterformular in das Hauptformular Adresse suchen eingef,gt ist. In dem Unterformular zeigt Access also nur die Datens!tze an, die den in der Abfrage definierten Kriterien entsprechen. Eine Besonderheit stellt die Suchen-Schaltfl!che des Formulars Adresse suchen dar: Beim Anklicken wird das eingebettete Unterformular aktualisiert. Dadurch f,hrt Access die dem Unterformular zugrunde liegende Abfrage erneut aus und kann so bei eventuell ge!nderten Kriterien wieder die passenden Datens!tze in der Tabelle anzeigen. Das ,ber die Beim Klicken-Ereigniseigenschaft an die Schaltfl!che gebundene Makro tr!gen den Namen Liste aktualisieren. Es enth!lt die Aktion AktualisierenDaten mit folgender Einstellung des Aktionsarguments:
AktualisierenDaten-Aktion: Steuerelementname:
Suchergebnis
Pber das Aktionsargument Steuerelementname bestimmen Sie das Steuerelement, welches Access aktualisieren soll. In diesem Fall tr!gt das Steuerelement vom Typ Unterformular/-bericht, in dem das Formular Adresse suchen-Unterformular angezeigt wird, den Steuerelementnamen Suchergebnis.
764
Makroprogrammierung in der Praxis
Mithilfe der AktualisierenDaten-Aktion ist es nicht nur mDglich, ein Unterformular zu aktualisieren. Auch bei Listen-/Kombinationsfeldern und Diagrammen f,hren Sie mithilfe dieser Aktion die zugrunde liegende Abfrage erneut aus und aktualisieren damit das Steuerelement. Nachdem Sie die gesuchte Adresse ausfindig gemacht haben, gen,gt ein Klick auf die OK-Schaltfl!che, um das Adressenformular zu Dffnen und den passenden Datensatz auszuw!hlen. Dies erfolgt ,ber das Makro Adressendatensatz ausw7hlen, dessen Name in die Beim Klicken-Ereigniseigenschaft der Schaltfl!che eingetragen ist. Das Makro hat den folgenden Aufbau:
Hinweis
Funktion der OKSchaltfl!che
Das Makro Adressendatensatz ausw*hlen
Aktion RffnenFormular GeheZuSteuerelement SuchenDatensatz Tabelle 13.42 Die Aktionsargumente der Aktionen haben folgende Inhalte:
LffnenFormular-Aktion: Formularname: Ansicht: Filtername: Bedingung: Datenmodus: Fenstermodus:
Adressen Formular
Bearbeiten Normal
765
Makroprogrammierung
GeheZuSteuerelement-Aktion: Steuerelementname:
[Adresse-Nr]
SuchenDatensatz-Aktion: Suchen nach: Vergleichen: Groß/Klein beachten: Suchen: Wie formatiert: Nur aktuelles Feld: Am Anfang beginnen:
=[Adresse-Nr] Gesamter Feldinhalt Nein Alle Nein Ja Ja
Zur Erkl!rung: Wenn Sie das Makro durch Anklicken der OK-Schaltfl!che starten, Dffnet Access zun!chst das Adressenformular und aktiviert es. Anschließend aktiviert die n!chste Aktion das Steuerelement Adresse-Nr. Die Positionierung auf den richtigen Adressendatensatz erledigt wieder die SuchenDatensatz-Aktion. Unter dem Aktionsargument Suchen nach ist eine Kurzform angegeben, die auf das Steuerelement [Adresse-Nr] in dem Unterformular verweist. Dies ist zul!ssig, da das Makro von dem Unterformular aus gestartet wird und sich daher alle Feldnamen direkt auf dieses Formular beziehen. Anstelle dieser Kurzform h!tten Sie auch den folgenden vollst!ndigen Ausdruck einsetzen kDnnen: Formulare![Adresse suchen].Steuerelemente! Suchergebnis.Formular![AdresseNr].Wert
Meldungsfenster Die Aufgabe eines Meldungsfensters ist es, dem Anwender bestimmte Informationen zu geben. Typische Einsatzbereiche f,r Meldungsfenster sind beispielsweise Hinweise auf Fehler oder die Kontrolle von Abl!ufen.
766
Makroprogrammierung in der Praxis
Zum Erzeugen eines Meldungsfensters stellt Access die Meldung-Aktion zur Verf,gung. Sie ermDglicht es, ein einfaches Meldungsfenster mit einer OK-Schaltfl!che anzuzeigen.
Meldung-Aktion
Abb. 13.40 Ein Meldungsfenster
Da die Meldung-Aktion nur Meldungsfenster mit einer OK-Schaltfl!che darstellen kann, dient sie weniger zum Sammeln von Informationen als vielmehr zum Anzeigen von Hinweisen. Die grDßte Einschr!nkung der Meldung-Aktion besteht darin, dass das Meldungsfenster ausschließlich ,ber die OK-Schaltfl!che geschlossen werden kann, da es keine weiteren Schaltfl!chen besitzt. Von Windows her sind jedoch auch Meldungsfenster bekannt, in denen zwei oder mehr Schaltfl!chen zu finden sind (z.B. OK/Abbrechen oder Ja/Nein). Auch diese Art von Meldungsfenstern lassen sich mit Access auf bequeme Art und Weise mit Makros erstellen und handhaben. Verwenden Sie zu diesem Zweck lediglich anstelle der Meldung-Aktion die Meldung-Funktion. Die Meldung-Funktion kann wie fast jede andere Funktion in der Bedingung-Spalte eines Makros eingesetzt werden. Sie erwartet bei ihrem Aufruf maximal drei Parameter. Durch diese Parameter bestimmen Sie das Aussehen des Meldungsfensters. Die allgemeine Syntax lautet wie folgt:
Die Meldung-Funktion
Meldung(<Meldungstext>; ; <Titeltext>) Der Parameter <Meldungstext> bestimmt den im Fenster angezeigten Text. Der Text muss in Anf,hrungszeichen angegeben werden. In !hnlicher Weise bestimmt der Parameter <Titeltext> den Text, der in der Titelzeile des Meldungsfensters erscheint. Auch dieser Text muss in Anf,hrungszeichen angegeben werden. Der numerische Parameter hat eine besondere Funktion: Durch ihn kDnnen Sie sowohl eine Kombination aus bis zu drei Schaltfl!chen ausw!hlen als auch die Art des Symbols bestimmen. Unter geben Sie dazu einen speziellen Zahlenwert an, der eine bestimmte Kombination aus Schaltfl!chen und Symbol ergibt. Der Wert 20 bedeutet beispielsweise, dass Access in dem Meldungsfenster die Schaltfl!chen Ja und Nein sowie das Symbol Kritisch anzeigt.
Typ des Meldungsfensters
Um den passenden Wert f,r beliebige Dialogfenster zu berechnen, verwenden Sie die folgenden beiden Tabellen:
767
Makroprogrammierung
Schaltfl%chen eines Meldungsfensters
Wert
Schaltfl!chen
0
OK
1
OK, Abbrechen
2
Abbrechen, Wiederholen, Ignorieren
3
Ja, Nein, Abbrechen
4
Ja, Nein
5
Wiederholen, Abbrechen Tabelle 13.43
Symbole eines Meldungsfensters
Wert
Symbol
0
Kein Symbol
16
32
48
64
Tabelle 13.44 Um nun ein bestimmtes Meldungsfenster zusammenzustellen, addieren Sie einen Wert der erste Tabelle zu einem Wert der zweiten Tabelle. Da die Schaltfl!chenkombination Ja, Nein den Wert 4 und das Symbol Kritisch den Wert 16 hat, ergibt sich also der Wert 20.
768
Makroprogrammierung in der Praxis
Diesem Typwert f,gen Sie nun bei Bedarf noch einen Wert einer dritten Tabelle hinzu. Dieser bestimmt, welche Schaltfl!che des Meldungsfensters die Standardschaltfl!che ist. Die Besonderheit der Standardschaltfl!che ist, dass der Anwender diese direkt nach dem Rffnen des Meldungsfensters mit der -Taste bet!tigen kann. Die folgende Tabelle enth!lt die entsprechenden Werte:
Standardschaltfl%chen eines Meldungsfensters
Wert
Bedeutung
0
Mit der -Taste wird die erste Schaltfl!che bet!tigt
256
Mit der -Taste wird die zweite Schaltfl!che bet!tigt
512
Mit der -Taste wird die dritte Schaltfl!che bet!tigt Tabelle 13.45
Abb. 13.41 Ein Meldungsfenster mit zwei Schaltfl!chen
Das Meldungsfenster der vorhergehenden Abbildung aktiviert der folgende Funktionsaufruf: Meldung("Mchten Sie wirklich einen neuen Datensatz hinzufLgen?"; 20; "Achtung")
Kombination aus Typ und Schaltfl!chen
Damit Sie nun feststellen kDnnen, welche Schaltfl!che bet!tigt wurde, liefert die Meldung-Funktionen einen Wert gem!ß folgender Tabelle zur,ck:
Rckgabewerte der Meldung-Funktion
R,ckgabewert
Bet!tigte Schaltfl!che
1
OK
2 oder 3
Abbrechen
4
Wiederholen
5
Ignorieren 769
Makroprogrammierung
Rckgabewerte der Meldung-Funktion (Forts.)
R,ckgabewert
Bet!tigte Schaltfl!che
6
Ja
7
Nein Tabelle 13.46
Wenn Sie also die Schaltfl!che Ja bet!tigen, ist das Ergebnis der Funktion der Wert 6. Das vorgestellte Meldungsfenster soll nun dazu verwendet werden, um den Anwender beim Anlegen eines neuen Datensatzes im Adressenformular einen Hinweis zu geben. So ist sichergestellt, dass nicht aus Versehen ein neuer Datensatz hinzugef,gt wird. Das entsprechende Makro mit dem Namen Kontrolle neuer Adressendatens7tze befindet sich in der Beispieldatenbank Makrobeispiel, Meldungsfenster:
Aufbau des Makros Kontrolle neuer Adressendatens*tze
Bedingung
Aktion
Meldung("MDchten Sie wirklich einen neuen Datensatz hinzuf,gen?"; 20; "Achtung") <> 6
AbbrechenEreignis Tabelle 13.47
Abb. 13.42 Das Makro Kontrolle neuer Adressendatens(tze in der Entwurfsansicht
770
Makroprogrammierung in der Praxis
Nach dem Start des Makros wertet Access die Bedingung aus und zeigt das Meldungsfenster an. Wenn Sie nun eine andere Schaltfl!che als die Ja-Schaltfl!che bet!tigen, f,hrt Access die AbbrechenEreignis-Aktion aus und bricht den aktuellen Vorgang ab. Tragen Sie das Makro nun noch in die Vor Eingabe-Ereingiseigenschaft des Adressenformulars ein. Wenn Sie jetzt das erste Zeichen eines neuen Datensatzes eingeben, lDst Access das VorEingabe-Ereignis aus und startet das Makro.
Formulare als Dialogfenster Sie gestalten Meldungsfenster besonders flexibel, wenn Sie anstelle von vorgefertigten selbsterstellte Formulare einsetzen. Neben einfachen Meldungen kDnnen Sie so auch komplexe Dialoge aufbauen, um beispielsweise Informationen vom Anwender zu sammeln. Grundlage f,r ein Dialogfenster ist in der Regel ein Formular, das weder auf einer Tabelle noch einer Abfrage basiert. Wenn Sie ,ber die Neu-Schaltfl!che des Datenbankfensters ein neues Formular erstellen, sollten Sie daher im Dialogfenster Neues Formular keine Tabelle oder Abfrage ausw!hlen, sondern ein leeres Formular erstellen. In einigen F!llen kann es allerdings sinnvoll sein, auch einem Dialogfenster eine Datensatzgruppe zugrunde zu legen. Formulare haben eine Reihe von Eigenschaften, mit denen sie sich auf die Verwendung als Dialogfenster vorbereiten lassen. Eine wichtige Rolle spielt hierbei die Eigenschaft Gebunden. Ist diese auf Ja eingestellt, kDnnen Sie nach dem Rffnen des Formulars – sei es durch einen Mausklick oder ,ber den Men,punkt Fenster – nicht mehr zu einem anderen Formular wechseln. Sie werden als Anwender also dazu gezwungen, das Dialogfenster zu bearbeiten und es danach zu schließen. Eine weitere wichtige Einstellung stellt die PopUp-Eigenschaft zur Verf,gung. Sie bewirkt, dass Access das jeweilige Formular immer vor allen anderen momentan auf der Access-Oberfl!che geDffneten Formularen darstellt. Ein solches Formular wird daher auch als PopUp-Formular bezeichnet. Zu ber,cksichtigen ist jedoch, dass sich PopUp-Formulare untereinander gegenseitig verdecken kDnnen.
Erstellen eines Dialogfensters
GebundenEigenschaft
PopUp-Eigenschaft
Eine weitere Besonderheit von PopUp-Formularen ist außerdem, dass Sie keine GrDßen!nderungen vornehmen kDnnen. Da dies ebenfalls eine typische Eigenschaft von Dialogfenstern ist, sollten Sie die PopUp-Eigenschaft stets auf Ja einstellen. Aus kosmetischen Gr,nden dekativieren Sie anschließend noch die Bildlaufleisten des Formulars (Bildlaufleisten-Eigenschaft) sowie den Datensatzmarkierer (Datensatzmarkierer-Eigenschaft) und die Navigationsschaltfl!chen (Navigationsschaltfl7chen-Eigenschaft).
771
Makroprogrammierung
Auf dem so pr!parierten Formular erzeugen Sie nun wie gewohnt mithilfe der Toolbox Steuerelemente. In der Beispieldatenbank Makrobeispiel, Meldungsfenster finden Sie ein fertiges Dialogfenster mit dem Namen Dialog: Fertigstellungsdatum verschieben. Mithilfe dieses Dialogfensters wird in dem nun folgenden Beispiel das Fertigstellungsdatum eines Projekts verschoben.
Abb. 13.43 Das Dialogfenster Dialog: Fertigstellungsdatum verschieben
Neben einem Kombinationsfeld (Steuerelementname Verschieben), mit dem Sie die Dauer der Verschiebung ausw!hlen, enth!lt das Dialogfenster die zwei Schaltfl!chen OK und Abbrechen. Die Funktion dieser Schaltfl!chen ist durch zwei Makros realisiert, die mit deren Namen in die Ereigniseigenschaft Beim Klicken eingetragen sind. Das erste Makro mit dem Namen Dialogfenster schließen ist Ihnen bereits von der Funktion her aus dem Abschnitt ffnen und Schließen des Adressenformulars bekannt. Es ist ,ber die Beim Klicken-Ereigniseigenschaft an die Abbrechen-Schaltfl!che des Dialogfensters gebunden. Das Makro besteht lediglich aus der Aktion Schließen mit folgenden Einstellungen der Aktionsargumente:
Aktionsargumente des Makros
Schließen-Aktion: Objekttyp: Objektname:
Formular Dialog: Fertigstellungsdatum verschieben
Sobald Sie also die Schaltfl!che Abbrechen bet!tigen, schließt Access das Dialogfenster. Die Inhalte des Dialogfensters gehen damit verloren.
772
Makroprogrammierung in der Praxis
Das zweite Makro mit dem Namen Dialogfenster ausblenden hat eine besondere Funktion: Das Dialogfenster soll zwar geschlossen werden, der Inhalt des Dialogfensters – in diesem Beispiel die ausgew!hlte Datumsverschiebung – darf jedoch nicht verloren gehen, da die Angaben f,r das Projektformular benDtigt werden. Die LDsung des Problems besteht darin, dass Sie das Dialogfenster lediglich ausblenden, jedoch nicht schließen. Aus der Sicht des Anwenders besteht zwischen Ausblenden und Schließen eines Fensters kein großer Unterschied: In beiden F!llen verschwindet das Dialogfenster vom Bildschirm. Aus Sicht des Entwicklers besteht der Vorteil darin, dass Sie auf ein ausgeblendetes Formular auf die gleiche Weise zugreifen kDnnen, als wenn das Formular noch auf Ihrem Bildschirm sichtbar w!re.
Ausblenden des Dialogfensters
Das Ausblenden eines Formulars bewerkstelligen Sie ,ber die Sichtbar-Eigenschaft, die Sie mithilfe der SetzenWert-Aktion ver!ndern. Erstellen Sie ein neues Makro mit dem Namen Dialogfenster ausblenden, das Sie in der Ereigniseigenschaft Beim Klicken der OK-Schaltfl!che eintragen. Das Makro enth!lt ausschließlich die Aktion SetzenWert mit folgenden Einstellungen der Aktionsargumente:
Aktionsargumente des Makros
SetzenWert-Aktion: Feld: Ausdruck:
Formulare![Dialog: Fertigstellungsdatum verschieben].Sichtbar Falsch
Das Zusammenspiel zwischen dem Dialogfenster und dem Projektformular steuert ein Makro mit dem Namen Fertigstellungsdatum verschieben. Es hat den folgenden Aufbau:
Das Makro Fertigstellungsdatum verschieben
Bedingung
Aktion RffnenFormular
IstGeladen("Dialog: Fertigstellungsdatum verschieben")
SetzenWert
...
Schließen Tabelle 13.48
773
Makroprogrammierung
LffnenFormular-Aktion: Formularname: Ansicht: Filtername: Bedingung: Datenmodus: Fenstermodus:
Dialog: Fertigstellungsdatum verschieben Formular
Bearbeiten Dialog
SetzenWert-Aktion: Feld:
[Fertigstellungsdatum]
Ausdruck:
[Fertigstellungsdatum]+ Formulare![Dialog: Fertigstellungsdatum verschieben]![Verschieben] * 7
Schließen-Aktion: Objekttyp: Objektname:
Formular Dialog: Fertigstellungsdatum verschieben
Die erste Aktion (ffnenFormular) Dffnet das Formular Dialog: Fertigstellungsdatum verschieben. Das Aktionsargument Fenstermodus hat hierbei eine besondere Funktion: Access stellt die Eigenschaften Gebunden und PopUp des zu Dffnenden Formulars automatisch auf Ja ein. Auf die entsprechenden Einstellungen beim Entwurf des Formulars h!tten Sie also verzichten kDnnen. Wichtiger ist jedoch, dass Access nur bei dieser Einstellung die Ausf,hrung des Makros so lange unterbricht, bis der Benutzer das geDffnete Formular entweder schließt oder ausgeblendet. 774
Makroprogrammierung in der Praxis
W!hrend dieser Zeit findet nun der Dialog mit dem Anwender statt. Dieser bet!tigt am Ende des Dialogs entweder die OK- oder die Abbrechen-Schaltfl!che. Das Fenster wird also entweder geschlossen (Abbrechen-Schaltfl!che) oder ausgeblendet (OK-Schaltfl!che). Durch das Schließen bzw. Ausblenden setzt Access nun die Ausf,hrung des Makros fort. Der in der Spalte Bedingung angegebene Ausdruck pr,ft im n!chsten Schritt, ob das Dialogfenster geschlossen ist. Ist dies der Fall (der Anwender hat also die Abbrechen-Schaltfl!che bet!tigt), f,hrt Access die beiden folgenden Aktionen nicht aus. Das Makro ist damit beendet. Andernfalls setzt Access die Ausf,hrung mit der SetzenWert-Aktion fort. Die unter dem Aktionsargument Ausdruck der SetzenWert-Aktion angegebene Formel berechnet das neue Datum. Sie verweist hierbei auf das Steuerelement Verschieben des Dialogfensters. Nachdem die Aktion das neue Datum in das Projektformular eingetragen hat, schließt die Schließen-Aktion das ausgeblendete Dialogfenster.
Die SetzenWertAktion
Zum Start des Makros legen Sie nun noch im Projektformular eine entsprechende Schaltfl!che an.
Abb. 13.44 Das fertige Projektformular zusammen mit dem Dialogfenster
775
Makroprogrammierung
Flexibilit!t der Dialogfenster
Zur Handhabung von selbsterstellten Dialogfenstern gibt es neben der oben vorgestellten LDsung sicherlich noch einige weitere MDglichkeiten. Jedoch bietet die vorgestellte LDsung eine sehr große Vielseitigkeit in der Verwendung des Dialogfensters. So w!re es beispielsweise kein Problem, eine zweite Schaltfl!che im Projektformular zu erstellen, mit der Sie das Zahlungsdatum verschieben. An den Makros des Dialogfensters und dem Dialogfenster selbst brauchen Sie dazu keine 0nderungen vorzunehmen, wodurch Sie diese Objekte universell einsetzen kDnnen.
Arbeiten mit Makros in Berichten Nicht nur Formulare, sondern auch Berichte stellen eine Reihe von Ereigniseigenschaften zur Verf,gung. Einige dieser Eigenschaften wie beispielsweise die Beim ffnen- oder Beim Schließen-Ereigniseigenschaft sind Ihnen bereits von Formularen her bekannt. Im Unterschied zu Formularen spielen jedoch die Ereignisse der Bereiche (z.B. Detail- oder Seitenkopfbereich) eine wichtige Rolle. Eine dieser Ereigniseigenschaften ist die Beim Formatieren-Ereigniseigenschaft.
Abb. 13.45 Die Ereigniseigenschaft Beim Formatieren
Beim FormatierenEreigniseigenschaft
776
Bevor Access einen bestimmten Bereich auf dem Drucker ausgeben kann, m,ssen die einzelnen Steuerelemente in dem Bereich angeordnet und formatiert werden. Access beachtet hierbei beispielsweise, dass sich verschiedene Steuerelemente je nach Inhalt in der GrDße !ndern kDnnen (Vergr4ßerbar/Verkleinerbar-Eigenschaften). Ein in der Beim Formatieren-Ereigniseigenschaft eingetragenes Makro f,hrt
Makroprogrammierung in der Praxis
Access immer aus, bevor die Formatierung des Bereichs beginnt. W!hrend der Ausf,hrung des Makros haben Sie noch Gelegenheit, 0nderungen an den Datens!tzen und am Layout der Steuerelemente durchzuf,hren. Ein Beispiel f,r eine solche Ver!nderung ist das dynamische Hervorheben von bestimmten Datens!tzen. In der Beispieldatenbank Makrobeispiel, Berichte finden Sie einen Bericht mit dem Namen Projektliste, in dem alle Projekte, die einen Nettobetrag von ,ber DM 30.000 aufweisen, eingerahmt sind. Abb. 13.46 Der Bericht Projektliste in der Seitenansicht
Ein einfaches Rechteck ist f,r die Hervorhebung des Datensatzes verantwortlich, das Sie mithilfe der Toolbox in den Detailbereich des Berichts einf,gen. Das Rechteck tr!gt den Namen Rechteck. Access muss dieses Rechteck nun abh!ngig vom Inhalt des Steuerelements Nettobetrag ein- oder ausblenden. Ein Makro mit dieser Funktion hat beispielsweise den folgenden Aufbau:
Das Makro Projekt hervorheben
Bedingung
Aktion
[Nettobetrag] >= 30000
SetzenWert
[Nettobetrag] < 30000
SetzenWert Tabelle 13.49 777
Makroprogrammierung
1. SetzenWert-Aktion: Feld: Ausdruck:
[Rechteck].Sichtbar Ja
2. SetzenWert-Aktion: Feld: Ausdruck:
[Rechteck].Sichtbar Nein
Ist der Nettobetrag grDßer oder gleich 30.000, blendet Access das Rechteck ein, andernfalls wird es ausgeblendet. Das fertige Makro finden Sie in der Beispieldatenbank unter dem Namen Projekt hervorheben. Access muss dieses Makro nun immer dann starten, wenn es den Detailbereich des Berichts formatiert. Tragen Sie das Makro also in die Beim Formatieren-Ereigniseigenschaft des Detailbereichs ein.
Rechnen in Berichten Beim DruckenEreigniseigenschaft
Access stellt bei Berichtsbereichen neben der Beim Formatieren-Ereigniseigenschaft die Ereigniseigenschaft Beim Drucken zur Verf,gung. Auf den ersten Blick besteht zwischen diesen beiden Eigenschaften kein großer Unterschied. Das Beim Drucken-Ereignis lDst Access jedoch immer erst dann aus, wenn die Formatierung des Bereichs bereits abgeschlossen ist und der Druckvorgang beginnt. Ein Makro, das mit diesem Ereignis verkn,pft ist, sollte daher keine 0nderungen am Layout des Bereichs mehr vornehmen. Die Beim Drucken-Ereigniseigenschaft eignet sich sehr gut zur Durchf,hrung von Berechnungen. Da beim Eintritt des Ereignisses sowohl die Formatierung des Bereichs abgeschlossen ist als auch die in dem Bereich zu druckenden Daten feststehen, kDnnen bei der Berechnung keine Fehler unterlaufen. Ein Beispiel f,r die Anwendung der Beim Drucken-Ereigniseigenschaft ist das Ermitteln einer Seitensumme. In dem Bericht Projektliste der Beispieldatenbank Makrobeispiel, Projekte hervorheben finden Sie im Seitenfuß die Summe der einzelnen Nettobetr!ge pro Seite.
778
Makroprogrammierung in der Praxis
Abb. 13.47 Eine Seitensumme
Der Seitenfuß des Berichts enth!lt ein ungebundenes Textfeld mit dem Namen Seitensumme. Die Berechnung der Seitensumme erfolgt mithilfe des Makros Seitensumme aktualisieren. Das Makro ist an die Beim Drucken-Ereigniseigenschaft des Detailbereichs gebunden. Es wird also f,r jeden Datensatz direkt vor dem Drucken ausgef,hrt. Der Aufbau des Makros ist folgendermaßen:
Aufbau des Berichts
Das Makro Seitensumme aktualisieren
Bedingung
Aktion
Druckz!hler = 1
SetzenWert Tabelle 13.50
SetzenWert-Aktion: Feld: Ausdruck:
[Seitensumme] =[Seitensumme]+[Nettobetrag] 779
Makroprogrammierung
Pber die SetzenWert-Aktion erhDht das Makro bei jeder Ausf,hrung – also f,r jeden Datensatz – die Seitensumme um den Nettobetrag des aktuellen Datensatzes. Das Steuerelement Seitensumme hat hierbei praktisch die Funktion einer Variablen, die bei jedem Datensatz einen neuen Wert annimmt. Da sich das Steuerelement jedoch im Seitenfuß befindet, druckt Access den Inhalt nur einmal pro Seite aus.
Die Druckz(hlerEigenschaft
Eine besondere Aufgabe hat hierbei der Ausdruck Druckz7hler = 1. Es kann vorkommen, dass das Beim Drucken-Ereignis f,r einen Bereich mehr als einmal auftritt. Dies ist beispielsweise dann der Fall, wenn Access ein Teil des Bereichs noch auf der aktuellen Seite, den Rest jedoch auf der folgenden Seite druckt. Das Makro Seitensumme aktualisieren w,rde in diesem Fall also doppelt ausgef,hrt, und das Ergebnis der Seitensumme w!re falsch. Dieses Problem ließe sich verhindern, indem Sie f,r den Bereich die Eigenschaft Zusammenhalten auf Ja einstellen. Access druckt diesen Bereich dann immer komplett auf einer Seite. In einigen F!llen – beispielsweise, wenn die Bereichsl!nge eine Seite ,berschreitet – ist dies jedoch nicht mDglich. Hier m,ssen Sie also mittels Druckz7hler-Eigenschaft sicher, dass Access das Makro Seitensumme aktualisieren nur ein einziges Mal ausf,hrt. Bevor Access mit dem Drucken eines Bereichs beginnt, setzt es die Eigenschaft Druckz7hler auf den Wert 1. Tritt f,r diesen Bereich das Beim Drucken-Ereignisses erneut auf, erhDht Access den Wert der Druckz7hler-Eigenschaft um 1. Um sicherzustellen, dass die Seitensumme pro Bereich nur einmal erhDht wird, darf die Summenbildung ,ber die SetzenWert-Aktion nur dann stattfinden, wenn die Druckz7hler-Eigenschaft den Wert 1 aufweist. Auf !hnliche Weise kontrollieren Sie mithilfe der Formatierungsz7hler-Eigenschaft das Beim Formatieren-Ereignis.
Hinweis Lschen der Seitensumme
Wenn der erste Datensatz der zweiten Berichtsseite zum Ausdruck kommt, f,hrt Access wiederum das Makro Seitensumme aktualisieren aus. Access w,rde in diesem Fall den aktuellen Nettobetrag zu der Seitensumme der vorherigen Seite addieren. Die Folge davon w!re, dass im Seitenfuß nicht die Seitensumme, sondern die laufende Summe aller bisherigen Datens!tze angezeigt w,rde. Um dies zu verhindern, setzen Sie das Steuerelement Seitensumme zu Beginn jeder Seite auf den Wert 0. Diese Aufgabe ,bernimmt das Makro Seitensumme l4schen. Es enth!lt die Aktion SetzenWert mit folgenden Einstellungen der Aktionsargumente:
SetzenWert-Aktion: Feld: Ausdruck: 780
[Seitensumme] 0
Makroprogrammierung in der Praxis
Access muss das Makro nun immer dann ausf,hren, wenn der Ausdruck einer neuen Seite gestartet wird. Ideal f,r diese Aufgabe ist die Ereigniseigenschaft Beim Drucken des Seitenkopfes. Nachdem Sie das Makro Seitensumme l4schen hier eingetragen haben und in die Seitenansicht wechseln, setzt Access den Inhalt des Steuerelements Seitensumme bei jeder neuen Seite auf den Wert 0, so dass im Seitenfuß eine korrekte Seitensumme erscheint.
Abb. 13.48 Der Bericht in der Entwurfsansicht
Tastenbelegungs-Makros Tastaturbelegungs-Makros haben die Aufgabe, globale Tastenkombinationen f,r Ihre Datenbank zu definieren. Es ist beispielsweise mDglich, die Funktionstaste " mit einem bestimmten Formular zu verkn,pfen. Wenn Sie nun diese Funktionstaste bet!tigen, Dffnet Access Ihr Formular. Obwohl es sich bei Tastaturbelegungs-Makros im Prinzip um normale Makros handelt, haben sie einen anderen Aufbau und eine andere Funktion. Dies h!ngt damit zusammen, dass Access ein Tastaturbelegungs-Makro anders als normale Makros auswertet.
TastenbelegungsMakros
781
Makroprogrammierung
Die Spalte Makroname hat im Zusammenhang mit Tastaturbelegungs-Makros eine besondere Bedeutung: Hier geben Sie Tastencodes an, die bestimmte Tastenkombinationen repr!sentieren. Der Tastencode {F2} repr!sentiert beispielsweise die Funktionstaste ". Den allgemeinen Aufbau der Tastencodes zeigt die folgende Tabelle:
Tastencodes
Syntax
Funktion
^
S. kann ein beliebiger Buchstabe, eine beliebige Ziffer oder einer der folgenden Codes sein (z.B. ^w, ^{F1}).
{F}
!,",... F,r muss eine Zahl zwischen 1 und 12 angegeben werden (z.B. {F3}).
{INSERT}
*
{DELETE},{DEL}
_
+
H. Dieser Code darf nur in Verbindung mit den Codes {F}, {INSERT}, {DELETE} und {DEL} verwendet werden (z.B. +{F1}). Tabelle 13.51
In der folgenden Tabelle finden Sie einige Beispiele f,r die Verwendung der Tastencodes:
Beispiele fr Tastencodes
Tastencode
Tastenkombination
{F1}
!
^{F1}
S!
+{F1}
H!
^D
Sd
+D
Nicht zul!ssig!
+{DEL}
H_ Tabelle 13.52
782
Makroprogrammierung in der Praxis
In der Spalte Aktion w!hlen Sie nun neben jedem Tastencode eine oder mehrere Aktionen aus, die Access beim Bet!tigen des Tastencodes ausf,hrt. Die folgende Tabelle zeigt ein entsprechendes Makro. Beim Bet!tigen der Tastenkombination Sp oder Sa Dffnet Access das Projekt- bzw. Adressen-Formular in Kombination mit einem Signalton:
Beispiel fr ein Tastenbelegungs-Makro
Spalte Makroname
Spalte Aktion
^A
Rffnen Formular Signalton
^P
Rffnen Formular Signalton Tabelle 13.53
Mit dem Erstellen des Makros werden die Tastenabk,rzungen jedoch noch nicht automatisch aktiv. Hierzu speichern Sie das Tastenbelegungs-Makro unter dem Namen Tastaturbelegung. Anschließend sind die Tastenabk,rzungen aktiv
Tipp
783
Spezifikationen von Access XP
Anhang A
Spezifikationen von Access XP
Datenbanken Max. Gr-ße der MDB-Datei 2 GByte (zuz3glich verkn3pfter Tabellen) Max. Anzahl Objekte in einer Datenbank 32.768 Max. Anzahl Module (einschl. Formular und Berichte, wenn die HasModule-Eigenschaft auf True gesetzt ist) 1.000 Max. Anzahl Zeichen in Objektnamen 64 Max. Anzahl Zeichen in Kennw-rtern 14 Max. Anzahl Zeichen in Gruppennamen 20 Max. Anzahl gleichzeitiger Benutzer 255
Projekte Max. Anzahl von Objekten in einem Access-Projekt 32.768 Max. Anzahl Module (einschl. Formular und Berichte, wenn die Enth(lt Modul-Eigenschaft auf Ja gesetzt ist) 1.000
Tabellen Max. Anzahl Zeichen im Tabellennamen 64 Max. Anzahl Zeichen in Feldnamen 64 Max. Anzahl Datenfelder 255 786
Spezifikationen von Access XP
Max. Anzahl der ge-ffneten Tabellen 2.048. Die effektive Anzahl kann wegen interner Tabellen, die Access -ffnet, geringf3gig kleiner sein. Max. Tabellengr-ße 1 GByte Max. Anzahl Zeichen in Textfeldern 255 Max. Anzahl Zeichen in Memofeldern 65.535, wenn die Daten 3ber die Benutzeroberfl(che eingegeben werden; 1 GByte, wenn die Daten programmgesteuert eingegeben werden. Max. Gr-ße eines OLE-Feldes 1 GByte Max. Anzahl Indizes 32 Max. Anzahl Felder in zusammengesetzten Indizes 10 Max. Anzahl Zeichen in einer G3ltigkeitsmeldung 255 Max. Anzahl Zeichen in einer G3ltigkeitsregel 2.048 Max. Anzahl Zeichen in der Tabellenbeschreibung 255 Max. Anzahl Zeichen in einer Feldbeschreibung 255 Max. Anzahl Zeichen in einem Datensatz 2.000 Max. Anzahl Zeichen in einer Feldeigenschaft 255
Abfragen Max. Anzahl der Durchsetzungsbeziehungen 32 pro Tabelle abz3glich der Anzahl von Indizes, die f3r Felder oder Feldkombinationen bestehen und nicht in Beziehungen verwickelt sind. Max. Anzahl Tabellen 32 Max. Anzahl Felder in einer Datensatzgruppe 255 Max. Gr-ße einer Datensatzgruppe 1 GByte 787
Spezifikationen von Access XP
Sortierbeschr(nkung 255 Zeichen in einem oder mehreren Feldern Schachtelungstiefe bei geschachtelten Abfragen 50 Max. Anzahl Zeichen in einer Zelle des Entwurfsrasters 1.024 Anzahl der Zeichen f3r einen Parameter in einer Parameterabfrage 255 Max. Anzahl der ANDs in einer WHERE- oder HAVING-Klausel 40 Max. Anzahl der Zeichen in einer SQL-Anweisung ca. 64.000
Formulare und Berichte Max. Anzahl Zeichen in einem Bezeichnungsfeld 2.048 Max. Anzahl Zeichen in einem Textfeld 65.535 Max. Breite 55,87 cm (22 Zoll) Max. H-he 55,87 cm (22 Zoll) Max. H-he aller Bereiche in der Entwurfsansicht (ohne Bereichsk-pfe) 508 cm (200 Zoll) Max. Schachtelungstiefe 3 (Formular – Unterformular – Unterformular) Max. Anzahl Felder, nach denen sortiert oder gruppiert wird 10 Anzahl der Kopf- und Fußbereiche in einem Bericht 1 Berichtskopf/-fuß 1 Seitenkopf/-fuß 10 Gruppenk-pfe/-f3ße Max. Anzahl gedruckter Seiten 65.536 Anzahl der Steuerelemente und Bereiche, die w(hrend der Lebensdauer des Formulars bzw. Berichts insgesamt hinzugef3gt werden k-nnen 754 788
Spezifikationen von Access XP
Makros Max. Anzahl Aktionen 999 Max. Anzahl Zeichen in einer Bedingung 255 Max. Anzahl Zeichen in einem Kommentar 255 Max. Anzahl Zeichen in einem Aktionsargument 255
789
Neuerungen in Access XP
Produktivit%t und Effizienz Datenzugriff und Analyse Programmierung und Entwicklung
792 792 793
Anhang B
Neuerungen in Access XP
Produktivitt und Effizienz Spracheingabe Access XP ist vorbereitet sowohl f,r Spracheingabe, als auch f,r Kommandos und Sprachsteuerung. Allerdings ist zurzeit der Abfassung dieses Buches diese Option nur verf,gbar f,r die Amerikanische, englische – und in einer einfachen Version – f,r die Chinesische und japanische Versionen. Im Entwurfsmodus f,r Tabellen, Abfragen oder Diagrammen steht diese Option ebenfalls nicht zur Verf,gung. Data Access Page Designer Der Data Access Page HTML Designer stellt dem Anwender zahlreiche neue MDglichkeit zur Gestaltung von HTML-Seiten zur Verf,gung. Dazu z!hlen z.B.: erweiterte Optionen zur Nutzung von Microsoft Jet und Microsoft SQL Server Datenbanken besseres Hyperlink-Handling die AutoSum Funktion erleichtert jetzt die Summenbildung u.a. Verbessertes Access 2000 Format Access XP nutzt standardm!ßig das Access 2000 Format f,r neue Datenbanken. Access 2000 und Access XP kDnnen somit an der gleichen Datenbank arbeiten. Optionales Access XP Format Access XP bringt aber ein verbessertes Dateiformat mit, das alternativ eingesetzt werden kann. Das macht allerdings nur Sinn, wenn keine anderen Access-Versionen mehr im Einsatz sind, die auf die Datenbank zugreifen m,ssen. Mehrstufiges R1ckg7ngigmachen Was andere Office-Applikationen schon lange kDnnen – Arbeitsschritte und Befehle ,ber mehrere Stufen zur,ckzunehmen oder wiederherzustellen – kann mit der Version XP auch Access. Rechtschreibpr1fung Access XP bringt ein vereinfachtes Arbeiten mit Unterformularen mit. Diese kDnnen jetzt w!hrend der Bearbeitung in einem eigenen Entwurfsfenster dargestellt werden. Nordwind Beispieldatenbank mit SQL Server 2000 Die Nordwind-Datenbank mit SQL Server 2000 zeigt beispielhaft auf, wie Anwender erweiterte F!higkeiten mit Datenbankanwendungen nutzen kDnnen, wenn eine SQL Server 2000-Verkn,pfung besteht. Fehlerbehandlung beim Konvertieren Wird beim Konvertieren von einer Access 95, Access 97 oder Access 2000 Datenbank in das Access XP Datenformat ein Fehler festgestellt, so wird dieser protokolliert und kann anschließend eingesehen werden. Dies erleichtert das Beseitigen von Problemen bei konvertierten Datenbanken.
Datenzugriff und Analyse Access PivotTabellen und PivotCharts Jede Accesss-Tabelle oder Abfrage sowie ADPTabelle kann in einer PivotTabelle oder in einem PivotChart genutzt werden. Diese PivotTabellen und -Charts kDnnen als Access-Seiten angezeigt und ,ber Browser bearbeitet werden. 792
Programmierung und Entwicklung
XML Ausgabe Daten aus Access kDnnen im XML/XSL-Dokumentformat ausgegeben werden. Ein Bericht, eine Tabelle, ein Formular oder eine Abfrage lassen sich in ein XML-Dokument formatieren, das eine XSL-Datei enth!lt. Voraussetzung ist ein Internet Brwoser, der HTML 4.0 unterst,tzt. Berichte und Formulare als Web-Seiten speichern Berichte und Formulare lassen sich als Web-Seiten speichern. SQL Server Access XP enth!lt den neuen “SQL Server 2000 Desktop Engine“. Außerdem wurde f,r den SQL Server 7.0 und SQL Server 2000 die Verkn,pfung von Tabellen und das Kopieren von Datenbanken verbessert. Neu ist die MDglichkeit, auch ohne SQL-Kenntnisse ,ber einen Prozedur-Assistenten (Stored Procedure Designer) Abfragen zu generieren.
Programmierung und Entwicklung XML Support F,r Access (und Excel) wurde ein umfangreicher XML Support hinzugef,gt. XML-Daten kDnnen beim Import und Export von einer SQL Server-Datenbank erzeugt werden. XSL Support F,r die Darstellung von XML-Dokumenten werden Formatierungsangaben benDtigt. Diese werden in so genannten Stylesheets abgelegt. F,r XML heißt das Stylesheetformat XSL. Access und Excel XP unterst,tzten dieses Format. VBA 6.3 Alle Applikationen des Office XP-Paketes enthalten jetzt zur einheitlichen Programmierung von Anwendungen Visual Basic for Applications (VBA) 6.3.
793
Index
! 1:n-Beziehung
143, 216
A Abfrage Abfragefunktionen 283 Abfragekriterien definieren 269 Adressen eines Postleitzahlengebiets oder Ortes 301 Aktionsabfragen 303 Alias-Eigenschaft 259 Anfgeabfrage 314 Archivierte Projekte lschen 320 ausfhren 115-115, 279 AusfhrungsberechtigungenEigenschaft 588 AutoVerknpfung deaktivieren 261 Begriff 106 berechnete Felder 279 Beziehungen festlegen 261 Daten an Word weitergeben 636 Daten gruppieren 285 Datenblatt bearbeiten 116 Datenblatt drucken 129 Datendefinition 323 Datens#tze gruppieren 282 Datens#tze selektieren 112 definieren 108 Definition drucken 325 dokumentieren 325 drucken 129 Duplikate unterbinden 281 Dynaset 110, 268, 298 Entwurfsraster 109 Feldeigenschaften 263 Feldliste 108 Feldlisteneigenschaften festlegen 259 Forderungen ermitteln 123 Forderungen mit Adressen 127 Geplante Zahlungseing#nge124 importieren 324, 620 Kreuzprodukt 261 Kreuztabellenabfragen 290 Lschabfrage 318 Layout des Datenblatts 117
manuell entwerfen 255 Nachschlagefelder 264 Oder-Verknpfung der Zeilen 277 Parameterabfragen 300 Pass-Through 323 Prinzip 109 Projekte archivieren 306 Projekte nachtr#glich archivieren 317 Projekte und Adressen 125 Quelle-Eigenschaft 259 Snapshot 269 sortieren 120, 278 Spalten anordnen 118, 266 Spalten ausblenden 119, 265 Spalten hinzufgen 117, 262 Spalten lschen 117, 265 Spalten selektieren 110 speichern 110, 115-115, 279 SQL-Ansicht 322 Sternchen 119 Tabellen mischen 308 Tabellen und Abfragen hinzufgen 258 Tabellenerstellungsabfrage 305 Tabellennamen anzeigen 259 Und-Verknpfung der Spalten 277 Unionabfragen 323 Vergleiche 270 verknpfte Tabellen 125 Zeilen selektieren 112 Zugriffsrechte 588 Abfrageassistent Datenarchivierung 254 Duplikatsuche 254 Inkonsistenzsuche 254 Kreuztabellenabfrage 254 Pivottabellen-Assistent 254 Abfragedatenblatt 110 Abfragedefinition, drucken 325 Abfrageeigenschaft alle Felder ausgeben 268 Ausfhrungsberechtigung 268 Beschreibung 268 Datens#tze sperren 268 Datensatzgruppentyp 268 eindeutige Datens#tze 268, 281, 324 Filter 269 keine Duplikate 268, 281 Max Datens#tze 269 ODBC-Wartezeit 269
sortiert nach 269 Spitzenwerte 268 Abfrageentwurfsfenster 107 Abfrageergebnis 110 Abfragefenster 256 Symbolleiste 257 Abfragefunktionen 283 Abfragekriterien Bezge auf andere Spalten 275 definieren 458 Exakte 3bereinstimmung 112 kombinieren 276 Oder-Verknpfung 124 Platzhalter verwenden 113, 271 Und-Verknpfung 122 Wertebereiche 274 Abfragetypen 252 Abs-Funktion 695-696 Absolutwert einer Zahl 695 Access ADO 674 ADP-Dateien 671 Client/Server 670 Datenbankprojekt 671 Datenlinkeigenschaften 674 Datenquellen 674 Datenverbraucher 674 im Netzwerk 658 konfigurieren 522 MSDE 670, 672 ODBC 674 OLE DB 674 OLE DB Provider 674 Optionen einstellen 522 Projekte mit dem SQL Server 670 SQL Server 669 starten 3 ber eine Verknpfung starten 508 Zugriff sichern 566 ActiveX, Web-Browser 414 ActiveX-Objekte 646 ActiveX-Steuerelemente 411 Add-Ins, Tabellenverkn0pfungsManager 617 Administrator 581 Kennwort #ndern 580 Kennwort lschen 582 ADO 674 ADP-Dateien 671 Adressen #ndern 56, 100 einfgen 100
795
Index
eingeben 53 lschen 60, 100 sortieren 66 suchen 63 Adressen und Projekte verkn0pfen 94 Adressentabelle anlegen 38-39 Daten eingeben 48 Datenfelder 41 Sekund#rschlssel 46 tabellarischer Bericht 151 Aktionen 687 Aktionen des Befehlsschaltfl4chenassistenten 386 Aktionsabfrage 303 best#tigen 526 starten 304 testen 303 Aktionsargumente 684 Aktivierreihenfolge #ndern 354 in Registern 404 Aktualisierungsabfragen 310 Fehlerquellen 311 mehrere Felder aktualisieren 313 Oder-Verknpfung von Kriterien 314 Und-Verknpfung von Kriterien 314 Aktueller Datensatz 54 Alias-Eigenschaft 259 alle Datens4tze anzeigen 665 Anf0geabfrage 314 Mgliche Fehlerquellen 317 Anf0gen-zulassen-Eigenschaft 424 Anmeldeverfahren 581 aktivieren 580 deaktivieren 582 Ansicht >Unterformulardatenblatt 395 AnwendenFilter-Aktion 755 Anzeige aktualisieren 665, 669 Anzeigen-Eigenschaft 420 AnzeigenAlleDatens4tze-Aktion 757 Anzeigetext 362, 390, 399 Arbeitsgruppen-Code eingeben 578 ArbeitsgruppenInformationsdatei 577 festlegen 579 Arbeitsgruppendatei 564 Archivierungsassistent 308 Arithmetische Operatoren 694
796
Articelcode, Formulare synchronisieren 148 Artikelcode Aufgabenverwaltung 216 Dialog 302 Etiketten einzeln bedrucken439 Kalender-Steuerelement 414 Kontaktdatenbank 377 Assistent Datensicherheits 571 fr Datenzugriffsseiten 484 zur Leistungsanalyse 609 Audiofeedback 524 Ausdr0cke 692 Berechnungen 275 bilden 270 Datumswerte 273 Funktionen 275 Konstanten 275 Mengen 271 Nullwerte 271 Textliterale 273 Vergleichsargumente 273 Vergleichsoperatoren 270 Ausdrucks-Editor 727 Ausf0hren eines Makros 724 Ausf0hrenMen0befehl-Aktion 761 Ausf0hrungsberechtigungenEigenschaft 588 Auswahlabfrageassistent 253 Auswahlbasierter Filter 67 Ausw4hlenObjekt-Aktion 747 AutoAnordnen 22 AutoBericht 80 AutoBerichte 430 Autoexec-Makro 680 AutoFormat-Assistent 358 AutoFormate anpassen 359 lschen 359 selbst definieren 359 AutoFormular-Assistent 130 AutoFormulare 332 AutoKorrektur 555 deaktivieren 556 Automations-Controller 649 Automations-Server 649 Automatisch-erg4nzenEigenschaft 377 Automatisierung 649 AutoWert-Felder 41, 53 Neue-Werte-Eigenschaft 194
B Back-End-Datenbank 608 Batch-Betrieb 472 Bearbeiten Gltigkeitsregeln testen 192 Hyperlink 247 Bearbeitungen-zulassenEigenschaft 424 Bedingte Ausf0hrung von Aktionen 731 Bedingte Formatierung 368, 455 Befehlsschaltfl4chen 385, 439 Assistent 385 Hyperlink 389 in Register kopieren 404 manuell erstellen 388 Bei Eingabetaste-Eigenschaft 389 Bei FokuserhaltEreigniseigenschaft 753 Bei FokusverlustEreigniseigenschaft 753 Bei Taste ESC-Eigenschaft 389 Beim AnzeigenEreigniseigenschaft 745 Beim Drucken-Eigenschaft 778 Beim Formatieren-Eigenschaft 776 Beim Hingehen-Eigenschaft 753 Beim HingehenEreigniseigenschaft 753 Beim Klicken-Eigenschaft 389 Beim Verlassen-Eigenschaft 752 Beispiel Projekte eines Jahres 457 Projektverwaltung 34 Benutzer anlegen 584 Berechtigung erteilen 587 dokumentieren 589 Gruppenzugehrigkeit #ndern 585 Kennwort #ndern 585 Kennwort lschen 585 lschen 585 Namenskonventionen 584 verwalten 584 Zugriffsberechtigungen 585 BenutzerDatensicherheitsassistenten 571 Benutzergruppen anlegen 582 dokumentieren 589 lschen 584
Namenskonventionen 582 verwalten 582 Berechnungen 275 Berechtigung 587 Bereich-wiederholenEigenschaft 443 Bereichseigenschaften 419 Bericht 19 Batch-Betrieb 472 Berichtsassistent 460 Beschriftung 445 Daten an Word weitergeben 636 Daten gruppieren 450 Daten markieren 455 Daten sortieren 447 Datumsgruppierung 446 drucken 156 entwerfen 428 Entwurfsansicht 433 Etikettengrßen definieren 164 aus Formular entwerfen 430 Gruppe zusammenhalten 446 Gruppierung #ndern 453 Haupt- und Unterbericht verknpfen 472 Hauptberichte 472 importieren 620 Layout-Vorschau 432 mehrere nacheinander drucken 472 mehrspaltig 467-468 als Nachricht senden 159 Projekte eines Jahres 457 schneller Laserdruck 447 Seite einrichten 158 Seitenansicht 431 Seitenr#nder 158 sortieren 152 Sortierreihenfolge entwerfen 447 Sortierung #ndern 449 speichern 433 Standard-Druckbereiche 524 Steuerelementeigenschaften 435 Steuerelementtypen 439 Unterberichte 472 verknpfen 473 Berichtsassistent 430, 460 Adreßetiketten 160
Index
Eigenschaften 511 entschlsseln 565-566 durch ein Kennwort schtzen 567 Komprimieren 560 konvertieren 558 Leistung analysieren 609 Namenskonventionen 35 Objekte 32 Objekte importieren 620 optimieren 609 Optionen 523 reparieren 563 replizieren 594 schtzen 566 schließen 36 Seiten 476 sichern 557 Standard-Datenbankordner 524 suchen nach 513 synchronisieren 595, 601 transportieren 565 Upsizing-Assistent 672 verschlsseln 565-565 wiederherstellen 563 Datenbankfenster 20, 506, 535 ausblenden 520 Objekte ein- und ausblenden 508 Symbole anordnen 22 Datenbankkennwort, vergeben 566 Datenbankobjekt 32 Eigenschaften 511 Standard-Aktion 511 Verknpfung erstellen 507 Datenbearbeitung, in Formularen 129 Datenbeschriftungen in Diagrammen anpassen 410 Datenblatt ffnen 49 Anzeige aktualisieren 669 aufsteigend sortieren 66 Daten aktualisieren 669 nach Datenfeldern sortieren 66 drucken 79 Filter 67 formatieren 71 Hyperlink anlegen 241 Layout anpassen 71 Layout speichern 78 Optionen fr Hyperlinks 248 Paletten aus der Symbolleiste lsen 72
798
Raster ver#ndern 78 Rastereinstellungen 78 Schrift ausw#hlen 73 Spalte ausblenden 76 Spalte einfgen 81 Spalte fixieren 77 Spalte lschen 81 Spalte verschieben 76 Spaltenbreite 74-75 Tastenbelegung 529 Zeilenhhe 74-74 Datenblattansicht, Symbolleiste 51 Datendefinitions-Abfrage 323 Datenfeld, Begriff 32 Datenherkunft-Eigenschaft 422, 444 Datenlinkeigenschaften 674 Datenmodell 38, 205 Datenquellen 623, 674 Datensatz :nderungen rckg#ngig machen 59 bearbeiten 54 Begriff 32 einfgen 57 lschen 61 speichern 55 sperren 662 Datensatzgruppentyp 268 Datensatzherkunft-Eigenschaft 373 Datensatzmarkierer 17, 54 Datensatzmarkierer-Eigenschaft424 Datensicherheitsassistent 571 Datens4tze Filter/Sortierung entfernen 424 sperren 268 Datentypen 692 konvertieren 310 Datenverbraucher 674 Datenzugriffsseite 476 Design 487 entwerfen 484 Erweiterungseigenschaften 501 Feldliste 497 Lauftext 492 Office-Steuerelemente 484 PivotTable-Steuerelement 482 Web-Steuerelemente 484 DatTeil-Funktion 710 Datumsausdr0cke 705 Datumsfeld erstellen 365 Datumsgruppierung 446 Datumswerte 273 eingeben 55 dBASE-Tabelle
importieren 619 schreiben 634 verknpfen 617 verknpfen und importieren 621 DDE 649 Design, einer Datenzugriffsseite 487 Detailbereich 417, 441 Detailtabelle 99 Dezimalstellen 190 Diagramm 404 als Objekt einfgen 651 bearbeiten 410 Datenbeschriftungen anpassen 410 Diagramm-Assistent 332, 343, 404 Dialog ffnen 514 drucken 156 Druckereinrichtung 157 Spaltenbreite 75 Dialogfenster 771 Distinct-Pr4dikat 281 DistinctRow-Pr4dikat 281, 324 Dokumentation Benutzer 589 Benutzergruppen 589 Datenbank 592 Sicherheitssystem 589 Zugriffsrechte 589 Druckbereiche, Standard 524 Drucken, Batch-Betrieb 472 Drucker einrichten 157 Druckereigenschaften 157 Druckereinrichtung Spaltenanzahl 469 Zeilenabstand 469 Druckerschriftarten 447 DruckFormat-Eigenschaft 447 Druckz4hler-Eigenschaft 780 Duplikate ausblendenEigenschaft 435, 436 Duplikatsuche 254 Dynamischer Datenaustausch 649 Dynaset 110, 258, 268, 298
E E-Mail-Adressen Editieren von Makros Editor zum Erstellen von Ausdr0cken
242 690 727
Index
Eigenschaft abfragen als Datensatzherkunft 373 anzeigen 420 automatisch erg#nzen 377 bei Eingabetaste 389 bei Taste ESC 389 beim Klicken 389 Bereich wiederholen 443 Beschriftung 361, 388, 423 Bild 388 Bild nebeneinander 425 Bildausrichtung 425 Bildgrßenmodus 425 Bildlaufleisten 424 Breite 446 Datenherkunft 422, 444 Datensatzherkunft 373 Datensatzmarkierer 424 Drucklayout 447 Duplikate ausblenden 435 Filter 176 Gltigkeitsmeldung 363 Gltigkeitsregel 363 Gebundene Spalte 376 Grße eines Bezeichnungsfeldes 362 Grßenanpassung 396 Hhe 419, 443 Herkunftstyp 373 Hilfedatei 353 Hilfekontext 353 laufende Summe 437 Listenbreite 376 Makro wiederholen 389 Muster als Standard verwenden 355 Navigationsschaltfl#chen 424 Neue Seite 420, 443 Neue Spalte oder Zeile 420, 443, 470 Nur Listeneintr#ge 377 Palettenherkunft 447 Raster X 446 Raster Y 446 Seitenfuß 446 Seitenkopf 446 sichtbar 420 sortiert nach 176 Spaltenberschriften 376 Spaltenanzahl 375 Spaltenbreiten 376 Standardansicht 423 Standardwert 363, 385
Statuszeilentext 353 Steuerelement anzeigen 92 Steuerelementinhalt 364, 373 SteuerelementTip Text 353 Transparent 389 vergrßerbar 438, 443 vergrßerbar und verkleinerbar 421 verkleinerbar 438, 443 Zeilenanzahl 376 zusammenhalten 420, 443 Eigenschaften eines Druckers 157 Vererbung 176, 340 von Datenbanken 511 von Datenbankobjekten 511 von Steuerelementen 717 Eigenschaftenfenster 336 Eigent0mer #ndern 588 Zugriffsrechte 588 Einbetten von Objekten 650 Eindeutiger Schl0ssel 42-42 Einf0ge- und Dnderungsmodus 58 Einf0gemarke 530 Einf0gen Datensatz 57 Hyperlink 241 Eingabe AutoKorrektur 555 Zoom-Fenster 280, 291, 363-364 Eingabe-erforderlich-Eigenschaft193 Eingabeformat 190 Eingabeformat-Eigenschaft 190 Eingabepr0fung 100 Eingebettete Objekte 647 Einzelsatzdarstellung 134 Endlosformular 418, 423 Entwurfs-Symbol 50 Entwurfsansicht 40, 333, 433 Entwurfsraster 257 Ereignis-Abfolgen 741 Ereigniseigenschaften 739 Ereignisse 739 Erweiterungseigenschaften 501 Erzwingen der Dateneingabe 753 Etiketten-Assistent 430 Etikettenassistent aufrufen 160 Etikettengrße ausw#hlen 160 Schrift ausw#hlen 161 Etikettengr@ßen definieren 164 Excel 637, 647 Excel importieren 626
Excel-Format schreiben Excel-Kalkulationstabellen, importieren Exp-Funktion Exponential-Funktion Export, Formate Exportieren von Tabellen
634 619 695 696 634 634
F Falsch 697 Favoriten suchen 516 Fehlersuche in Makros 737 Feld-Generator 183 Felddatentyp 81, 181 #ndern 202 AutoWert 41 konvertieren 616 Feldeigenschaft 185 Beschriftung 191 Dezimalstellen 190 Eingabe erforderlich 193 Eingabeformat 190 Feldgrße 186 Format 188 Gltigkeitsmeldung 193 Gltigkeitsregel 192 indiziert 194 leere Zeichenfolge 194 neue Werte 194 Standardwert 191 Felder definieren 181 einfgen 202 lschen 202 umbenennen 202 Feldgr@ße bei Textfeldern 186 bei Zahlenfeldern 186 Feldgr@ße-Eigenschaft 186 Feldliste 339 einer Datenzugriffsseite 497 Feldlisteneigenschaften festlegen 259 Feldname 181 Feldtrennzeichen 631 Festplattenfehler 563 Fffnen-Dialog 514 Filter 67 auswahlbasierter 67 deaktivieren 177 entfernen 68
799
Index
entwerfen 69 formularbasierte 68 in Abfragen 269 in Tabellen 175 spezielle 69 Vererbung von Filterkriterien 70 Filter-aktiv-Eigenschaft 445 Filter-Eigenschaft 422, 445 Filter-zulassen-Eigenschaft 423 Filtern eines Formulars mit Makros 721 von Datens#tzen 755 Fix-Funktion 695-696 Forderungen ermitteln 123 Forderungen mit Adressen 127 Format 188 Format-Eigenschaft 188 Sichtbar 443 Formatierungsz4hlerEigenschaft 780 Formular 129 abfragebasiert 133 ActiveX-Steuerelemente 411 Aktivierreihenfolge #ndern 354 alle Datens#tze anzeigen 665 anfgen zulassen 424 anwenden 132 Anzeige aktualisieren 665, 669 AutoFormate 358 automatisch formatieren 358 Bearbeitungen zulassen 424 Befehlsschaltfl#chen 385 Bereiche und Eigenschaften 416 Bezeichnungsfelder 361 Bilder 399 Daten aktualisieren 669 fr Daten aus mehreren Tabellen 142 Daten eingeben 424 Daten an Word weitergeben 636 Datenblattansicht 332 Datens#tze bearbeiten 133 Datum einfgen 364 Diagrammassistent 404 Diagramme 404 Eigenschaftenfenster 336-336 entwerfen 331 Entwurfsansicht 333 Erzwingen der Dateneingabe 753 Feldliste 339 Filter 422 Filter zulassen 423
800
Formate bertragen 357 Formularansicht 332 gebundene Objektfelder 396 Haupt- und Unterformular 145 Haupt- und Unterformular verknpfen 394 Hintergrundbild 424 importieren 620 in Berichte umwandeln 430 Kombinationsfelder 371-372 Kontrolle der Dateneingabe 751 Kontrollk#stchen 381 Lschen zulassen 424 Lineal 349 Linien 349, 400 Listenfelder 371-372 markieren 421 mehrspaltig 467 Navigationsschaltfl#chen 133 optimieren 425 Optionsfelder 381, 384 Optionsgruppen 383 fr die Projektetabelle 130 Raster 349 Rechtecke 400 Register 401 Reihenfolge #ndern 354 schließen 343 Seitenansicht 333 Seitenwechsel 400 Seitenzahl einfgen 365 sortieren 422 speichern 343 Standard-Druckbereiche 524 Statuszeile 132 Steuerelemente 344 Symbolleiste 334 synchronisieren 146, 745 Tastenbelegung 529 Textfelder 363 Toolbox 341 Tortendiagramm 405 3bersicht 520 umbenennen 344 Umschaltfl#chen 381 ungebundene Objektfelder 398 Unterformulare und -berichte 390 verknpfen 146 Vorlage 360 Web-Browser 414 Zeit einfgen 364 zugelassene Ansichten 424
zugrundeliegende Tabelle oder Abfrage erneut ffnen 408 Zusatzsteuerelemente 411 Formular-Assistent 332 AutoFormular 130 Datenblatt 137 einspaltig 134-134 tabellarische Darstellung 135 Formularbasierte Filter 68-69 Formularbereiche einblenden 416 Formulardaten aktualisieren 408 Formulareigenschaften 421 Formularfuß 419 Formularkopf 417 Formularvorlagen definieren 360 FoxPro-Tabelle importieren 619 verknpfen und importieren 622 FTP 242 Funktionen 275
G Gebunden-Eigenschaft 771 Gebundene Spalte-Eigenschaft 376 Gebundenes Objektfeld 396 bearbeiten 397 erstellen 396 GeheZuSteuerelement-Aktion 723 Gesicherter Hyperlink 248 G0ltigkeitsmeldung 193 G0ltigkeitsregel 192-193 berprfen 174 testen 175, 192 Gr@ße eines Registers 4ndern 404 Gr@ßenanpassung-Eigenschaft 396 Großbst-Funktion 703 Gruppe anlegen 582 Benutzer zuordnen 585 Berechtigung erteilen 587 lschen 584 Zugriffsberechtigungen 585 Zugriffsrechte 584 Gruppe-zusammenhaltenEigenschaft 446 Gruppenfuß 441 Gruppenkopf 441 Gruppenmakros 736 Gruppennamen, Konventionen 582
Index
Gruppierung #ndern aufheben bearbeiten GUID-Felder
453 352 352 183
H Hardcopy 653 Haupt- und Unterbericht, verkn0pfen 472 Haupt- und Unterformular 145 verknpfen 394 Hauptbericht 472 verwenden 472 Hauptformular 391 verwenden 393 Herkunftstyp-Eigenschaft 373 H@he-Eigenschaft 419, 443 Hilfedatei 353 Hilfekontext 353 Hilfetexte, benutzerdefinierte 353 Hintergrundart-Eigenschaft 399 Hintergrundbild f0r ein Formular 424 Hochformat 157 Hyperlink 204 Anzeigetext 362, 390, 399 bearbeiten 247 in einer Befehlsschaltfl#che 389 Begriff 240 in einem Bezeichnungsfeld 362 in einem BildSteuerelement 399 einfgen 241 gesicherter 248 auf ein Objekt einer Datenbank einfgen 245 Optionen 248 in einer Tabelle speichern 240 in einem Textfeld 368 Hyperlink-Basis 242 Hyperlink-Felder 183 anlegen 241
I Importieren Abfragen Dateien
324 618
In-Place-Bearbeitung 648 In-Place-Editing 648-648 Indexsuche 65 Indikatorspalte 17, 54, 181, 424 Indizes definieren 198 indiziert 194 Inhalt einer Zelle l@schen 61 Inklusionsverkn0pfung 213 Inkonsistenzsuche 254 Int-Funktion 695-696 International 557 Internet Hyperlink-Felder 183 Hyperlinks in einer Tabelle speichern 240 Internet Explorer 479 Internet-Adresse 242 IstGeladen-Funktion 747 IstNull-Funktion 732
J Ja/Nein-Werte, in Formularen anzeigen Jahr 2000 Jahrhundertwechsel Jahrtausendwechsel
381 190 190 190
K Kalender 411 Kalender-Steuerelement 411 an ein Datenfeld binden 412 Kalkulationstabellen importieren 619-619, 624, 626 Keine Sperrungen 662 Kennwort #ndern 580, 585 Konventionen 567, 581 lschen 585 Kombinationsfeld 371-372 erstellen 372 KombinationsfelderNullwerte 377 Konfiguration von Access 522 Konstanten 275 Kontrolle der Dateneingabe 751 Kontrollk4stchen 381 erstellen 381 Kreuzprodukt 261
Kreuztabelle, Spalten0berschriften fixieren 297 Kreuztabellenabfrage 254, 290 aus Auswahlabfragen entwickeln 290 Kreuztabellenabfrage-Assistent 295
L Laufende Summe-Eigenschaft 437 Lauftext 492 Layout-Elemente-Eigenschaft 469 Layout-Vorschau 432 Leere-Zeichenfolge-Eigenschaft 194 LeistungsanalyseAssistent 426, 609 LGl4tten-Funktion 703-703 Lineale 349 Linien 400 Links-Funktion 703 Listenbreite-Eigenschaft 376 Listenfeld 371-372 erstellen 372 L4nge-Funktion 703 Log-Funktion 695-696 Logische Ausdr0cke 697 Lotus importieren 626 Lotus-Format schreiben 634 L@schabfrage 318 L@schen r0ckg4ngig machen 62 L@schen-zulassen-Eigenschaft 424
M Makro wiederholen-Eigenschaft 389 Makro-Editor 741 Makrogruppe 736 Makros Aktionen 687 Aktionsargumente 684 Aktionsspalte 683 ausfhren 687, 724 Autoexec 680 Bedingung-Spalte 733 Bedingungen 731 Dialogfenster 771 Dynamisches Hervorheben in Berichten 777 editieren 690 Eingabe einer Aktion 683
801
Index
Einsatz in Berichten 776 Einzelschrittmodus 737 Erstellen 679 Erzwingen der Dateneingabe 753 Fehlermeldungen 738 Filter aufheben 757 Filtern von Datens#tzen 755 Fortsetzungszeichen 734 Gruppenmakros 736 If...Then...Else 734 importieren 620 Kontrolle der Dateneingabe 751 Leerzeilen 734 Makro-Editor 741 Makrofenster 679 Meldungsfenster 766 Menleiste 521 rechnen in Berichten 778 Schließen eines Formulars 749, 772 Seitensumme 778 speichern 680 starten 724 Suche von Datens#tzen 758 Suche wiederholen 761 Suchformular 762 Tastenabkrzungen 781 Umschaltfl#chen 757 Untermakro ausfhren 737 Mastertabelle 99 Mathematische Funktionen 695 Max Datens4tze 269 MDB-Datei 33 sichern 557 Mehrbenutzer-Optionen 662 #ndern 665 Mehrbenutzerbetrieb 268 Daten bearbeiten 662 Strategie zum Sperren von Datens#tzen 662 mehrere Zeilen in Registern 404 Mehrspaltige Berichte 467-468 Meldung-Aktion 683, 767 Meldung-Funktion 767 Meldungsfenster 766 Men0 erweitern 531 Mengen 271 Men0leiste, 4ndern 520 Men0leistenmakro 521 Microsoft Excel 651 Microsoft Graph 404, 646, 653 Microsoft Internet Explorer 479 Microsoft Paint 653
802
Mischen von Tabellen Modul, importieren MSDE
308 620 670, 672
N Nachricht senden 159 Nachschlage-Assistent 226 starten 226 Nachschlagefeld definieren 88 in der Projektetabelle definieren 88 manuell definieren 230 mit Werteliste 230 Nachschlagen in Abfragen 264 Namenskonventionen 714 Benutzernamen 584 fr Datenbankdateien 35 fr Gruppennamen 582 fr Kennwrter 581 fr Tabellen 178 von Windows 35 Navigationsschaltfl4chen 56 Navigationsschaltfl4chenEigenschaft 424 Dndern zu 353 Dnderungen r0ckg4ngig machen 59 Dnderungsvorschlag 553 Netzwerk 268 bedienen 658 Datenzugriff 658 Neue Seite-Eigenschaft 420, 443 Neue Spalte oder Zeile-Eigenschaft 420, 443, 470 Neue Werte 194 Nicht-Operator 697 Nullwerte 271 in Kontrollk#stchen 381 in Optionsfeldern 381 in Umschaltfl#chen 381 Numerische Ausdr0cke 693 Numerische Operatoren 694 Nur Listeneintr4ge-Eigenschaft 377
O Objekt bearbeiten 397, 652 Bearbeiten verhindern 654
der Benutzeroberfl#che 40 Diagramme einfgen 651 einbetten 650 einer Datenbank 32 einfgen 651 eingebettete 647 im Datenbankfenster einund ausblenden 508 in der Taskleiste 508 manuell aktualisieren 647 markieren 337 verknpfte 647 von Datei entwerfen 651 Objektfeld 651 Objektnamen-Autokorrektur 525 Objektverweise 712 OCX-Control 411 ODBC 269, 617, 674 ODBC-Daten, verkn0pfen und importieren 623 ODBC-Datenbank importieren 619 schreiben 634-634 Oder-Verkn0pfung von Kriterien 314 Oder-Operator 697 Office-Steurelemente 484 OLE DB 674 OLE DB Provider 674 OLE-Container 646 OLE-Feld 651 OLE-Server 646 OLE-Zusatzsteuerelement 411 Operator, Wie 702 Operatoren 694 Arithmetisch 694 Zeichenketten 700 Optionen f0r Hyperlinks 248 Optionen von Access 522 Optionsfelder 381, 384 erstellen 382 Optionsgruppe 383 erstellen 383
P Paintbrush-Bild einf0gen 653 Paletten aus der Symbolleiste l@sen 72, 338 Palettenherkunft-Eigenschaft 447 Paradox-Tabelle schreiben 634 Parameterabfragen 300
Index
Pass-Through-Abfrage 323 Pfad einer Datei 244 UNC-Pfad 244 URL 242 PIN 583 Pivot-TabellenAssistent 254, 282, 332 PivotChart-Ansicht 326 PivotTable-Steuerelement 482 PivotTable-Ansicht 326 PopUp-Eigenschaft 771 Prim4rschl0ssel 42, 195, 222 #ndern 197 lschen 197 zusammengesetzte 196 Priorit4t von Operatoren 695 Programmstart 580 Projekt 4 Projektdatenbank, anlegen 34 Projekte 670 #ndern 100 einfgen 100 lschen 100 Projektetabelle anlegen 82 Datenfelder 83 Formular 130 Indizes 87 Nachschlagefeld definieren 88 Prim#rschlssel 84 Titel 84
Q QBE Quelle-Eigenschaft Querformat Query By Example QuickInfo QuickTip QWurzel-Funktion
106 259 80, 157 106 353 353 696
R Raster ver#ndern Raster-XY-Eigenschaft Rastereinstellungen
349, 446 78 446 78
RDBMS 31 Rechnen in Berichten 778 Rechnungsjahr ermitteln 290 Rechnungsmonat ermitteln 290 Rechtecke 400 Rechts-Funktion 703 Rechtschreibpr0fung 552-553 Referenzielle Integrit4t 97, 217 Daten bearbeiten 99 Regeln zur Bildung von Dateinamen 35 Register 401 3berschrift mit Bild 404 Aktivierreihenfolge bearbeiten 404 anlegen 401 Grße #ndern 404 mehrere Zeilen 404 Seiten 476 Seiten benennen 403 Seitenreihenfolge bearbeiten 403 Registerseiten benennen 403 Reihenfolge 4ndern 354 Relationale Beziehung 97 Relationale Datenbank 32 Relationales DatenbankVerwaltungssystem 31 Replikations-ID 183 Replikations-ID-Felder 183 Replikations-Viewer 603 Replizieren einer Datenbank 594 Replizierte Datenbanken synchronisieren 601 RGl4tten-Funktion 703 Rich-Text-Format 636 Rnd-Funktion 695
S Schaltfl4che per Drag&Dop anlegen 724 Schließen eines Formulars 749, 772 Schließen-Aktion 749 Schl0ssel definieren 194, 198 Schneller-LaserdruckEigenschaft 447 Schriften 74 Seite 557 einrichten 158, 468 entwerfen 484-484
Seitenansicht 154 Navigationsschaltfl#chen 154, 159 zoomen 159 Seiteneinrichtung Druckgrße 469 Layout-Elemente 469 Spaltenabstand 469 Seitenfuß 419, 441 Seitenfuß-Eigenschaft 446 Seitenkopf 417, 440 Seitenkopf-Eigenschaft 446 Seitenr4nder 158 Seitensumme in Berichten 778 Seitenwechsel 400, 439 Sekund4rschl0ssel 198 zusammengesetzte 200 Sekund4rschl0ssel anlegen 46 Serielles Datumsformat 705 Server 649 Servergenerierte HTML-Dateien 638 SetzenWert-Aktion 725 Sgn-Funktion 695 Sicherheitssystem, dokumentieren 589 Sicherungsdisketten 558 Sichtbar-Eigenschaft 420, 443 von Formularen 773 Snapshot 269, 298 Snapshot-Viewer 434 Sortierhierarchie 450 Sortierreihenfolge bei neuer DB 524 entwerfen 447 von Texten 701 Sortiert-nach-Eigenschaft 422, 445 Sortierung #ndern 449 deaktivieren 177 in Abfragen 269 in Tabellen 175 Sortierung-aktiv-Eigenschaft 445 Spalte, Begriff 32 Spaltenanzahl-Eigenschaft 375 Spalten0berschriftenEigenschaft 376 Spaltenbreite mit der Maus einstellen 75 Spaltenbreiten-Eigenschaft 376 Speicherl0cken 561 Sperren von Datens4tzen 662 Spezialtasten 522 SQL 106, 322, 588 Distinct-Pr#dikat 281
803
Index
DistinctRow-Pr#dikat 281, 324 SQL-Anweisungen bearbeiten 323 SQL Server Access 669 Upsizing-Assistent 672 SQL-Ansicht einer Abfrage 322 Sql-Funktion 695 Standard-Aktion 511-511 Standard-Aktionen 508 Standard-Datenbankordner 524 Standardansicht-Eigenschaft 423 Standardanzeigeformate von Access 188 Standardwert 191, 385 Standardwert-Eigenschaft 60, 385 Start eines Makros 724 Startparameter 580 Statische HTML-Dateien 638 Statuszeile 132 ausblenden 520 Statuszeilentext 353 Steuerelement 344 ber die Feldliste erstellen 340 ActiveX-Steuerelemente 411 am Raster ausrichten 348 Auflistung 716 ausrichten 346 automatisch formatieren 358 Befehlsschaltfl#chen 385 Beispiel fr ein Kombinationsfeld als Eingabeprfung 378 Beispiel fr ein Kombinationsfeld mit Wertliste 377 Beschriftung lschen 351 Beschriftung zuordnen 351 Bezeichnungsfelder 361 Bezugnahme 712 Bilder 399 Diagramme 404 duplizieren 351-351 Formate bertragen 357 gebundene Objektfelder 396 Grße #ndern 348 Gruppieren 352 Hilfetexte 353 Kalender 411-411 Kombinationsfelder 371 Kontrollk#stchen 381 kopieren 351 lschen 351 Linien 400
804
Listenfelder 371 markieren 345 mehrzeilige Texte 364 Optionsfelder 381 Optionsgruppen 383 Rechtecke 400 Register 401 Seitenwechsel 400 Standardeigenschaften #ndern 355 Statuszeilentext 353 SteuerelementTip Text 353 Textfelder 363 Tips 353 Typ #ndern 352 Umschaltfl#chen 381 und Beschriftungen getrennt ausrichten 347 ungebundene Objektfelder 398 Unterformulare und -berichte 390 verschieben 345 Web-Browser 414 Steuerelement-anzeigenEigenschaft 92 SteuerelementAssistenten 342, 371, 383 Steuerelementeigenschaften 717 SteuerelementinhaltEigenschaft 364 SteuerelementTip Text 353 Steuerelementtyp 4ndern 353 Structured Query Language 106 Struktur einer Tabelle 170 Suchen in einem bestimmten Feld 64 In Favoriten suchen 516 Indexsuche 65 nach Datenbanken 513 nach einem Teil des Suchwertes 63 Optionen 526 Standard 526 und ersetzen 65 unterbrechen 65 von Datens#tzen 758 Weitersuchen 66 SuchenDatensatz-Aktion 723, 746 SuchenWeiter-Aktion 761 Suchformulare 762 Symbole, AutoAnordnen 22 Symbolleiste ausblenden 520 Format (Datenblatt) 71
Paletten lsen 72, 338 Synchronisation, von Formularen 745 Synchronisieren von Datenbanken 601 von Formularen 595 Synchronisierte Formulare 146 SYSTEM.MDW 557, 564, 577 Systemabsturz 563-563 Systemdatenbank 564
T Tabellarische Berichte 151 Tabelle :nderungsmodus 58 3bersicht aller Indizes 198 3bersichtseintr#ge 520 anlegen 38, 170 Anzeige aktualisieren 665 Aufbau 32 aufsplitten 231 automatisch erstellen 305 Begriff 32-32 Beschreibung 173 Beziehung 205 Beziehung definieren 209 Daten an Word weitergeben 636 Datenblattlayout speichern 78 Datenfeld einfgen 48 Datenfeld lschen 48, 81 alle Datens#tze anzeigen 665 Datens#tze automatisch anfgen 314 Datens#tze automatisch lschen 318 alle Datens#tze sperren 663 Detailtabelle 99 dokumentieren 181 drucken 79 Eigenschaften 40, 173-173 Eindeutiger Schlssel 42 einer anderen Access-Datenbank verknpfen 620 Einfgemodus 58 eingebundene lschen 624 Entwurf aus dem Beziehungsfenster ffnen 208 Entwurfsansicht 40 Exportieren 634-634
Index
Felddatentyp 181 Felddatentyp #ndern 202 Felddatentypen konvertieren 616 Feldeigenschaften 185 Felder definieren 181 Felder einfgen 202 Felder lschen 202 Felder umbenennen 202 Feldname 181 Filter 67, 175 Gltigkeitsregeln testen 175 Gleichheitsverknpfung 212 Hyperlink-Felder anlegen 241 Hyperlinks speichern 240 in anderer Datenbank verknpfen 620 In die Datenblattansicht wechseln 49 Indikatorspalte 181 Inklusionsverknpfung 213 Keine Sperrungen 662 kopieren 179 lschen 180 Layout speichern 179 manuell aufsplitten 234 manuell entwerfen 169 Mastertabelle 99 Mehrere Zeilen markieren 62 Mischen 308 mit dem Tabellenanalyse-Assistenten aufsplitten 234 Namenskonventionen 178 normalisieren 231 nur bearbeitete Datens#tze sperren 664 Prfung auf Datensatzebene 174 Prfung auf Feldebene 174 Prim#rschlssel 42, 195 Prim#rschlssel #ndern 197 Prim#rschlssel lschen 197 Redundanzen vermeiden 231 Referenzielle Integrit#t 217 Satz- oder seitenweise Sperrung 664 Schlssel definieren 194, 198 schließen 47 Schriftart und -attribute 73 Sekund#rschlssel 198 Sekund#rschlssel anlegen 46 sortieren 120, 175
Speicherbedarf 182 speichern 42, 47, 178 Strategie zum Sperren von Datens#tzen 662 Struktur 170 Tasten 57 Tastenbelegung 57 umbenennen 179 unter einem neuen Namen speichern 179 verknpfen 615 verschieben 180 Zellen ausw#hlen 56 zus#tzliche Feldeigenschaften 43 zusammenfhren 308 zusammengesetzte Sekund#rschlssel 200 Tabellen, verkn0pfen 204 Tabellenanalyse-Assistent Fehlerquellen 238 starten 231 Tabellenassistent 169, 220 Ansicht ausw#hlen 224 Beispieltabelle ausw#hlen 222 Beziehung definieren 223 Prim#rschlssel 222 Tabellenname 222 Tabellendefinition 170-170 drucken 181 Feld-Generator 183 nachtr#glich #ndern 201 speichern 178 Tabelleneigenschaft 173 Filter 175 Sortiert nach 175 Tabellenentwurf 40 Im Datenblatt #ndern 81 Symbolleiste 171 Tabellenerstellungsabfrage 305 Tabellennamen in Abfragen anzeigen 259 Tabellenstruktur 170 #ndern 48 Tabellenverkn0pfungs-Manager 617 Tagesdatum 312 Tastatur Datenblatt 529 Formular 529 Tasten in der Datenblattansicht 57 Spezialtasten von Access 522 Tastenabk0rzungen 781
Technik des Ziehens 62 TeilStr-Funktion 703 Telefonliste, drucken 151 Telefonnummernw4hler 386 konfigurieren 388 Textausdr0cke 700 Textbegrenzungszeichen 631 Textdatei exportieren 634 importieren 619, 628, 632 verknpfen 617, 628, 632 Texte AutoKorrektur 555 Rechtschreibprfung 553 vergleichen 701 verknpfen 700 Textfeld 363 erstellen 363 Hyperlink 368 Textliterale 273 TipText 353 Toolbox 341, 356 konfigurieren 405 Mauszeiger 342 Tortendiagramm 405 Transparente Schaltfl4chen 757 TransparentEigenschaft 389 True-Type-Schriften 73 TrueType-Schriften 447
U Umschaltfl4che 381, 439, 757 erstellen 382 UNC-Pfad 244 Und-Verkn0pfung von Kriterien 314 Und-Operator 697 Ungebundene Objektfelder 398 Union-Abfrage 323 Unterberichte 472 #ndern 473 entwerfen 472 verwenden 472 Unterdatenblatt, einf0gen 101 Unterdatenbl4tter 101 Unterformular 719 #ndern 394 Bezugnahme 719 manuell entwerfen 393 optimieren 392 Standardansicht 395 verwenden 393
805
Index
Unterformulare und -berichte 390 Upsizing-Assistent 672 URL 242-242
V Vererbung 422 Formularfilter 422 von Eigenschaften 340 Vergleichsargumente 273 Vergleichsoperatoren 270, 699 Vergr@ßerbarEigenschaft 421, 438, 443 VerkleinerbarEigenschaft 421, 438, 443 Verkn0pfen von Haupt-pfte Formulare 146 Verkn0pfte Objekte 647 bearbeiten 656 Verkn0pfte Tabellen Haupt- und Unterberichte 472 Haupt- und Unterformular 394 lschen 624 Verkn0pfung zu einem Datenbankobjekt erstellen 507 Verkn0pfung zur Projektdatenbank 38
806
Verkn0pfungseigenschaften 211 Verkn0pfungsoperatoren 694 Verkn0pfungssymbol 38 Verweise auf Steuerelemente 712, 715 Vorzchn-Funktion 696
W Wahr Web-Browser Web-Steuerelemente Weboptionen Wertebereiche Wie-Operator Wortweise l@schen Wurzelfunktion
697 414 484 526 274 272, 702 61 695
Z Zeichen markieren Zeichenketten verkn0pfen Zeichenkettenfunktionen Zeile Begriff
60 700 703 32
Lschen 61 Zeilenanzahl-Eigenschaft 376 Zeilenh@he mit der Maus einstellen 74 Zeitangaben 706 Zeitspannen berechnen 707 Ziehen mit der Maus 62 Ziehpunkt 346 Zoom-Fenster 280, 291, 363-364 Zufallszahlen 695 Zugelassene-AnsichtenEigenschaft 424 Zugriffsberechtigung 585 erteilen 587 Zugriffsrechte dokumentieren 589 drucken 590 erteilen 582 Zusammengesetzte Prim4rschl0ssel 196 Zusammengesetzte Sekund4rschl0ssel 200 ZusammenhaltenEigenschaft 420, 443 Zusatzsteuerelemente 411 Zwischen-Operator 274 Zwischenablage 620 Hardcopy 653