在VB中连接字符串和整数

时间:2013-05-15 20:18:16

标签: vba ms-access ms-access-2003

我有以下代码:

Dim IDfiltr As Long
IDfiltr = Forms!KONTROLA!ID_OS
DoCmd.OpenForm "OSOBA", acNormal, "", "", , acNormal
Forms!OSOBA.FilterOn = False
DoCmd.ApplyFilter "", "[Forms]![OSOBA]![ID_OS] Like " & IDfiltr

在最后一行中,我试图将VBA变量IDfiltr替换为DoCmd.ApplyFilter的表达式,但它不起作用。我也在尝试这个:

DoCmd.ApplyFilter "", "[Forms]![OSOBA]![ID_OS] Like IDfiltr"

但它也行不通。如何将VB变量IDfiltr替换为表达式?

1 个答案:

答案 0 :(得分:1)

LIKE命令适用于字符串。您还需要对此进行编码,以便告诉LIKE命令您要匹配的字符串的哪一部分。例如,假设您想要将Long变量与字符串的开头匹配:

DoCmd.ApplyFilter "", "[Forms]![OSOBA]![ID_OS] Like '" & CStr(IDfiltr) & "*'"

因此,如果字段[ID_OS]是一个字符串,这将匹配IDfiltr是字段[ID_OS]的开头的所有记录。

虽然我的回答在技术上是正确的,但我有一种感觉,你真的打算做别的事情。 [ID_OS]可能是整数或长整数,你真的想要其他一些结果。