Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Hilfe bei Kombifeld und Formular

Begonnen von Dr.Cornwallis, Mai 12, 2016, 14:10:40

⏪ vorheriges - nächstes ⏩

Dr.Cornwallis

#30
IHR SEID DIE BESTEN!!!!
Jetzt habe ich es verstanden(hat etwas gedauert), ich musste einfach mein Excel Denken deaktivieren :-).
Daten werden erfasst, mit einer Anfügeanfrage füge ich täglich die Werte an den Table an(werde ich noch automatisieren). Somit fällt auch dieser dämliche Abgleich (ob neuer oder ausgeschiedener MA) weg, Hammer!

Jetzt habe ich allerdings noch eine letzte Hürde(der eigentliche Grund für diesen Thread):
Mit meinen drei Kombifeldern im Formular kann ich nun die Abteilung und das Datum aus den Tables auswählen(von und bis).

Wie muss der VBA Code des Buttons(Befehl57_Click()) aussehen damit folgendes passiert:

1. Kombifeld = Abteilung auswählen (Daten vom Table Rohdaten)
2. Kombifeld = von(Datum) (Daten vom Table Korridor) Format tt.mm.jjjj
3. Kombifeld = bis(Datum) (Daten vom Table Korridor) Format tt.mm.jjjj

Nun soll ein Bericht(bereits vorhanden) geöffnet werden(bis dahin habe ich den Code), der die Werte der Abteilung im ausgewählten Zeitraum ausgibt.

So sieht mein Code bis jetzt aus:

DoCmd.OpenReport "Bericht Korridor", acViewPreview, wherecondition:="ZUBA = '" & Me!txtOrgEinh.Value & "' AND Datum >= " & Me!datvon.Value & " AND Datum <= " & Me!datbis.Value

Vielen Dank für eure Hilfe!


Gruß

Dr.

MzKlMu

Hallo,
das mit dem Datum geht so nicht. Datumswerte müssen SQL Konform verwendet werden entweder ISO Format (jjjj.mm.tt) oder US Format (mm.tt.jjjj).
Die Formateinstellung des Datumsfeldes ist dabei unbedeutend.

Siehe hierzu:
FAQ 6.8 Datum an SQL-String übergeben
Gruß Klaus

MaggieMay

Hallo,

das Datenfeld ZUBA ist vom Typ Text? Dann sollte es folgendermaßen klappen:
DoCmd.OpenReport "Bericht Korridor", acViewPreview, , "ZUBA = '" & Me!txtOrgEinh & "' AND Datum >= " & Format(Me!datvon, "\#yyyy\/mm\/dd\#") & " AND Datum <= " & Format(Me!datbis, "\#yyyy\/mm\/dd\#")

BTW:
"Datum" ist ein reservierter Name und sollte besser nicht für eigene Objekte verwendet werden.

Freundliche Grüße
MaggieMay

Dr.Cornwallis

ZUBA ist eine Zahl, das Datum ändere ich noch um in das og. Format um. Ich melde mich sobald ich fertig bin.

Danke nochmal!

Lg

Mario

MaggieMay

ZitatZUBA ist eine Zahl
Dann lass die Hochkommata weg.

Zitatdas Datum ändere ich noch um
Was meinst du damit? Das Datenfeld sollst du nicht ändern, aber du musst die Format-Funktion so wie oben gezeigt auf die Formularfelder anwenden.
Freundliche Grüße
MaggieMay

Dr.Cornwallis

Zitat von: MaggieMay am Mai 19, 2016, 12:05:14
ZitatZUBA ist eine Zahl
Dann lass die Hochkommata weg.

Zitatdas Datum ändere ich noch um
Was meinst du damit? Das Datenfeld sollst du nicht ändern, aber du musst die Format-Funktion so wie oben gezeigt auf die Formularfelder anwenden.

Ich habe den Inhalt im Feld umgeändert (von dd.mm.yyyy auf yyyy.mm.dd)
Das Feld selbst habe ich umbenannt auf "Periode" und den Code etc. ebenfalls angepasst.
Klicke ich den Button, popt ein Fenster auf wo ich die Abteilung(ZUBA) eingeben muss, anschließend auch das Datum obwohl alles bereits in den Kombifeldern ausgewählt ist.

