Hallo,
ich versuche schon seit tagen ein programm zu entwerfen, das mir unter der bedingung von einem textfeld(eingabe) daten aus meinen verknüpften tabellen anzeigt, jedoch zeigt er mir nichts an, nur der count funktioniert … wenigstens etwas über schnelle hilfe würde ich mich sehr freuen !
Hier der Code :
Const str1SQL = "SELECT tbl_Menschenanzahl.tbl_Menschenanzahl, tbl_Mensch.Essensmenge, tbl_Mensch.Name, tbl_Kategorie.Kategorie, tbl_Unterkategorie.Unterkategorie, tbl_Standorte.Standort, tbl_Mensch.Alter FROM tbl_Unterkategorie INNER JOIN ((tbl_Kategorie INNER JOIN tbl_Mensch ON tbl_Kategorie.ID_Kategorie = tbl_Mensch.FK_ID_Kategorie) INNER JOIN (tbl_Standorte INNER JOIN tbl_Menschenanzahl ON tbl_Standorte.ID_Heim = tbl_Menschenanzahl.FK_ID_Standort) ON tbl_Mensch.ID_Mensch = tbl_Menschenanazhl.FK_ID_Mensch) ON tbl_Unterkategorie.ID_Unterkategorie = tbl_Mensch.FK_ID_Unterkategorie "
Private Sub los_Click()
Dim StrSQL As String
StrSQL = str1SQL & " Where tbl_Mensch.Essensmenge =’" & txt_anzahl & „’ ;“
Hallo Tim,
um deine Frage beantworten zu können habe ich zunächst selbst ein paar Fragen.
Wonach soll denn selectiert werden, ist txt_anzahl eine numerische Variable und wenn ja, wofür sind denn die Hockkommata?
(tst = txt / Anzahl = numerisch?)
Liefert das SQL Statement ein Ergebnis wenn du keine Selection vornimmst und gibt es Gründe dafür eine Konstante Variable zu verwenden?
Lieber Tim,
es tut mir leid, ich kann mit deiner SQL-Abfrage nichts anfangen. Mach doch eine ACCESS-Abfrage draus, dann kann ich dir vielleicht helfen!
txt_anzahl ist ein text feld,in das ein wert eingegeben werden kann und dann die tabelle nur die menschen anzeigt, die diese bestimmte essensmenge oder weniger zu sich nehmen.
das mit den hochkomma hab ich so aufgenommen im access buch … aber anscheinend nicht ganz richtig ?
wenn ich kein ergebnis angebe , sollte auch niemand aufgelistet werden, da der wert gleich null wäre, dachte ich mir …
Hallo,
ohne die genauen Details der DB zu kennen (wäre doch ganz hilfreich, zumindest mal die Relationen und ein Screenshot des fraglichen Formulars) - ich würde mal die DOMWERT-Funktionen (engl.dlookup)ausprobieren. Schau mal hier http://www.office-loesung.de/ftopic197316_0_0_asc.php kommt das dem Problem irgendwie nahe??
VG
S.H.
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo,
ok sollte kein Problem sein.
Um ein Textfeld abzufragen brauchst du die Hochkomma, um ein Zahlenfeld abzufragen sind sie falsch. Wenn es sich bei dem Feld in deiner Tabelle um ein numerisches Feld handelt, dann nimm die Hochkommata aus der Abfrage raus.
Nichts anzugeben bei einer Abfrage die sich auf ein Zahlenfeld bezieht ist auch nicht besonders sinnvoll, nichts ist NULL, das führt dann möglicherweise zu einem Fehler, also lieber eine 0 als Standard vorgeben, wenn es auch Personen gibt, bei denen eine 0 in diesem Feld stehen kann, dann setze eben 99999 ein, das sollte niemand haben.
Teste die geänderte Abfrage, im Fehlerfall nächste Frage von mir, funktioniert die Abfrage ohne Selektionskritieren?