I just happen to have been working on refining something like this. It is still in the rough stages but here goes.
It uses space as the delimiter but you could easily make it take commas. also uses OR rather then AND.
look it over and if you have questions let me know.
I am including 2 functions the one that builds the SQL and the other one is basically the replace function
These functions are to provide an example of 1 of many possible ways to accomplish what is described above and include no error trapping etc.. so as to make the code as easy to understand as possible
Use like this
Private Sub Text0_AfterUpdate()
Me.List1.RowSource = DSource("[fieldname]", "tablename", "textboxname", "[field1], [field2]"

End Sub
Public Function DSource(FldNam As String, TblNam As String, SrchNam As String, Optional AddFld As String) As String
'builds sql that can be used as a record source using string from a text box
'use similar to dlookup() but gets criteria from text box
'fldname name of field to search
'Tblnam name of table that contains the field to search
'srchNam name of control that contains search string
'pass separated by a space (test this)
'addfld additional fields to return(optional) separated by a comma and a space fieldnames 'with a space must be enclosed in brackets ("field1, field2, [field 3]"
Dim strfilter As String
strfilter = BuildCriteria(FldNam, 7, "*" & SReplace(Me(SrchNam), " ", "* or *"

& "*"

DSource = "SELECT " & FldNam
DSource = DSource & IIf(AddFld = "", "", ", " & AddFld)
DSource = DSource & " FROM " & TblNam & " WHERE " & strfilter
Me.Text4.Value = Dsource
Public Function SReplace(StrOrig As String, Optional StrOld As String, Optional StrNew As String) As String
'performs something like excel replace function
Dim i As Integer
SReplace = ""
i = 1
While i <= Len(StrOrig)
SReplace = SReplace & IIf(Mid(StrOrig, i, 1) = StrOld, StrNew, Mid(StrOrig, i, 1))
i = i + 1
Wend
End Function