Was mache ich da falsch?




Dr.Cornwallis

Ok die Auswahl funktioniert jetzt nach dem Entfernen der Hochkommas :-).

Eine Frage noch:

wie setze ich die Beziehung zwischen den Tables "Rohdaten" und "Korridor"?
Die OrgEinh soll dafür als Schlüssel dienen(ist in beiden Tables enthalten).

Danke !

Gruß Dr.

MzKlMu

Hallo,
ZitatIch habe den Inhalt im Feld umgeändert (von dd.mm.yyyy auf yyyy.mm.dd)
nein, das ist völlig bdeutungslos. Das habe ich auch oben geschrieben. Das Datum muss in dem SQL String formatiert werden, wie von MaggieMay beschrieben und in meinem Link (FAQ...) erläutert. Das hat mit dem eingestellten Format nichts zu tun, das ist wurscht.

ZitatDie OrgEinh soll dafür als Schlüssel dienen(ist in beiden Tables enthalten).
Über diese Felder läuft auch die Beziehung.
Gruß Klaus

Dr.Cornwallis

Ich denke ich habe die Hochkommas falsch entfernt, jetzt wurde der Rest des Codes aus kommentiert.
Bitte noch einmal für Idioten, wo muss ich die Hochkommas entfernen damit die "ZUBA" als Zahl definiert wird?

Gruß und Danke!

MaggieMay

Zitatwo muss ich die Hochkommas entfernen
Du musst halt unterscheiden zwischen Hochkomma (') und Gänsefüßchen ("), dann gibt es eigentlich nur eine Wahl.
Freundliche Grüße
MaggieMay

Dr.Cornwallis

Jetzt habe ich einen Syntax Fehler(siehe Screenshot)

DoCmd.OpenReport "Bericht Korridor", acViewPreview, , "ZUBA = " & Me!txtOrgEinh & "' AND Periode >= " & Format(Me!datvon, "\#yyyy\/mm\/dd\#") & " AND Periode <= " & Format(Me!datbis, "\#yyyy\/mm\/dd\#")

MzKlMu

Hallo,
auch für Az (") und Hochkomma (') gilt grundsätzlich nur paarweise verwendbar. Daher hilft zählen.  ;D
Das Hochkomma vor And ist falsch.
Gruß Klaus

Dr.Cornwallis

Sorry, ja das habe ich übersehen :-).
Dennoch kommt jetzt wieder dieses dämliche Fenster "Parameterwert eingeben" obwohl alles bereits in den Kombifeldern ausgewählt ist.
Es ist zum verzweifeln...

MaggieMay

Ist denn "txtOrgEinh" der Name des Kombifeldes?

Was genau steht denn in dem Parameterfenster, wofür wird die Eingabe verlangt?

Und/oder:
Setze mal einen Haltepunkt in den Code und schau dir an, was die einzelnen Steuerelemente tatsächlich enthalten.
Freundliche Grüße
MaggieMay

Dr.Cornwallis

Zitat von: MaggieMay am Mai 19, 2016, 14:45:00
Ist denn "txtOrgEinh" der Name des Kombifeldes?

Was genau steht denn in dem Parameterfenster, wofür wird die Eingabe verlangt?

Und/oder:
Setze mal einen Haltepunkt in den Code und schau dir an, was die einzelnen Steuerelemente tatsächlich enthalten.

Habs jetzt so weit dass das Formular meine Eingaben akzeptiert, nur wird einfach nichts gefiltert.
Ich habe jetzt mal die Beziehung unter die Lupe genommen, dort steht bei Beziehungstyp: Undefiniert.
Glaube es liegt auch daran, ich wähle eine ZUBA(Rohdaten) aus, anhand der OrgEinh müsste er dann die dazugehörigen Daten finden, da die OrgEinh der beiden Tables verknüpft sind(siehe Screenshot).
Schätze mal es liegt am Beziehungstyp...