我用过这一行
.RecordSource = "select * from tblpersonal where empid like '" & Me.lblIDNumber.Caption & "*'"
...我的问题是,如果我使用变量(varIDNumber
)而不是对象(lblIDNumber
),会是什么语法?我使用的是VB6.0
答案 0 :(得分:1)
您未在代码中提及txtIDNumber
- 您提到lblIDNumber
。我假设你的意思是那两个是相同的。换句话说,您目前的代码应该是这样的:
.RecordSource = "select * from tblpersonal where empid like '" & Me.txtIDNumber.Text & "*'"
因此,您使用表单中的文本框的值来填充SQL查询。我到目前为止对吗?
你问,如果我将ID号存储在变量而不是文本字段中会怎么样?我同意,这可能是朝着正确方向迈出的一步。
因此,您可以使用以下命令在表单的“常规声明”部分中创建变量:
Dim idNumber As Integer
理念是每次文本字段更改时更新该变量的值。注意:我假设“ID号”是一个整数 - 如果不是,你应该使用String。
现在,您需要在文本字段更改时更新该变量。在txtIDNumber_Change
事件中,您需要添加代码以将字符串txtIDNumber.Text
转换为整数,并将其存储在idNumber
中。我忘记了确切的语法,但我猜的是:
idNumber = Int(txtIDNumber.Text)
最后,您现在可以在SQL查询中使用idNumber
变量而不是文本框:
.RecordSource = "select * from tblpersonal where empid like '" & idNumber & "*'"
答案 1 :(得分:0)
将var.lblIDNumber.Caption替换为varIDNumber
答案 2 :(得分:0)
如果标签中有常量并且希望将常量存储在变量中,请在表单的代码中创建Const
。假设标签上有文字“43”。
在表单的一般声明部分中,添加代码:
Const idNumber As Integer = 43
然后,在构建查询时:
.RecordSource = "select * from tblpersonal where empid like '" & idNumber & "*'"
这将使用常量43构造查询。我真的没有看到这一点 - 如果您希望员工编号是用户可以输入的内容,请参阅我的其他答案。