2016-11-12 96 views
0

我正在尝试用变量替换DLookup的域参数,意图是一个地方做出更改(如果需要的话)。这是怎么了声明变量:正确使用DLookup中的字符串变量的MS Access

Dim MnMnuSettingTbl As String 
MnMnuSettingTbl = "'tblMainMenu'" 

这是原来的细分市场,该变量是使用:

Me.MainMenuChoiceOne.Caption = DLookup("BtnText", "tblMainMenu", "ID = 1") 

我希望与变量替换域标准“tblMainMenu”但是当我尝试这样做时,它要么不编译,要么出现错误消息,说明找不到表。我已经审查了关于这个问题的几篇文章,并且我正在收集我没有正确传递变量,通过不正确使用单引号或双引号。我很尴尬,所以在这一点上我正在寻找正确的方式来格式化变量或在DLookup上下文中使用它的正确方法。

回答

1

变量必须包含与当前在DLookup中相同的常量字符串。将需要为字符串参数WHERE子句中,例如

MnMnuSettingTbl = "tblMainMenu" 
Me.MainMenuChoiceOne.Caption = DLookup("BtnText", MnMnuSettingTbl , "ID = 1") 

单引号

strTextID = "'QD42'" 
x = DLookup("foo", "bar", "TextID = " & strTextID)