Sie können Ausdrücke für eine Vielzahl von Aufgaben in Microsoft Office Access 2007 verwenden, z. B. für mathematische Berechnungen, für das Kombinieren oder Extrahieren von Text oder für das Überprüfen von Daten. In diesem Artikel werden Hintergrundinformationen über Ausdrücke bereitgestellt - wann diese verwendet werden, in welcher Weise sie mit Microsoft Office Excel-Formeln vergleichbar sind und aus welchen Bestandteilen sie bestehen.
Inhalt dieses Artikels
Übersicht über Ausdrücke
Ein Ausdruck stellt eine Kombination aus einigen oder allen folgenden Elementen dar: Integrierte oder benutzerdefinierte Funktionen (Function-Prozedur: Eine Prozedur, die einen Wert zurückgibt und die in einem Ausdruck verwendet werden kann. Sie deklarieren eine Funktion mit der Function-Anweisung und beenden sie mit der End Function-Anweisung.), Bezeichner (Bezeichner (Ausdrücke): Ein Element eines Ausdrucks, das auf den Wert eines Felds, eines Steuerelements oder einer Eigenschaft verweist. Der Bezeichner "Formulare![Bestellungen]![Bestell-Nr]" verweist z. B. auf den Wert des Steuerelements "Bestell-Nr" im Formular "Bestellungen".), Operatoren (Operator: Ein Zeichen oder ein Symbol, mit dessen Hilfe die in einem Ausdruck auszuführende Berechnungsart angegeben wird. Es gibt mathematische Operatoren, Vergleichsoperatoren, logische Operatoren und Bezugsoperatoren.) und Konstanten (Konstante: Ein Wert, der nicht berechnet wird und sich aus diesem Grund auch nicht ändert. Die Zahl 210 und der Text "Quartalseinnahmen" stellen z. B. Konstanten dar. Ein Ausdruck oder ein aus einem Ausdruck resultierender Wert ist keine Konstante.), die zu einem einzelnen Wert ausgewertet werden.

