Zakładać że wszystkie the pole który the użytkownik móc od w zakładać te stół być tekst, próba:
strApply = "[" & strField & "] = """ & strFilter & """"
Jeżeli pole the pole który móc wybierać być tekst, then ty iść wybierać sposób the datatype the pole przed strApply. Ty móc funkcja jak the następujący:
Jawny Funkcja FieldType (TableName Jako Sznurek, Fieldname Jako Sznurek) Jako Integer
Ciemnawy strSQL Sznurek
Ciemnawy rs Jako DAO.Recordset
strSQL = "WYBIÓRKA [" & Fieldname & "] OD [" & TableName & "] DOKĄD Fałszywy"
strSQL = Zamieniać (Zamieniać (strSQL, "[[", "["), "]]", "] ")
Ustawiać rs = CurrentDb.OpenRecordset (strSQL, dbfailonerror)
FieldType = rs. Pole ((0)). Typ
rs. Zakończenie
Ustalony rs = Nic
Końcówka Funkcja
I wtedy robić i jak:
intFieldType = FieldType (strReport, strField)
WYBRANY Skrzynka intFieldType
Skrzynka dbBigInt, dbBoolean, dbByte, cbCurrency, dbDecimal, dbDouble, dbFload, dbInteger, dbLong, dbNumeric
strApply = "[" & strField & "] =" & strFilter
Skrzynka dbChar, cbText, dbMemo
strApply = "[" & strField & "] = """ & strFilter & """"
Skrzynka dbDate, dbTime
strApply = "[" & strField & "] = #" & strFilter & "#"
Skrzynka Inny
msgbox "Niespodziewany dane typ =" & intFieldType
'Ten jeden musieć wszystkie wartość
strApply = ""
Końcówka Wybiórka
me.subReport.Report.Filter = strApply
me.subReport.Report.FilterOn = (strApply <> "")