У меня есть форму и для ее проверки, я использую eval(). Предпосылкой является то, что я определил правила в таблице. Эти правила содержат заполнители. Правило скомпилировано, а затем eval() должно проверить его истинное или ложное.MS Access: eval() возвращает NULL при доступе. Свойство .Column (x, y)
Часть одного правила содержит проверку значения списка. Я решил, что это проблема. Я мог бы свести к следующим:
Application.Forms("frmDMAE").lstHistory.Column(6, Application.Forms("frmDMAE").lstHistory.ListCount - 1)
возвращается т.е. 2,
eval("Application.Forms(""frmDMAE"").lstHistory.Column(6, Application.Forms(""frmDMAE"").lstHistory.ListCount - 1)")
возвращает NULL - но я не могу понять, почему !?
eval("Application.Forms(""frmDMAE"").lstHistory.Column(6, 5)")
возвращает NULL, а !? Столбец 6, строка 5 определенно содержит числовое значение.
Также вставив следующий код в окно отладки показывает «2» в качестве возвращаемого значения в обоих случаях:
Application.Forms("frmDMAE").lstHistory(6, Application.Forms("frmDMAE").lstHistory.ListCount - 1) Application.Forms("frmDMAE").lstHistory.Column(6, 5)
Любая идея кто ??? У меня больше нет ни копейки.
[EDIT]
Решение работы Андре. Просто измените индексы свойства .Column в Eval(). Используйте .Column (rowindex, colindex) вместо .Column (colindex, rowindex)!
[/ EDIT]
Большое спасибо, Томас
Ваше решение работает! И да, это действительно странно. Я никогда бы не попытался изменить индексы свойства '.Column' в' Eval() '. Вы обнаружили это случайно? Мои случайные мысли об этом были пустыми :-). –
Kinda random, да. Я начал получать всегда NULL (как вы), затем он внезапно начал работать, и мне потребовалось немного узнать, что происходит. Я думаю, что это было, когда я попробовал один и тот же номер столбца и строки (это, очевидно, будет работать с Eval и без него). – Andre