Verwenden von Parametern in Abfragen und Berichten

Wichtig :  Dieser Artikel wurde maschinell übersetzt. Bitte beachten Sie den Haftungsausschluss. Die englische Version des Artikels ist als Referenz hier verfügbar: hier.

Wenn Sie eine Abfrage zur Eingabe jedes Mal bitten, die ausgeführt werden, soll, können Sie eine Parameterabfrage erstellen.

Sie können außerdem ein Formular zum Erfassen von Parameterwerten erstellen. Ein Formular bietet folgende Möglichkeiten:

  • Verwenden datentypspezifischer Steuerelemente

  • Aktivieren der Speicherung von Parameterwerten

  • Bereitstellen von Steuerelementen in Form von Kombinationsfeldern (zur Auswahl von Werten aus einer Liste anstelle einer manuellen Eingabe)

  • Verwenden von anderen Steuerelementen, die in Formularen verfügbar sind

Dieser Artikel enthält eine Übersicht über die Parameter. Erläutert werden außerdem deren Einsatzmöglichkeiten in Abfragen sowie die Verwendung von Formularen zur optimalen Parameternutzung.

Inhalt dieses Artikels

Übersicht

Verwenden von Parametern in Abfragen

Angeben von Parameterdatentypen

Erstellen von Formularen zum Erfassen von Parametern

Übersicht

In einer Abfrage in Access können Sie bestimmte Kriterien verwenden, um die durch die Abfrage zurückgegebenen Datensätze einzuschränken. Betrachten Sie das folgende Szenario.

Angenommen, Sie haben eine Abfrage namens "Letzter Auftrag", mit der neben Namen und Adressen der Kunden auch das Lieferdatum des letzten Auftrags zurückgegeben wird. Vor kurzem wurden in den Katalog (und den Bestand) einige neue, interessante Produkte aufgenommen. Jeder Lieferung eines Auftrags wird eine Kopie des aktuellen Katalog beigelegt. Sie gehen davon aus, dass die neuen Produkte großen Anklang finden und möchten, dass alle Kunden darüber Bescheid wissen. Sie wollen allen Kunden einen Katalog zukommen lassen, die ihn noch nicht mit einer Lieferung erhalten haben.

Daher möchten Sie eine Mailingliste erstellen, die die Namen und Adressen der Kunden erhält, deren letzter Auftrag vor der Neuauflage des Katalogs geliefert wurde. Dazu wenden Sie in der Abfrage "Letzter Auftrag" ein Kriterium auf das Feld mit dem Versanddatum an. Das Kriterium gibt vor, dass das Datum im Versanddatumsfeld vor dem Datum liegen muss, ab dem der neue Katalog verteilt wurde, z. B. vor dem 31.03.2006. Nach dem Ausführen der Abfrage haben Sie eine Mailingliste, die nur die Kunden enthält, die noch keinen neuen Katalog erhalten haben.

Was passiert nun, wenn diese Situation erneut eintritt? Sie könnten jeweils den Abfrageentwurf modifizieren, indem Sie den durch das Kriterium vorgegebenen Wert ändern. Wäre es nicht jedoch viel bequemer, wenn Sie in der Abfrage zur Eingabe eines Datums aufgefordert würden, und anschließend anhand dieses Datums ermittelt würde, welche Kunden in die Mailingliste einbezogen werden sollen? Durch die Verwendung einer speziellen Kriterienform, nämlich eines Parameters, können Sie Ihre Abfrage in dieser Form erstellen.

Möglicherweise haben Sie den Eindruck, dass die durch einen Parameter bereitgestellten Dialogfelder für Ihre Zwecke nicht ausreichend sind. In solchen Fällen können Sie ein Formular erstellen, das Ihren Anforderungen an die Parametererfassung besser entspricht. Wie Sie ein Formular zum Erfassen von Berichtsparametern erstellen, wird in diesem Artikel beschrieben.

