Suchmaske - Fehler im Makro/script

r4ge

Grünschnabel
Hi,
ich behaupte einfach mal, mich mit SQL an sich gut auszukennen. Mit der Erstellung von Formularen jedoch leider nicht, v.a. nicht in Openoffice, auf das ich kürzlich umgestiegen bin.

Das Szenario:
Ich habe eine Kundendatenbank erstellt, sie besteht aus mehreren Tabellen:
Kunde, TelNummern, E-Mails, Adressen usw., alle sind über den schlüssel KundenNr. verknüpft

Ich habe mir ein FOrmular erstellt, auf dem in einem Listenfeld alle Kunden (KundenNr., Name, Forname, ANrede) aufgelistet werden. AUf verschiedenen unterformularen werden nun abhängig von der ausgewählten person in der liste die entsprechenden zusatzdaten angezeigt . Soweit so gut. Das Problem liegt jetzt darin, dass ich mir eine Suchmaske erstellen möchte. Ich habe mir schon über google und dieses Forum hier ein wenig weiter geholfen un bin jetzt so weit, dass ich den Anzeigefilter des Listenfeldes verändern möchte. Hierzu habe ich ein Textfeld erstellt, dessen inhalt durch drücken eines buttons in der spalte "Name" gesucht werden soll. Button und Textfeld befinden sich auf dem selben formular, wie das listenfeld. Ich habe nun dem Button beim ereignis "Beim Auslösen" folgendes Makro zugewiesen (im prinzip habe ich das von einem fund per google übernommen):

PHP:
Sub Filter
     
    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

Da ich auch in Delphi fit bin, kann ich dem Quelltext gut folgen. Ich verstehe jedoch nicht, weshalb ich die Fehlermeldung "BASIC Laufzeitfehler. Objektvariable nicht belegt" markiert ist hierbei die zeile "oForm.Filter= setFiltA1" bzw. auch "oForm.Reload". Ich habe auch schon probiert statt oForm dn namen des Formulars einzusetzen, dies ändert jedoch nichts. Kann mir jemand bei meinem Problem helfen?

Danke schonmal!

mfg

r4ge
 

Neue Beiträge

Zurück