Variablen einbauen Access
Hallo zusammen,
Ich möchte in einer Abfrage eine Variable einbauen.
Jetzt habe ich ein Modul mit folgenden Code angelegt:
Der dazugehörige SQL Code meiner Abfrage sieht so aus:
Aber irgendwie klappt das nicht so wie ich mir das vorstelle.. beim öffnen der Abfrage(mit einem Button) erhalte ich folgenden Fehler:
"Ungültiger Prozeduraufruf oder ungültiges Argument"
Mit dieser Abfrage sollen alle Datensätze mit dem aktuellen Monat ausgewählt werden.
Danke für eure Hilfe!
Gruß
Dr.
Ich möchte in einer Abfrage eine Variable einbauen.
Jetzt habe ich ein Modul mit folgenden Code angelegt:
Option Compare Database
Global varJahrZahl As Variant
Global varMonatZahl As Variant
Global varTagZahl As Variant
Global varDatumWert As Variant
Global varVorDatumWert As Variant
Function holeWert(Art As Integer) As Variant
Select Case Art
Case 1
holeWert = varJahrZahl
Case 2
holeWert = varMonatZahl
Case 3
holeWert = varTagZahl
Case 4
holeWert = varDatumWert
Case 5
holeWert = varVorDatumWert
End Select
End Function
Der dazugehörige SQL Code meiner Abfrage sieht so aus:
SELECT Korridor_Daten.Periode, Korridor_Daten.Mitarbeiter, Korridor_Daten.PersNr, Rohdaten.Kostenstelle, Wochenstunden.Korridorstunden, Korridor_Daten.Anzahl
FROM (Rohdaten INNER JOIN Korridor_Daten ON Rohdaten.[OrgEinh#] = Korridor_Daten.OrgEinh) INNER JOIN Wochenstunden ON Korridor_Daten.PersNr = Wochenstunden.PersNummer
WHERE (((Korridor_Daten.Periode)>=DateSerial(CInt(holeWert(1)),CInt(holeWert(2)),1) And (Korridor_Daten.Periode)<=DateSerial(CInt(holeWert(1)),CInt(holeWert(2)+1),0)));
Aber irgendwie klappt das nicht so wie ich mir das vorstelle.. beim öffnen der Abfrage(mit einem Button) erhalte ich folgenden Fehler:
"Ungültiger Prozeduraufruf oder ungültiges Argument"
Mit dieser Abfrage sollen alle Datensätze mit dem aktuellen Monat ausgewählt werden.
Danke für eure Hilfe!
Gruß
Dr.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 305767
Url: https://administrator.de/forum/variablen-einbauen-access-305767.html
Ausgedruckt am: 19.04.2025 um 02:04 Uhr
2 Kommentare
Neuester Kommentar
Moin,
Hui, das is mal toller Code :P
3 Fragen dazu:
1. Für was brauchst du die Function HoleWert, wenn du sie im SQL eh immer mit festem Paramter aufrufst? Da wäre es doch sinnvoller direkt die Variablen zu verwenden.
2. Warum deklariest du alles als Variant, nur um dann alles von bzw nach Integer umzuwandeln?
3. Wie/Wo werden denn die Globals gefüllt?
lg,
Slainte
Hui, das is mal toller Code :P
3 Fragen dazu:
1. Für was brauchst du die Function HoleWert, wenn du sie im SQL eh immer mit festem Paramter aufrufst? Da wäre es doch sinnvoller direkt die Variablen zu verwenden.
2. Warum deklariest du alles als Variant, nur um dann alles von bzw nach Integer umzuwandeln?
3. Wie/Wo werden denn die Globals gefüllt?
lg,
Slainte