Dieser Artikel setzt voraus, dass Sie mit dem Erstellen von Abfragen vertraut sind. Sie sollten jedoch mindestens eine Auswahlabfrage erstellen können, bevor Sie fortfahren.

Weitere Informationen zum Erstellen einer Auswahlabfrage finden Sie im Artikel, die Daten mithilfe einer Abfrage auswählen. Weitere Informationen zu Abfragen im Allgemeinen finden Sie im Artikel Einführung in Abfragen.

Dieser Artikel enthält Beispiele für die Verwendung von Parametern in Abfragen, stellt jedoch keine umfassende Referenz für die Angabe von Kriterien dar.

Weitere Informationen zur Angabe von Kriterien finden Sie im Artikel Beispiele von Abfragekriterien.

Seitenanfang

Verwenden von Parametern in Abfragen

Das Verwenden eines Parameters in einer Abfrage ist ebenso leicht wie das Erstellen einer Abfrage, für die dieses Kriterium verwendet wird. Sie können die Abfrage so entwerfen, dass Sie zur Eingabe einer einzelnen Information (z. B. einer Teilenummer) oder mehreren Informationen (z. B. zwei Datumswerte) aufgefordert werden. Für jeden Parameter wird in einer Parameterabfrage ein separates Dialogfeld angezeigt, in dem Sie zur Eingabe eines Werts für diesen Parameter aufgefordert werden.

Hinzufügen eines Parameters zu einer Abfrage

  1. Erstellen Sie eine Auswahlabfrage, und öffnen Sie dann die Abfrage in der Entwurfsansicht.

  2. Geben Sie in einem Feld, auf das Sie einen Parameter anwenden möchten, in der Zeile Kriterien den Text, der im Parameterdialogfeld angezeigt werden soll, in eckigen Klammern ein, z. B.:

    [Startdatum]

    Beim Ausführen der Parameterabfrage wird die Eingabeaufforderung in einem Dialogfeld ohne eckige Klammern angezeigt.

    Für die Parametereingabeaufforderung können Sie auch einen Ausdruck verwenden, z. B.:

    Zwischen [Start Date] Und [End Date]

    Hinweis : Für jede Parametereingabeaufforderung wird ein separates Dialogfeld angezeigt. Im zweiten Beispiel werden zwei Dialogfelder angezeigt: ein Dialogfeld zur Eingabe des Startdatums und ein Dialogfeld zur Eingabe des Enddatums.

  3. Wiederholen Sie den zweiten Schritt für jedes Feld, dem Sie Parameter hinzufügen möchten.

Anhand der vorhergehenden Schritte können Sie jedem der folgenden Abfragetypen einen Parameter hinzufügen:

  • Auswahlabfrage

  • Kreuztabellenabfrage

  • Anfügeabfrage

  • Tabellenerstellungsabfrage

  • Aktualisierungsabfrage

Auch einer Union-Abfrage kann ein Parameter hinzugefügt werden.

  1. Öffnen Sie die Union-Abfrage in der SQL-Ansicht.

  2. Fügen Sie eine WHERE-Klausel hinzu, die alle Felder enthält, in denen Sie zur Eingabe eines Parameters aufgefordert werden sollen.

    Ist eine WHERE-Klausel bereits vorhanden, prüfen Sie, ob die Felder, für die eine Eingabeaufforderung verwendet werden soll, bereits in der Klausel enthalten sind, und fügen Sie sie hinzu, wenn das nicht der Fall ist.

  3. Anstelle eines Kriteriums wird in der WHERE-Klausel jetzt eine Parametereingabeaufforderung verwendet.

Abgleich zwischen dem Teil eines Feldwerts und einer Parameterzeichenfolge

