Ошибка при использовании функции Dlookup в Access2007 - PullRequest
0 голосов
/ 23 июня 2011

Я использую следующую функцию Dlookup в отчете в Access2007;Функция всегда возвращает первую запись запроса, даже если я изменяю критерии.Вот код:

    =DLookUp("Result","Query1","[Date_Registered] = # " & "2011/02/01#" And "[Department] =" & 'IT')

Исходя из вышеуказанных критериев, возвращаемое значение должно быть в записи # 4, но всегда возвращать значение первой записи запроса.Помогите, пожалуйста.Спасибо,

1 Ответ

1 голос
/ 23 июня 2011

Критерий, который вы даете DLookup, не является допустимой строкой VBA.Если вы разберетесь с этим и передадите его в Debug.Print следующим образом, это вызовет ошибку компиляции:

Debug.Print "[Date_Registered] = # " & "2011/02/01#" And "[Department] =" & 'IT'

Я думаю, что вы должны собрать свою строку и загрузить ее в переменную, затем Debug.Printпеременная, и, наконец, передать переменную DLookup в качестве третьего (критерия) параметра.Я не знаю, откуда берутся строка даты и 'IT', но это должно указать вам правильное направление:

Dim strCriteria As String
strCriteria = "[Date_Registered] = #" & "2011/02/01" & _
    "# AND [Department] =" & "'IT'"
Debug.Print strCriteria
Debug.Print DLookup("Result", "Query1", strCriteria)

Первый оператор Debug.Print в этом фрагменте кода напечатает это вНепосредственное окно:

[Date_Registered] = #2011/02/01# AND [Department] ='IT'
...