Der folgende Ausdruck enthält z. B. alle vier dieser Elemente:
=Summe([Kaufpreis])*0,08
In diesem Beispiel ist Summe() eine integrierte Funktion, [Kaufpreis] ist ein Bezeichner, * ist ein mathematischer Operator und 0,08 ist eine Konstante. Dieser Ausdruck kann in einem Textfeld in einem Formularfuß oder Berichtsfuß verwendet werden, um die Mehrwertsteuer für eine Gruppe von Elementen zu berechnen.
Ausdrücke können wesentlich komplexer oder erheblich einfacher sein als in diesem Beispiel. Der nachfolgende boolesche (Boolesch: Ein Ausdruck, der entweder als "Wahr" (ungleich 0) oder "Falsch" (gleich 0) ausgewertet werden kann. Sie können die Schlüsselwerte "Wahr" und "Falsch" verwenden, um die Werte -1 bzw. 0 anzugeben. Der Felddatentyp "Ja/Nein" ist boolesch und hat für "Ja" den Wert "-1".) Ausdruck besteht z. B. aus nur einem Operator und einer Konstante:
>0
Der Ausdruck gibt True (Wahr) zurück, wenn er mit einer Zahl verglichen wird, die größer als 0 ist und False (Falsch), wenn die Zahl kleiner als 0 ist. Sie können diesen Ausdruck in der Gültigkeitsregel-Eigenschaft eines Steuerelements oder eines Tabellenfelds verwenden, um sicherzustellen, dass nur positive Werte eingegeben werden.
In Access werden Ausdrücke an zahlreichen Stellen verwendet, um Berechnungen durchzuführen, Zeichen zu ändern oder Daten zu testen. Tabellen, Abfragen, Formulare, Berichte und Makros verfügen alle über Eigenschaften, die einen Ausdruck akzeptieren. Sie können Ausdrücke z. B. in den Eigenschaften Steuerelementinhalt und Standardwert für ein Steuerelement verwenden. Sie können Ausdrücke auch in der Gültigkeitsregel-Eigenschaft für ein Tabellenfeld verwenden. Außerdem verwenden Sie beim Schreiben von VBA-Code (Microsoft Visual Basic für Applikationen) für eine Ereignisprozedur oder für ein Modul häufig Ausdrücke, die denen ähnlich sind, die Sie in einem Access-Objekt (z. B. eine Tabelle oder Abfrage) verwenden.
Hinweis Weitere Informationen über die Komponenten eines Ausdrucks finden Sie später in diesem Artikel unter Komponenten eines Ausdrucks.
Seitenanfang
Warum ist es sinnvoll, Ausdrücke zu verwenden?
In Access können Sie Ausdrücke für die folgenden Aufgaben verwenden:
- Berechnen von Werten, die nicht direkt in Ihren Daten vorhanden sind. Sie können Werte für Abfragefelder und Steuerelemente in Formularen und in Berichten berechnen.
- Festlegen eines Standardwerts für ein Tabellenfeld oder für ein Steuerelement in einem Formular oder in einem Bericht. Diese Standardwerte werden bei jedem Öffnen einer Tabelle, eines Formulars oder eines Berichts angezeigt.
- Erstellen einer Gültigkeitsregel. Gültigkeitsregeln steuern, welche Werte von Benutzern in ein Feld oder Steuerelement eingegeben können.
- Festlegen von Kriterien für eine Abfrage.
Eine der häufigsten Möglichkeiten zum Verwenden von Ausdrücken in Access ist die Berechnung von Werten, die in Ihren Daten nicht direkt vorhanden sind. Sie können z. B. eine Spalte in einer Abfrage erstellen, die eine Summe von Positionen berechnet, und dann diesen Wert in einem Formular oder Bericht verwenden. Eine Spalte in einer Abfrage, die sich durch eine derartige Berechnung ergibt, wird als berechnetes Feld bezeichnet. Der folgende Ausdruck in einer Abfrage berechnet z. B. die Summe von Positionen mit einem angewendeten Rabatt:
Endpreis: ZCurrency([Bestelldetails].[Einzelpreis]*[Anzahl]*(1-[Rabatt])/100)*100
Die resultierende Spalte oder das berechnete Feld in diesem Ausdruck wurde als Endpreis bezeichnet.
Sie können kein Tabellenfeld erstellen, dass seinen eigenen Wert automatisch berechnet. Bei Bedarf können Sie ein Tabellenfeld verwenden, um die Ergebnisse einer Berechnung zu speichern, die an anderer Stelle durchgeführt wurde (z. B. in einer Abfrage oder in einem Formular). Falls es jedoch keinen bestimmten Grund dazu gibt, ist es effizienter, nur die Werte zu speichern, die für die Berechnung erforderlich sind. Die Ergebnisse werden dann bei Bedarf berechnet.
Nehmen Sie beispielsweise an, Sie müssen den Gesamteurobetrag für eine Position in einer Rechnung berechnen. Anstatt die Summe der Positionen in der Datenbank zu speichern, berechnen Sie sie bei Bedarf aus zwei anderen Einträgen, die Sie in der Datenbank speichern - Anzahl und Preis. In einem Textfeld-Steuerelement im Rechnungsbericht verwenden Sie den folgenden Ausdruck zum Berechnen des Werts:
=ZCurrency([Anzahl]*[Preis])
In diesem Ausdruck wird die Anzahl mit dem Preis multipliziert und dann die Funktion für die Konvertierung in eine Währung (ZCurrency) verwendet, um das Ergebnis in den Datentyp "Währung" zu konvertieren. Sie können für jede Bestellung auch einen Rabatt berechnen.
Sie können ein berechnetes Feld erstellen, sobald Sie Operationen mit den Daten in zwei oder mehr Tabellenfeldern berechnen oder durchführen müssen. In vielen Tabellen werden z. B. die Vor- und Nachnamen in separaten Feldern gespeichert. Wenn Sie die Vor- und Nachnamen kombinieren und in einem einzelnen Feld anzeigen möchten, können Sie ein berechnetes Feld in einer Abfrage erstellen. Wie zuvor erwähnt, scheint die direkte Erstellung eines derartigen Typs eines berechneten Felds in einer Tabelle angebracht, aber diese Art der Operation wird von Tabellen nicht unterstützt. Sie stellen kein Feld oder eine Eigenschaft bereit, in dem/der der erforderliche Ausdruck hinzugefügt werden kann.
Ein berechnetes Feld, dass Vor- und Nachnamen kombiniert, würde wie folgt aussehen: [Vorname] & " " & [Nachname]. In diesem Fall fassen die kaufmännischen Und-Zeichen (&) den Wert im Feld Vorname, ein Leerzeichen (ein in Anführungszeichen eingeschlossenes Leerzeichen) und den Wert im Feld Nachname zusammen.
Sie können Ausdrücke in Access auch dazu verwenden, um einen Standardwert für ein Feld in einer Tabelle oder für ein Steuerelement bereitzustellen. Sie geben z. B. Datum() in das Eigenschaftenfeld Standardwert für ein Feld ein, um als Standardwert für ein Datumsfeld das aktuelle Datum festzulegen.
Zusätzlich können Sie mithilfe eines Ausdrucks eine Gültigkeitsregel festlegen. Sie können z. B. eine Gültigkeitsregel in einem Steuerelement oder in einem Tabellenfeld verwenden, um zu erfordern, dass das eingegebene Datum größer als oder gleich dem aktuellen Datum ist. In diesem Fall legen Sie für den Wert im Eigenschaftenfeld Gültigkeitsregel den Ausdruck >= Datum() fest.
Schließlich können Sie einen Ausdruck auch dazu verwenden, um Kriterien für eine Abfrage festzulegen. Nehmen Sie beispielsweise an, Sie möchten die Artikelumsätze für die Bestellungen anzeigen, die in einem bestimmten Zeitraum versandt wurden. Sie können Kriterien eingeben, um einen Datumsbereich zu definieren, woraufhin Access nur die Zeilen zurückgibt, die den Kriterien entsprechen. Ihr Ausdruck könnte z. B. wie folgt aussehen:
Zwischen #1/1/2007# und #12/31/2007#
Wenn Sie der Abfrage Kriterien hinzufügen und die Abfrage anschließend ausführen, dann gibt sie nur die Werte zurück, die den angegebenen Datumsangaben entsprechen.
Seitenanfang
Vergleich von Access-Ausdrücken und Excel-Formeln
Access-Ausdrücke ähneln Excel-Formeln in der Weise, dass beide ähnliche Elemente verwenden, um ein Ergebnis zu erzeugen. Sowohl Excel-Formeln als auch Access-Ausdrücke enthalten eines oder mehrere der folgenden Elemente:
- Bezeichner In Excel sind Bezeichner die Namen von einzelnen Zellen oder Zellbereichen in einer Arbeitsmappe, z. B. A1, B3:C6 oder Tabelle2!C32. In Access sind Bezeichner die Namen von Tabellenfeldern (z. B. [Kontakte]![Vorname]), von Steuerelementen in Formularen oder in Berichten (z. B. Formulare![Aufgabenliste]![Beschreibung]) oder von Eigenschaften dieser Felder oder Steuerelemente (beispielsweise Formulare![Aufgabenliste]![Beschreibung].Spaltenbreite).
- Operatoren Sowohl in Access als auch in Excel werden Operatoren dazu verwendet, um Werte zu vergleichen oder einfache Berechnungen mit Daten durchzuführen. Beispiele umfassen das Pluszeichen (+) oder Minuszeichen (-).
- Funktionen und Argumente Sowohl in Access als auch in Excel werden Funktionen und Argumente verwendet, um Aufgaben durchzuführen, die mit Operatoren allein nicht ausgeführt werden können. Sie können z. B. den Mittelwert von Werten in einem Feld ermitteln oder das Ergebnis einer Berechnung in ein Währungsformat konvertieren. Beispiele für Funktionen sind z. B. SUMME und STABW. Argumente sind Werte, die Informationen für Funktionen bereitstellen. Access und Excel verfügen beide über eine große Auswahl an Funktionen, aber die Namen der vergleichbaren Funktionen in den Programmen unterscheiden sich gelegentlich.
- Konstanten Sowohl in Access als auch in Excel sind Konstanten Werte, die sich nicht ändern, z. B. Zeichenfolgen oder Zahlen, die nicht mithilfe eines Ausdrucks berechnet werden.
Access-Ausdrücke verwenden Operatoren und Konstanten, die denen in Excel-Formeln verwendeten ähneln, aber Access-Ausdrücke verwenden andere Bezeichner und Funktionen. Sie können eine Excel-Formel nur an einer Stelle verwenden: In einer Zelle auf einem Arbeitsblatt. Sie können einen Access-Ausdruck jedoch an vielen Stellen für eine breite Palette an Aufgaben einsetzen, einschließlich den Folgenden:
- Erstellen berechneter Steuerelemente in Formularen und in Berichten.
- Erstellen von berechneten Feldern in Abfragen.
- Verwenden als Kriterien in Abfragen.
- Überprüfen von Daten, die in ein Feld, in ein Steuerelement oder in ein Formular eingegeben werden.
- Gruppieren von Daten in Berichten.
Sie können entweder einen Access-Ausdruck oder eine Excel-Formel verwenden, um numerische oder Datum/Uhrzeit-Werte mithilfe mathematischer Operatoren zu berechnen. Wenn Sie z. B. einen diskontierten Preis für einen Kunden berechnen möchten, können Sie die Excel-Formel =C2*(1-D2) oder den Access-Ausdruck = [Einzelpreis]*(1-[Rabatt]) verwenden.
Sie können auch einen Access-Ausdruck oder eine Excel-Formel verwenden, um Zeichenfolgen mithilfe von Zeichenfolgenoperatoren zu kombinieren, aufzuteilen oder auf andere Weise zu ändern. Wenn Sie z. B. einen Vornamen und einen Nachnamen zu einer Zeichenfolge zusammenfassen möchten, können Sie die Excel-Formel =D3 & " " & D4 oder den Access-Ausdruck = [Vorname] & " " & [Nachname] verwenden.
Seitenanfang
Komponenten eines Ausdrucks
Ausdrücke können aus Bezeichnern, Operatoren, Funktionen und Argumenten, Konstanten und Werten bestehen. In den folgenden Abschnitten werden diese Komponenten ausführlicher beschrieben. Die Beispiele in diesen Abschnitten bieten außerdem eine kurze Beschreibung der Syntax, die von Ausdrücken verwendet wird.
Bezeichner
Bei einem Bezeichner handelt es sich um den Namen eines Felds, einer Eigenschaft oder eines Steuerelements. Mit einem Bezeichner in einem Ausdruck kann auf den Wert verwiesen werden, der einem Feld, einer Eigenschaft oder einem Steuerelement zugeordnet ist. Nehmen wir z. B. den Ausdruck =[Lieferdatum]-[Versanddatum]. In diesem Ausdruck wird der Wert des Feldes oder Steuerfeldes Versanddatum vom Wert des Feldes oder Steuerelements Lieferdatum subtrahiert. In diesem Ausdruck dienen Lieferdatum und Versanddatum als Bezeichner.
Operatoren
Access unterstützt eine Vielzahl von Operatoren, einschließlich allgemeiner arithmetischer Operatoren wie +, -, * (multiplizieren) und / (dividieren). Sie können auch Vergleichsoperatoren wie < (kleiner als) oder > (größer als) verwenden, um Werte zu vergleichen oder Textoperatoren wie & und +, um Text zu verknüpfen (kombinieren) oder logische Operatoren wie Nicht und Und, um wahre oder falsche Werte zu ermitteln sowie weitere Operatoren verwenden, die für Access spezifisch sind.
Funktionen und Argumente
Funktionen sind integrierte Prozeduren, die Sie in Ausdrücken verwenden können. Sie verwenden Funktionen für eine Vielzahl von Operationen, z. B. zum Berechnen von Werten, zum Ändern von Text und Datumsangaben sowie zum Zusammenfassen von Daten. Eine häufig verwendete Funktion ist z. B. Datum, die das aktuelle Datum zurückgibt. Sie können die Datum-Funktion auf vielfältige Weise verwenden, z. B. in einem Ausdruck, der den Standardwert für ein Feld in einer Tabelle festlegt. In diesem Beispiel wird der Wert für ein Feld standardmäßig auf das aktuelle Datum festgelegt, sobald ein neuer Datensatz hinzugefügt wird.
Einige Funktionen benötigen Argumente. Ein Argument ist ein Wert, der eine Eingabe für die Funktion bereitstellt. Wenn eine Funktion mehrere Argumente erfordert, werden die Argumente durch Kommas voneinander getrennt. Der folgende Beispielausdruck enthält z. B. die Datum-Funktion:
=Format(Datum(),"mmmm t, jjjj")
In diesem Beispiel werden zwei Argumente verwendet. Das erste Argument ist die Datum()-Funktion, die das aktuelle Datum zurückgibt. Das zweite Argument, ("mmmm t, jjjj"), das von dem ersten Argument durch ein Komma getrennt ist, gibt eine Textzeichenfolge an, um die Format-Funktion anzuweisen, wie der zurückgegebene Datumswert formatiert werden soll. Beachten Sie, dass die Textzeichenfolge in Anführungszeichen eingeschlossen werden muss. Dieser Ausdruck veranschaulicht außerdem, dass Sie häufig den von einer Funktion zurückgegebenen Wert als Argument für eine andere Funktion verwenden können. In diesem Fall dient Datum() als Argument.
Verknüpfungen zu weiteren Informationen zu Funktionen und zur Ausdruckssyntax finden Sie im Abschnitt Siehe auch.
Konstanten
Bei einer Konstante handelt es sich um ein Element, dessen Wert bei der Ausführung von Access unverändert bleibt. In Ausdrücken häufig verwendeten Konstanten sind True (Wahr), False (Falsch) und Null. Sie können auch eigene Konstanten in VBA-Code (Visual Basic für Applikationen) definieren, die in VBA-Prozeduren verwendet werden können. VBA ist die von Access verwendete Programmiersprache.
Hinweis VBA-Konstanten können Sie nicht in benutzerdefinierten Funktionen verwenden, die Sie in den von Ihnen erstellten Ausdrücken verwenden. VBA verfügt z. B. über Konstanten für die Wochentage: "vbSunday" steht für Sonntag, "vbMonday" steht für Montag usw. Jede dieser Konstanten weist einen entsprechenden numerischen Wert auf: Der numerische Wert für "vbSunday" beträgt z. B. 1, für "vbMonday" 2 usw. Diese Konstanten können nicht in einer benutzerdefinierten Funktion verwendet werden, die innerhalb eines Ausdrucks aufgerufen wird. Stattdessen müssen die numerischen Werte verwendet werden.
Werte
Sie können in den Ausdrücken Literalwerte verwenden, z. B. die Zahl 1,254 oder die Zeichenfolge "Geben Sie eine Zahl zwischen 1 und 10 ein". Sie können auch numerische Werte verwenden, die eine Ziffernfolge enthalten können, einschließlich Vorzeichen und Dezimalkomma (bei Bedarf). Wenn das Vorzeichen fehlt, geht Access von einem positiven Wert aus. Ein negativer Wert wird mit dem Minuszeichen (-) angegeben. Es kann auch die wissenschaftliche Notation verwendet werden. Hierzu geben Sie "E" oder "e" und das Exponentenzeichen an (z. B. 1,0E-6).
Wenn Sie Textzeichenfolgen als Konstanten verwenden, schließen Sie sie in Anführungszeichen ein, um sicherzustellen, dass Access diese ordnungsgemäß interpretiert. Unter gewissen Umständen stellt Access die Anführungszeichen für Sie bereit. Wenn Sie z. B. in einem Ausdruck für eine Gültigkeitsregel oder für Abfragekriterien Text eingeben, schließt Access die Textzeichenfolgen automatisch in Anführungszeichen ein.
Wenn Sie als Text Paris eingeben, wird von Access z. B. "Paris" im Ausdruck angezeigt. Wenn Sie in einem Ausdruck eine Zeichenfolge tatsächlich in Anführungszeichen angeben möchten, können Sie die eingebettete Zeichenfolge entweder in einfache (') Anführungszeichen oder in drei doppelte (") Anführungszeichen einschließen. Beispielsweise sind die folgenden Ausdrücke äquivalent:
Formulare![Kontakte]![Ort].Standardwert = ' "Paris" '
Formulare![Kontakte]![Ort].Standardwert = " " "Paris" " "
Wenn Sie Werte für Datum/Uhrzeit verwenden möchten, schließen Sie die Werte in Nummernzeichen (#) ein. Die Werte #3-7-07#, #7-Mar-07# und #Mar-7-2007# sind beispielsweise gültige Werte für Datum/Uhrzeit. Wenn Access einen gültigen, in #-Zeichen eingeschlossenen Wert für Datum/Uhrzeit findet, wird der Wert automatisch als Datum/Uhrzeit-Datentyp behandelt.
Seitenanfang
Beispiele für Ausdrücke
In der folgenden Tabelle sind einige Access-Ausdrücke und deren typische Verwendung aufgeführt:
| Ausdruck |
Zweck |
| =[Lieferdatum]-[Versanddatum] |
Berechnet die Differenz zwischen den Datumswerten in zwei Textfeld-Steuerelementen (mit der Bezeichnung "Lieferdatum" und "Versanddatum") in einem Bericht. |
| Datum() |
Legt den Standardwert für ein Uhrzeit/Datum-Tabellenfeld auf das aktuelle Datum fest. |
| Endpreis: ZCurrency([Bestelldetails].Einzelpreis*[Anzahl]*(1-[Rabatt])/100)*100 |
Erstellt ein berechnetes Feld mit der Bezeichnung "Endpreis" in einer Abfrage. |
| Zwischen #1/1/2007# Und #12/31/2007# |
Gibt Kriterien für ein Datum/Uhrzeit-Feld in einer Abfrage an. |
| =[Bestellungen Unterformular].Formular!BestellungZwischensumme |
Gibt den Wert des Steuerelements "BestellungZwischensumme" im Unterformular "Bestellungen" zurück, das sich im Formular "Bestellungen" befindet. |
| >0 |
Legt eine Gültigkeitsregel für ein numerisches Feld in einer Tabelle fest. Die Benutzer müssen einen Wert eingeben, der größer als 0 ist. |
Einige Ausdrücke beginnen mit dem Gleichheitszeichen (=), während dies bei anderen Ausdrücken nicht der Fall ist. Beim Berechnen eines Wertes für ein Steuerelement in einem Formular oder Bericht beginnen Sie den Ausdruck mit dem =-Operator. In anderen Situationen, z. B. beim Eingeben eines Ausdrucks in eine Abfrage oder in die Standardwert-Eigenschaft oder Gültigkeitsregel-Eigenschaft eines Feldes oder eines Steuerelements, wird der =-Operator nicht verwendet, sofern Sie den Ausdruck nicht zu einem Textfeld in einer Tabelle hinzufügen. In einigen Fällen, z. B. beim Hinzufügen von Ausdrücken zu Abfragen, entfernt Access den =-Operator automatisch.