Möglicherweise möchten Sie die Anwendung eines Parameters in Ihrer Abfrage etwas variabler gestalten. Die Abfrage soll eine Textzeichenfolge mit einem beliebigen Teil eines Felds abgleichen. Dazu verwenden Sie das Schlüsselwort Wie in Kombination mit Platzhalterzeichen. In Ihrer Abfrage soll beispielsweise eine Eingabeaufforderung für das Ursprungsland (die Ursprungsregion) angezeigt werden, die als erfüllt gilt, wenn der relevante Feldwert die Parameterzeichenfolge enthält. Gehen Sie dabei folgendermaßen vor:

  1. Erstellen Sie eine Auswahlabfrage, und öffnen Sie dann die Abfrage in der Entwurfsansicht.

  2. Geben Sie in der Zeile Kriterien des Felds für den Parameter, die angewendet werden soll, wie "*" & [, geben Sie den Text, die Sie verwenden möchten, verwenden Sie als Aufforderung, und geben Sie dann ] & "*".

    Beim Ausführen der Parameterabfrage wird die Eingabeaufforderung im Dialogfeld ohne eckige Klammern und ohne das Schlüsselwort Wie sowie die Platzhalterzeichen angezeigt.

  3. Wird der Parameter für die Abfrage akzeptiert, wird er mit Werten abgeglichen, die die Parameterzeichenfolge enthalten. Die Parameterzeichenfolge us entspricht beispielweise allen Zeilen, in denen das Parameterfeld den Wert "Australien" oder "USA" enthält.

Mit dem Schlüsselwort Wie und Platzhalterzeichen können Sie außerdem angeben, dass ein Parameter mit der Zeichenfolge am Anfang oder Ende eines Feldwerts übereinstimmen soll. Soll er mit dem Anfang eines Feldwerts übereinstimmen, verzichten Sie auf die Anführungszeichen, das Platzhalterzeichen und das kaufmännische Und-Zeichen (&), die vor der öffnenden eckigen Klammer stehen. Soll der Parameter dem Ende eines Feldwerts entsprechen, verzichten Sie auf das kaufmännische Und-Zeichen, die Anführungszeichen und das Platzhalterzeichen, die hinter der schließenden eckigen Klammer stehen.

Abgleich auf Grundlage ungleicher Werte

Möglicherweise möchten Sie einen Parameter auflisten, doch anstatt die Abfrage, die Zeilen mit einem übereinstimmenden Wert zurück, die Sie vielleicht der Abfrage Zeilen zurückgeben, für die andere Vergleichskriterien als WAHR ausgewertet wird. Angenommen, möchten Sie ein Jahr Abfragen und Zeilen, die größer als die Parameterzeichenfolge der Wert des Jahres darin zurückgeben. Dazu geben Sie einen Vergleichsoperator links neben der ersten Quadrat Klammer, die die Aufforderung, z. B. einschließt> [Jahr:].

Seitenanfang

Angeben von Parameterdatentypen

Sie können auch angeben, welche Art von Daten ein Parameter akzeptieren soll. Sie können den Datentyp für jeden beliebigen Parameter angeben, doch ist es besonders wichtig, den Datentyp für numerische Daten, Währungsdaten oder Datums-/Uhrzeitdaten festzulegen. Wenn Sie den Datentyp angeben, den ein Parameter akzeptieren soll, wird den Benutzern eine hilfreiche Fehlermeldung angezeigt, wenn sie den falschen Datentyp eingeben (beispielsweise Eingabe von Text an einer Stelle, an der eine Währung erwartet wird).

Hinweis : Wenn der Parameter so eingerichtet ist, dass er Textdaten akzeptiert, wird jede Eingabe als Text interpretiert, und es wird keine Fehlermeldung angezeigt.

Führen Sie die folgenden Schritte durch, um den Datentyp für Parameter in einer Abfrage anzugeben:

  1. Klicken Sie, während die Abfrage in der Entwurfsansicht geöffnet ist, auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Parameter.

  2. Geben Sie im Dialogfeld Abfrageparameter in der Spalte Parameter die Eingabeaufforderung für jeden Parameter ein, für den der Datentyp angegeben werden soll. Stellen Sie sicher, dass jeder Parameter der in der Zeile Kriterien des Abfrageentwurfsbereichs verwendeten Eingabeaufforderung entspricht.

  3. Wählen Sie in der Spalte Datentyp den Datentyp für jeden Parameter aus.

