Ich habe noch ein letztes Problem wenn das gelöst ist bin ich fertig
So es geht sich um folgendes…
Wie bereits in einem Älteren Post angesprochen, will ich einen Filter in mein RS einbauen.
Dieser soll die zwei Spalten AB1 und AB2 Filtern.
Diese sollen unabhängig voneinander gefiltert werden.
Also mit einem „TextBoxAB1_Change“ ereignis für jeden eingegebenen wert zb:„A“ alle Zeilen aus dem Recordset Filtern in denen in AB1 ein A Vorkommt wie ZB A4.
Mein Ansatz war bis jetzt dieser:
CODE:
Private Sub FilterAB1txt_Change()
Dim rsFilter As String
Bei dieser Variante kommt alledings ein Fehler. Und zwar Folgender:
„Die Argumente sind vom falschen Typ, liegen außerhalb des Gültigkeitsbereiches oder sind miteinander unvereinbar.“
Dieser Fehler ist bei der 1. Anweisung.
Könnte mir gnädigerweise einer Helfen und n kleinen bis mittelgroßen Denkanstoß geben der mir die Problematik n bisl erklärt und n Lösungsansatz veranschaulichen?
So schön. Es Funktioniert. Nur wie setz ich den Filter zurück?
Ich hab versucht mir ein neues RS (rsFilter) zu Deklarieren das rsMain enthält. Das geht. Das rsFilter weise ich dem DGV zu. Aber ich kann es nicht zurück schreiben. Der Filter bleibt aktiv bzw beim Butten click Filter Löschen, ist die liste leer.
Warum auch immer *grml*
Gibt es villeicht eine einfache funktion oder sowas wie
rsFilter.Filter = Disablel oder sowas in der art?
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Das Einzige was ich gefunden habe, ist ein .Refresh auf die Datenbank.
Option Explicit
Private Sub Command1\_Click()
Dim su As String
su = "Coil\_Stack\_Pos = 1"
Adodc1.Recordset.Filter = su
End Sub
Private Sub Command2\_Click()
Adodc1.Refresh
End Sub
… oder einen neuen Filter setzen. Bei Strings würde " … ‚ZzzzZ‘" vermutlich wieder alles anzeigen. Wenn nur Zahlen >= 0 vorkommen, dann eben Filtern >=0 … (.Refresh ist bei großen Datenbanken langsam.)
So ich habs hinbekommen mit hier und da n haufen abfragen ob n filter da is hab dann die aktualisierung und alle events mit if abfragen versehen die checken ob er gerade die checkboxen löscht hab
rsMain.Filter = „“ gemacht davor MachNix = True danach MachNix = False
Und fertig : )
Naja jetz brauch ich nur noch die verknüpfung von den abfragen.
Die 1. Abfrage
If FilterAB2txt.Text = "" Then
rsFilter.Filter = "USER\_AB1 = '" & FilterAB1txt.Text & "'"
Else
rsFilter.Filter = "USER\_AB1 = '" & FilterAB1txt.Text & "'
AND USER\_AB2 = '" & FilterAB2txt.Text & "'"
End If
Die 2. Abfrage
If FilterAB1txt.Text = "" Then
rsFilter.Filter = "USER\_AB2 = '" & FilterAB2txt.Text & "'"
Else
rsFilter.Filter = "USER\_AB1 = '" & FilterAB1txt.Text & "' AND USER\_AB2 = '" & FilterAB2txt.Text & "'"
End If
Sooo zur erklärung. Wenn ich zb A eingebe, soll alles mit A kommen. Bei SQL währe es --> like ‚%" & suchetxt.Text & "%‘
Dein Code
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Sooo leute danke nochmal jetz hab ichs hinbekommen
Und zwar:
If FilterAB2txt.Text = "" Then
rsFilter.Filter = "USER\_AB1 like '\*" & FilterAB1txt.Text & "\*'"
Else
rsFilter.Filter = "USER\_AB1 like '\*" & FilterAB1txt.Text & "\*' AND USER\_AB2 like '\*" & FilterAB2txt.Text & "\*'"
End If
Es lag an * einfach und simpel an * ^^ man man man was ist das nur für eine welt
Nuja danke nochma für die kompetente und fixe hilfe hier! Echt klasse Comunity
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Sooo leute danke nochmal jetz hab ichs hinbekommen
Und zwar:
ohne natürlich …
If FilterAB2txt.Text = "" Then
rsFilter.Filter = "USER\_AB1 like '\*" & FilterAB1txt.Text & "\*'"
Else
rsFilter.Filter = "USER\_AB1 like '\*" & FilterAB1txt.Text & "\*' AND USER\_AB2 like '\*" & FilterAB2txt.Text & "\*'"
End If
Es lag an * einfach und simpel an * ^^ man man man was ist das
nur für eine welt
ahhhhh! Danke für den Kommentar, merk’ ich mir.
Nuja danke nochma für die kompetente und fixe hilfe hier!
Echt klasse Comunity
Schön wenn’s Dir bei uns gefällt, dann kommst Du ja wieder.