P
PC User
I always get confused in converting SQL to VBA and I'm looking for an
easier way to do it. The problem is writing SQL as a string. I
usually try to break it down into parts, but sometimes even the parts
are complicated. For example:
Dim strForm As String
Dim strSQL As String, strWhere As String
Dim strSelect As String, strFrom As String, strJoin As String
strSelect = "SELECT tblMainData.* "
strFrom = "FROM tblMainData "
strJoin = "INNER JOIN tsubPermissionList ON
tblMainData.ResponsibleParty = tsubPermissionList.FullName "
strWhere = "WHERE (((tblMainData.WorkOrder) Like " & "" * "" & "'""
& [Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.ActionDescription) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.Facility) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.ResponsibleParty) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.Status) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*"
strSQL = strSelect & strFrom & strJoin & strWhere
The original "WHERE" statement in SQL is:
WHERE (((tblMainData.WorkOrder) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.ActionDescription) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.Facility) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.ResponsibleParty) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.Status) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"));
I need help converting the "WHERE" statement into stings - line by
line. Please help.
Thanks,
PC
easier way to do it. The problem is writing SQL as a string. I
usually try to break it down into parts, but sometimes even the parts
are complicated. For example:
Dim strForm As String
Dim strSQL As String, strWhere As String
Dim strSelect As String, strFrom As String, strJoin As String
strSelect = "SELECT tblMainData.* "
strFrom = "FROM tblMainData "
strJoin = "INNER JOIN tsubPermissionList ON
tblMainData.ResponsibleParty = tsubPermissionList.FullName "
strWhere = "WHERE (((tblMainData.WorkOrder) Like " & "" * "" & "'""
& [Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.ActionDescription) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.Facility) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.ResponsibleParty) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*" & _
"OR (((tblMainData.Status) Like " & "" * "" & "'"" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] " & "'" & "*"
strSQL = strSelect & strFrom & strJoin & strWhere
The original "WHERE" statement in SQL is:
WHERE (((tblMainData.WorkOrder) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.ActionDescription) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.Facility) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.ResponsibleParty) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"))
OR (((tblMainData.Status) Like "*" &
[Forms]![frmMainEntry]![txtCurrentWorkSearch2] & "*"));
I need help converting the "WHERE" statement into stings - line by
line. Please help.
Thanks,
PC