Seitenanfang

Erstellen von Formularen zum Erfassen von Parametern

Obwohl Paramaterabfragen ein integriertes Dialogfeld enthalten, über das die Parameter erfasst werden, sind sie nur mit Basisfunktionen ausgestattet. Wenn Sie zum Erfassen der Parameter ein Formular verwenden, können Sie folgende Funktionen gewinnbringend nutzen:

  • Einsatz datentypspezifischer Steuerelemente, z. B. Kalendersteuerelemente für Datumswerte

  • Dauerhaftes Speichern der erfassten Parameter, sodass sie in mehr als einer Abfrage verwendet werden können

  • Bereitstellung von Kombinationsfeldern oder Listenfeldern für die Parametererfassung, die die Auswahl aus einer Liste verfügbarer Datenwerte ermöglichen

  • Bereitstellung von Steuerelementen für andere Funktionen, wie z. B. das Öffnen oder Aktualisieren einer Abfrage

Führen Sie die folgenden Schritte aus, um ein Formular zum Erfassen von Parametern zu erstellen:

Schritt 1: Erstellen eines Formulars, das Eingaben akzeptiert

Schritt 2: Erstellen eines Moduls, das prüft, ob das Parameterformular bereits geladen ist

Schritt 3: Erstellen einer Makrogruppe zur Steuerung des Formulars

Schritt 4: Hinzufügen der Befehlsschaltflächen "OK" und "Abbrechen" zum Formular

Schritt 5: Verwenden der Formulardaten als Abfragekriterien

Schritt 1: Erstellen eines Formulars, das Eingaben akzeptiert

  1. Klicken Sie auf der Registerkarte Erstellen in der Gruppe Formulare auf Formularentwurf.

  2. Drücken Sie in der Entwurfsansicht die Taste F4, um das Eigenschaftsblatt anzuzeigen, und geben Sie dann die in der folgenden Tabelle gezeigten Formulareigenschaften ein.

Eigenschaft

Einstellung

Beschriftung

Geben Sie den Namen ein, der in der Titelleiste des Formulars angezeigt werden soll.

Standardansicht

Einzelnes Formular

Formularansicht zulassen

Ja

Datenblattansicht zulassen

Nein

PivotTable-Ansicht zulassen

Nein

PivotChart-Ansicht zulassen

Nein

Bildlaufleisten

Keine

Datensatzmarkierer

Nein

Navigationsschaltflächen

Nein

Rahmenart

Dialog

  1. Klicken Sie für jeden Parameter, die Sie das Formular zum sammeln möchten in der Gruppe Steuerelemente auf der Registerkarte Entwurf auf Textfeld.

  2. Legen Sie die Eigenschaften für die Textfelder fest, wie in der folgenden Tabelle dargestellt.

Eigenschaft

Einstellung

Name

Geben Sie einen beschreibenden Namen für den Parameter ein, z. B. Startdatum.

Format

Wählen Sie ein Format aus, den den Datentyp des Parameterfeld wiedergibt, z. B. Standarddatum für ein Datumsfeld.

  1. Speichern Sie das Formular, und geben Sie ihm einen Namen, wie z. B. Datumsbereich.

