Keine datensätze werden in der liste angezeigt

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 :wink: ü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 & „’ ;“

txt_Count = lst_view.ListCount - 1
lst_view.RowSource = StrSQL
lst_view.Requery

End Sub

mfg Tim

Hallo Tim,

es tut mir Leid, ich kann Dir nicht helfen. Ist schon zu lange her. Wußte garnicht mehr, daß ich mich als Expertin eingetragen hatte. Werde ich ändern.

Ich hoffe, dir kann jemand Anderes helfen

freundliche Grüße von Marita

habs selbst rausgefunden … die hochkommas waren schuld , aber danke trotzdem , war schon fast am verzweifeln :smiley:

BIG THX !

Hallo Tim,

ersetze doch mal die Eingabefunktion, also da wo das Textfeld gefüllt wird, durch eine Zuweisung eines Wertes, der garatiert zu Ergebnissen führen sollte und lass es laufen.

Kommen Ergebnisse, dann liegt es an der Eingabefunktion.
Vielleicht werden Leerzeichen mit eingestellt, die dann
zu leeren Ergebniszeilen führen.

Gruß Peter

Hallo Tim, ich bin da nicht der Fachmann für diese Frage.
Sorry, habe keine Ahnung!
Gruß Paul W.

Tut mir leid. Hierzu finde ich auch keine Lösung.

mfg Günter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Tim,

leider konnte ich nicht früher antworten, da ich beruflich unterwegs war.

  1. Die Konstante str1SQL hat 1 Tippfehler -> ON tbl_Mensch.ID_Mensch = tbl_Menschenanazhl.FK_ID_Mensch

das soll doch bestimmt tbl_Menschenanzahl und nicht tbl_Menschenanazhl sein

  1. Die Namen der Felder und Tabellen sind eindeutig und schlüssig, aber warum steht am Anfang der Konstanten tbl_Menschenanzahl.tbl_Menschenanzahl?

  2. Woher kommt die Variable txt_anzahl? Sie ist weder in der Routine definiert noch verweist sie auf ein Formular. Ggf. die Variable noch via CStr als String definieren.

Ich habe versucht, die Tabellen und Routinen nachzubauen, aber dazu fehlen mir noch einige Infos (Siehe txt_anzahl, aber auch txt_count sowie lst_view sind nicht genauer definiert).

Als Tipp zur Fehlersuche: Baue mal die „On Error goto“ Routine ein:
On Error GoTo Err_los_click

Exit_los_Click:
Exit Sub

Err_los_Click:
MsgBox Err.Number & " " & Err.Description
Resume Exit_los_Click

Wenn die Routine ohne Fehler durchläuft, stimmt etwas in der SQL-Definition nicht. Die dann in eine neue Abfrage in der SQL-Ansicht kopieren und mal starten. Je nach Ergebnis ggf. anpassen.
Wenn eine Fehlermeldung kommt, dann nachlesen, was die Ursache sein kann bzw. hier wieder posten.

Ein schönes langes Wochenende
Jekyll

PS: Bin 4 Tage im Internet-freien Gebiet :frowning: Kann mich also frühestens Montag wieder melden.

Hallo,

hierzu kann ich leider nicht helfen.

mfg
Martin

vielen dank für die antwort :smile:
hat sich geklärt, der einzige fehler in dem code waren bei der where abfrage die hochkommas …
vielen dank :smile: