Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Kreuzabfrage mit Parameterabfrage kombinieren?





Frage

Hallo, ich möchte in Access eine Kreuztabellenabfrage erstellen, die jedoch nur die Datensätze anzeigt, die den Kriterien entsprechen die ein user eingibt (wie bei einer Parameterabfrage). Jedoch scheint das nciht möglich zu sein? Wie schaffe ich es dennoch dass gesuchte Datensätze in einer Kreuztabelle ausgegeben werden? danke und gruß! Adriana

Antwort 1 von El Bobbele

Hallo Adriana!

Klar kann eine Kreuztabellenabfrage Parameter entgegennehmen. Öffne die Abfrage im Entwurf und füge die benötigten Parameter über das Menü "Abfrage", "Parameter" hinzu. Erstelle den Bedingungsausdruck in der Kriterienzeile der betroffenen Spalte und verwende dort den Parameternamen, der an dieser Stelle in eckige Klammern [Parametername] gefasst wird (wichtig!).

Falls die Bedingung in einer separaten Spalte formuliert werden soll, dann trage "Bedingung" in der Zeile "Funktion" ein und dann wie gewohnt den Parameter in der Zeile "Kriterien" verarbeiten.

Gruss
El Bobbele

Antwort 2 von Adriana

Hallo Bobbele!

Danke dir, hat soweit ganz gut geklappt!:) Ich habe zwei Parameter und mit dem einen funktioniert es sehr gut.

Der andere Parameter soll jedoch ein DatumsZEITRAUM sein und da weiß ich nicht wie es geht.

Ich habs versucht mit ' Zwischen [Lieferdatum] Und [Lieferdatum]', das klappt nicht, dann fragt er nur einmal nach dem datum nach (kein zeitraum also). Dann habe ich es so versucht: 'Zwischen [Anfangsdatum] Und [Enddatum]', geht aber auch nicht weil Anfangsdatum oder Enddatum kein Feldname ist!

Ich hoffe du kannst mir nochmal helfen,

danke Adriana

Antwort 3 von El Bobbele

Hallo Adriana!

Das mit Anfangsdatum und Enddatum war gar nicht so verkehrt. Die Fehler sollten nur in eckige Klammern gefasst werden und über das Menü "Abfrage", "Parameter" legst du dann zwei Parameter von Datentyp Datum/Uhrzeit mit den Namen Anfangsdatum und Enddatum.

Wenn du zweimal [Lieferdatum] in der Bedingung angibst, dann wird nur einmal gefragt. Anschliessend hast du dann als Bedingung dastehen (Beispiel):

Zwischen #09/06/2004# Und #09/06/2004#

Das macht natürlich keinen Sinn. Deswegen braucht jeder Parameter sein eigenen Namen. :-)

In der SQL-Ansicht sollte sowas dann ungefähr so aussehen:

PARAMETERS Anfangsdatum DATETIME, Enddatum DATETIME;
SELECT Dies FROM Das
WHERE JenesDatum Between [Anfangsdatum] And [Enddatum];

Gruss
El Bobbele

Antwort 4 von Adriana

Super, es klappt! :)

Danke!

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: