PDA

Vollständige Version anzeigen : Abfrage Kriterien mit "Oder"


Fabio
05.02.2001, 21:36
Hello!

Hab ein kleines Problem schon zum Teil gelöst. Doch noch nicht vollständig:

Ich will für eine Abfrage als Kriterium den Inhalt zweier Formularfelder festlegen. Allerdings sind diese beiden Felder in unterschiedlichen Formularen, von denen immer nur eines geöffnet ist. Diese Kriterien sind mit "oder" verknüpft.

Da nun eines der Felder bei einer Abfrage immer leer ist, kommt die Meldung, daß man für diese Feld daten eingeben soll. Mann kann dies zwar leer lassen und auf ok klicken, dann wird auch der Wert des Feldes mit Inhalt übernommen. Allerdings würde ich diese Meldung gerne übergehen.

Es soll also für die Abfrage das Kriterium der beiden gelten, welches Feld mit Inhalt belegt ist. Das leere Feld soll bei der Abfrage ignoriert werden.

Das Kriterium lautet folgender maßen:

"[Formulare]![Statistik].[Kombinationsfeld3] Oder [Forumlare]![Störungseingabe].[Kombinationsfeld45]"

Danke und Gruß
Fabio

andi
06.02.2001, 07:04
Hallo, Fabio.

Über folgende kleine Prozedur kommst du an den Namen des aktuellen Formulars ran:

Dim AktFormular As Form
Set AktFormular = Screen.ActiveForm
MsgBox "Das aktuelle Formular ist " & AktFormular.Name 'nur zur Kontrolle

Den Namen des Formulars jetzt für nen SQL-Code verbasteln:

If AktFormular.Name = "statistik" Then
DoCmd.RunSQL "SELECT test.NachName, test.Vorname, test.Abt FROM test WHERE ((test.NachName)=[forms]![statistik]![Kombinationsfeld1]), -1"
End If
If AktFormular.Name = "Störungseingabe" Then
DoCmd.RunSQL "SELECT test.NachName, test.Vorname, test.Abt FROM Person WHERE ((test.NachName)=[forms]![störungseingabe]![Kombinationsfeld2]), -1"
End If
End Sub

Viel Glück
andi

Heathen
06.02.2001, 07:21
Hallo Fabio,
gib in den Kriterien jeweils auch "NULL" als UND-Bedingung ein. Damit sollte es gehen