Schritt 2: Erstellen eines Moduls, das prüft, ob das Parameterformular bereits geladen ist

  1. Klicken Sie auf der Registerkarte Erstellen in der Gruppe Andere auf Modul. Wenn dieser Befehl nicht verfügbar ist, klicken Sie auf den Pfeil unter entweder der Schaltfläche Makro oder der Schaltfläche Klassenmodul, und klicken Sie dann auf Modul.

    In Visual Basic Editor wird ein neues Modul geöffnet.

  2. Geben Sie in Visual Basic Editor den folgenden Code ein (oder kopieren und fügen Sie ihn ein):

    Function IsLoaded(ByVal strFormName As String) As Boolean
    Dim oAccessObject As AccessObject
    Set oAccessObject = CurrentProject.AllForms(strFormName)
    If oAccessObject.IsLoaded Then
    If oAccessObject.CurrentView <> acCurViewDesign Then
    IsLoaded = True
    End If
    End If
    End Function
  3. Speichern Sie das Modul, und schließen Sie anschließend Visual Basic Editor.

Schritt 3: Erstellen einer Makrogruppe zur Steuerung des Formulars

  1. Klicken Sie auf der Registerkarte Erstellen in der Gruppe Andere auf Makro. Wenn dieser Befehl nicht verfügbar ist, klicken Sie auf die Schaltfläche Modul oder Klassenmodul und dann auf Makro.

  2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Alle Aktionen anzeigen.

  3. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Namen von Makros, um die Spalte Makroname anzuzeigen.

  4. Geben Sie den Namen eines Makros, z. B. Dialogfeld Öffnen, in der Spalte Makroname ein.

  5. Klicken Sie auf die Zelle in der Spalte Aktion neben dem Makronamen des neuen, klicken Sie auf den Dropdown-Pfeil, und klicken Sie dann auf OpenForm.

  6. Legen im Raster Aktionsargumente (befindet sich unterhalb des Entwurfsbereichs Makros) Aktionsargumente, wie in der folgenden Tabelle aufgelistet.

Argument

Einstellung

Formularname

Geben Sie den Namen, dass Sie Ihre Parameter Meldeformular gegeben hat.

Ansicht

Formular

Datenmodus

Bearbeiten

Fenstermodus

Dialog

  1. Klicken Sie in der nächsten Zelle Aktion auf AbbrechenEreignis, um eine zweite Aktion hinzuzufügen. Diese Aktion wird verwendet werden, um den Vorgang abzubrechen, Vorschau oder beim Drucken des Berichts, wenn ein Benutzer auf das Formular auf die Schaltfläche Abbrechen klickt.

  2. Wenn die Spalte Bedingung nicht angezeigt wird, klicken Sie in der Gruppe Einblenden/Ausblenden auf der Registerkarte Entwurf auf Bedingungen.

  3. Geben Sie in der Spalte Bedingungnicht IsLoaded, gefolgt von einer öffnenden Klammer und ein Fragezeichen, gefolgt vom Namen gegeben hat Meldeformular für Parameter, und klicken Sie dann gefolgt von einem Anführungszeichen und eine schließende Klammer ein. Beispielsweise wenn Sie das Formular Parameter Collection benannt wird, geben Sie nicht IsLoaded("Parameter Collection").

  4. Geben Sie in der nächsten leeren Zeile des Rasters Entwurf Makro eine neue Makroname, z. B. Dialog schließenaus.

  5. Klicken Sie in der angrenzenden Zelle Aktion klicken Sie auf den Dropdown-Pfeil, und klicken Sie dann auf Schließen. Diese Aktion wird von der Abfrage zum Schließen des Formulars Parameter verwendet werden. Legen Sie die Aktionsargumente aus, wie in der folgenden Tabelle aufgelistet.

Argument

Einstellung

Objekttyp

Formular

Objektname

Geben Sie den Namen, dass Sie Ihre Parameter Meldeformular gegeben hat.

Speichern

Nein

  1. Geben Sie in der nächsten leeren Zeile des Rasters Entwurf Makro eine neue Makroname, wie z. B. OKaus. Klicken Sie in der angrenzenden Zelle Aktion auf den Dropdown-Pfeil, und klicken Sie dann auf SetzenWert. Meldeformular für Parameter ausgeblendet, wenn der Benutzer auf OK klickt, wird diese Aktion verwendet werden. Legen Sie die Aktionsargumente aus, wie in der folgenden Tabelle aufgelistet.

