von Rag3 » So, 22.10.2006 22:20
Hi,
ich bin gerade erst auf OO umgestiegen und bis jetzt eignetlich sehr zufrieden. Leider kenne ich mich dann auch nicht allzu gut aus, wie man das realisiert, was ich haben möchte. Daher wende ich mich an euch! Ich habe bereits stundenlang mit beiträgen aus diesem forum oder anderen tutorials versucht, eine suchmaske aufzubauen, aber es funktioniert nicht.
Die Datenbank habe ich jetzt nochmal in minimaler Ausführung erstellt, um unnötige Komplexität zu vermeiden, damit ich das ganze dann besser verstehe. Ich habe lediglich eine Tabelle:
Kunden(KundenNr, Name, Vorname, Anrede), Primärschlüsel ist die KundenNr.
Auf meinem Formular wird in einer Tabelle der Inhalt der Tabelle Kunden aufgelistet. Mein Ziel ist nun in jeder Spalte der Tabelle gezielt suchen zu können. Dafür habe ich mir überlegt, man könne unter jede Spalte ein Textfeld positionieren, in dem der jeweilige Text eingegeben werden soll, nachdem man suchen möchte. Dort soll dann mit dem Ereignis "Text Modifiziert" ein Makro verknüpft werden, dass dann den Filter für die Tabelle entsprechend anpasst. Durch einen Beitrag hier im Forum habe ich mir nachfolgenden Code als Makro zugewiesen, erhalte jedoch immer die Fehlermeldung die Objektvariable sei nicht belegt (Zeile "oForm.Filter= setFiltA1" aber auch "oForm.Reload"). Kannn es sein, dass ich die Objekte auf meinem Formular erst irgendwo im Makrocode definieren/zuweisen muss?
Code: Alles auswählen
Sub Filter_komplett
sFilter= lcase("textfeld.Text") 'Suchtext aus Textbox
if sFilter <>"" then
sFilter = "%" & sFilter & "%"
setFiltA1= "( (LCASE(Name) LIKE '" & sFilter & "') "
else
setFiltA1= ""
endif
oForm.Filter= setFiltA1
oForm.Reload
End Sub
Hiermit soll in der SPalte "Name" gesucht werden, analog will ich es dann für die anderen machen.
Ich bin für jeden Tip dankbar!
mfg
Rag3
Hi,
ich bin gerade erst auf OO umgestiegen und bis jetzt eignetlich sehr zufrieden. Leider kenne ich mich dann auch nicht allzu gut aus, wie man das realisiert, was ich haben möchte. Daher wende ich mich an euch! Ich habe bereits stundenlang mit beiträgen aus diesem forum oder anderen tutorials versucht, eine suchmaske aufzubauen, aber es funktioniert nicht.
Die Datenbank habe ich jetzt nochmal in minimaler Ausführung erstellt, um unnötige Komplexität zu vermeiden, damit ich das ganze dann besser verstehe. Ich habe lediglich eine Tabelle:
Kunden(KundenNr, Name, Vorname, Anrede), Primärschlüsel ist die KundenNr.
Auf meinem Formular wird in einer Tabelle der Inhalt der Tabelle Kunden aufgelistet. Mein Ziel ist nun in jeder Spalte der Tabelle gezielt suchen zu können. Dafür habe ich mir überlegt, man könne unter jede Spalte ein Textfeld positionieren, in dem der jeweilige Text eingegeben werden soll, nachdem man suchen möchte. Dort soll dann mit dem Ereignis "Text Modifiziert" ein Makro verknüpft werden, dass dann den Filter für die Tabelle entsprechend anpasst. Durch einen Beitrag hier im Forum habe ich mir nachfolgenden Code als Makro zugewiesen, erhalte jedoch immer die Fehlermeldung die Objektvariable sei nicht belegt (Zeile "oForm.Filter= setFiltA1" aber auch "oForm.Reload"). Kannn es sein, dass ich die Objekte auf meinem Formular erst irgendwo im Makrocode definieren/zuweisen muss?
[code]Sub Filter_komplett
sFilter= lcase("textfeld.Text") 'Suchtext aus Textbox
if sFilter <>"" then
sFilter = "%" & sFilter & "%"
setFiltA1= "( (LCASE(Name) LIKE '" & sFilter & "') "
else
setFiltA1= ""
endif
oForm.Filter= setFiltA1
oForm.Reload
End Sub[/code]
Hiermit soll in der SPalte "Name" gesucht werden, analog will ich es dann für die anderen machen.
Ich bin für jeden Tip dankbar!
mfg
Rag3