В настоящее время я пытаюсь заполнить переменную значением, которое существует в таблице MSAccess. Захват номера чертежа в таблице "tblTrimLinks", где соответствующее поле модели этого номера чертежа равно значению модели, которое в данный момент находится на экране.
Таблицу можно посмотреть здесь -
![tblTrimLinks](https://i.stack.imgur.com/aWBXB.png)
installedModelTrim = DLookup("[Drawing_Number]", "tblTrimLinks", "[Model] = '" & [Forms]![frmPressureSwitch]![Model] & "'")
При использовании DLookup возвращает значение NULL при использовании значения переменной, даже если данные существуют. При наведении указателя мыши на [Forms]![frmPressureSwitch]![Model]
в режиме отладки я вижу, что он успешно определил значение переменной (модель), которая в данный момент отображается на экране. Смотрите здесь -
![Debug Hover Results](https://i.stack.imgur.com/prsVi.png)
Но он не заполняет "selectedModelTrim" номером чертежа, который соответствует этой модели - он равен NULL, как упомянуто выше.
Однако, если я укажу точное значение модели, как показано ниже, она успешно заполнит "instalModelTrim" соответствующим значением номера чертежа
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