Dim 临时字符 As String
查询语句 = "Select * From 普杰客户资料明细表 Where"
For X = 1 To Len(txtQry.Text)
临时字符 = Left(txtQry.Text, X)
临时字符 = Right(临时字符, 1)
If X = 1 Then
查询语句 = 查询语句 & " 公司名称 LIKE '%" & 临时字符 & "%'"
Else
查询语句 = 查询语句 & " AND 公司名称 LIKE '%" & 临时字符 & "%'"
End If
Next X
这段代码我在单字段的关键词查询记录使用良好
我现在需要做一个报销票据的打印、记录和查询,用access
由于vb6的多行文本无法设定行距,报销事由栏我就按票据表格放了4个text,对应了4个字段,事由1~4
现在我要查询,如何在text1里输入关键词,查询4个事由字段显示任一字段符合要求的记录
然后,我试了
查询语句 = "Select * From 普杰客户资料明细表 Where"
For X = 1 To Len(txtQry.Text)
临时字符 = Left(txtQry.Text, X)
临时字符 = Right(临时字符, 1)
If X = 1 Then
查询语句 = 查询语句 & " 事由1 or 事由2 or 事由3 or 事由4 LIKE '%" & 临时字符 & "%'"
Else
查询语句 = 查询语句 & " AND 事由1 or 事由2 or 事由3 or 事由4 LIKE '%" & 临时字符 & "%'"
End If
Next X
没有跳错,但是查不出结果,好像没有实际意义,基础不好求解救
是有办法设置text的行距呢?
还是能够把表格里4个text都能写入表中的一个字段里?
还是改下这个语句?
2 个解决方案
#1
好吧我自己想通了
#2
strSQL = "Select * From 普杰客户资料明细表 Where"
For X = 1 To Len(txtQry.Text)
strChar = Mid(txtQry.Text, X, 1)
If X = 1 Then
strSQL = strSQL & " InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
Else
strSQL = strSQL & " Or InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
End If
Next X
For X = 1 To Len(txtQry.Text)
strChar = Mid(txtQry.Text, X, 1)
If X = 1 Then
strSQL = strSQL & " InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
Else
strSQL = strSQL & " Or InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
End If
Next X
#1
好吧我自己想通了
#2
strSQL = "Select * From 普杰客户资料明细表 Where"
For X = 1 To Len(txtQry.Text)
strChar = Mid(txtQry.Text, X, 1)
If X = 1 Then
strSQL = strSQL & " InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
Else
strSQL = strSQL & " Or InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
End If
Next X
For X = 1 To Len(txtQry.Text)
strChar = Mid(txtQry.Text, X, 1)
If X = 1 Then
strSQL = strSQL & " InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
Else
strSQL = strSQL & " Or InStr(事由1 & 事由2 & 事由3 & 事由4,'" & strChar & "')"
End If
Next X