Hallo,
ich löse in einem Suchformular via Commandbutton einen select aus
Private Sub cmdSuche_Click()
Dim SQL As String
SQL = "SELECT tblQuartette.SpielID_F, tblSpiele.SpielNr, tblSpiele.Ausgabejahr, [QuartettKz] & [KartenNr] AS Karte, tblQuKarten.Kartenbezeichnung " _
& " FROM tblSpiele INNER JOIN (tblQuartette INNER JOIN tblQuKarten ON tblQuartette.QuartettID = tblQuKarten.QuartettID_F) ON tblSpiele.SpielID = tblQuartette.SpielID_F " _
& " WHERE Kartenbezeichnung LIKE '*" & Me.txtSuchbegriff & "*' " _
& " ORDER BY tblQuKarten.Kartenbezeichnung "
Me.lstKarten.RowSource = SQL
Me.lstKarten.Requery
End Sub
Das funktioniert soweit auch alles. Da das Ergebnis an ein Listenfeld übergeben wird, sehe ich nicht, wie viele Datensätze vom select gefunden wurden. Ist nicht tragisch, aber ist auch nicht schlecht, wenn ich das sehen würde. Diesen Count kann man ja in einem Textfeld anzeigen lassen, oder? Wenn ja, erledigt man das mit dem Zusatz "count" im select und übermittelt das Ergebnis an das Textfeld? Wie geht das?
Hallo,
ein Listenfeld hat die Eigenschaft "ListCount", deren Wert an ein Textfeld übergeben werden kann.
Siehe auch die VBA-Hilfe zu "Listcount".
Listen- und Kombifelder haben die Eigenschaft ListCount. (https://msdn.microsoft.com/de-de/library/office/ff845049.aspx)
BTW: Die letzte Anwisung ist überflüssig.
Die eigentliche Frage ist ja bereits von DF6GL sehr gut beantwortet worden.
Ich habe noch einen Hinweis am Rande:
Zitat von: derilzemer am Juli 15, 2017, 15:22:24
...
Me.lstKarten.RowSource = SQL
Me.lstKarten.Requery
End Sub
Das Ändern der Datensatzherkunft mit
.RowSource = SQL löst bereits implizit die Aktualisierung der Listbox aus. Das anschließende
Requery bewirkt also eine zweite, unnötige Ausführung der Abfrage. Du kannst (solltest) es weglassen.
Hi,
okay, ich habe die letzte Anweisung entfernt, danke.
Wegen dem Listcount, wie ich das mache muss werde ich jetzt erst mal lesen und versuchen zu verstehen.
Hallo,
danke für den Gedankenanstoß. Im Textfeld ist es einfach über den Steuerelementinhalt zu lösen.
=[lstKarten].[ListCount]
Gruß Andreas