我当前正在尝试使用MSAccess表中存在的值填充变量。在表“ tblTrimLinks”中获取工程图编号,其中该工程图编号的相应模型字段等于屏幕上当前的模型值。
表可以在这里看到-
installedModelTrim = DLookup("[Drawing_Number]", "tblTrimLinks", "[Model] = '" & [Forms]![frmPressureSwitch]![Model] & "'")
使用DLookup时,即使存在数据,使用变量值时它也会返回NULL。在调试模式下将鼠标悬停在[Forms]![frmPressureSwitch]![Model]
上时,我可以看到它已成功识别了屏幕上当前的变量值(模型)。看到这里-
但是它不会使用与该模型相对应的图形编号填充“ installedModelTrim”-如上所述,它为NULL。
但是,如果我按如下所示放置模型的确切值,它将成功地用相应的图纸编号值填充“ installedModelTrim”
installedModelTrim = DLookup("[Drawing_Number]", "tblTrimLinks", "[Model] = '" & "DANFOSS RT260A" & "'")
我不确定为什么它会以一种方式起作用,但不能以另一种方式起作用,当条件是可变值时,我需要它起作用。我尝试将变量设置为字符串和变体,但得到的结果相同。我已经确保表中的数据类型也是文本。我尝试了在不同论坛中建议的多种解决方案,但似乎得到了相同的结果。
任何帮助将不胜感激。
Dim installedModelTrim As Variant
Dim equivalentModelTrim As Variant
installedModelTrim = DLookup("[Drawing_Number]", "tblTrimLinks", "[Model] = '" & [Forms]![frmPressureSwitch]![Model] & "'")
MsgBox (installedModelTrim) 'Debugging: Only showing msgbox to see value