Argument

Einstellung

Element

Sichtbar

Ausdruck

Nein

  1. Geben Sie in der nächsten leeren Zeile des Rasters Entwurf Makro eine neue Makroname, z. B. Abbrechen. Klicken Sie in der angrenzenden Zelle Aktion klicken Sie auf den Dropdown-Pfeil, und klicken Sie dann auf Schließen. Meldeformular für Parameter zu schließen, wenn der Benutzer auf Abbrechen klickt, wird diese Aktion verwendet werden. Legen Sie die Aktionsargumente aus, wie in der folgenden Tabelle aufgelistet.

Argument

Einstellung

Objekttyp

Formular

Objektname

Geben Sie den Namen, dass Sie Ihre Parameter Meldeformular gegeben hat.

Speichern

Nein

  1. Speichern Sie und schließen Sie die Makrogruppe. Geben Sie der Makrogruppe einen Namen ein, beispielsweise Datum Bereich Makro.

Schritt 4: Hinzufügen der Befehlsschaltflächen "OK" und "Abbrechen" zum Formular

  1. Öffnen Sie das Formular Datumsbereich in der Entwurfsansicht erneut.

  2. Stellen Sie sicher, dass Steuerelement-Assistenten verwenden, in der Gruppe Steuerelemente auf der Registerkarte Entwurf nicht aktiviert ist.

  3. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Steuerelemente auf Schaltfläche.

  4. Zeigen Sie auf dem Formular mit der Maus auf eine Stelle unter den Textfeldern, und ziehen Sie dann die Maus, um die Befehlsschaltfläche OK zu erstellen.

  5. Wenn das Eigenschaftenblatt nicht sichtbar ist, drücken Sie F4, um es anzuzeigen.

  6. Legen Sie die Eigenschaftswerte der Schaltfläche OK fest, wie in der folgenden Tabelle dargestellt:

Eigenschaft

Einstellung

Name

OK

Beschriftung

OK

Standard

Ja

BeimKlicken

Geben Sie den Namen des Makros, beispielsweise Datum Range.OKaus.

  1. Erstellen Sie die Befehlsschaltfläche Abbrechen, und legen Sie die Eigenschaftswerte fest, wie in der folgenden Tabelle dargestellt:

Eigenschaft

Einstellung

Name

Abbrechen

Beschriftung

Abbrechen

BeimKlicken

Geben Sie den Namen des Makros, beispielsweise Datum Range.Cancelaus.

  1. Speichern und schließen Sie das Formular.

Schritt 5: Verwenden der Formulardaten als Abfragekriterien

  1. Öffnen Sie die Abfrage in der Entwurfsansicht.

  2. Geben Sie die Kriterien für die Daten ein. Verwenden Sie das Formulare -Objekt, den Namen des Formulars und den Namen der Steuerelement:

    • In einer Access-Datenbank (ACCDB oder MDB) verwenden Sie beispielsweise für ein Formular namens Datumsbereich in der Abfrage den folgenden Ausdruck für den Verweis auf die Steuerelemente "Startdatum" und "Enddatum":

      Zwischen [Formulare] ! [ Datumsbereich]! [ StartDate ] und [Formulare]! [Datumsbereich]! [ Enddatum ]

Seitenanfang

Hinweis : Haftungsausschluss für maschinelle Übersetzungen: Dieser Artikel wurde mithilfe eines Computersystems und ohne jegliche Bearbeitung durch Personen übersetzt. Microsoft bietet solche maschinellen Übersetzungen als Hilfestellung für Benutzer ohne Englischkenntnisse an, damit Sie von den Informationen zu Produkten, Diensten und Technologien von Microsoft profitieren können. Da es sich bei diesem Artikel um eine maschinelle Übersetzung handelt, enthält er möglicherweise Fehler in Bezug auf (Fach-)Terminologie, Syntax und/oder Grammatik.

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×