|
|
|
| У меня есть таблица с сотрудниками
Сотрудник Категория
Иванов 1
Петров
Сидор 2
Михал
Так вот у Иванова и у Михал ничего в поле "Категория" не содержиться на кнопку пишу следующее.
Dim varX As Variant
Dim srch As Integer
srch = Null
varX = DLookup("[Сотрудник]", "Сотрудники", "[Категория] = " & srch)
MsgBox varX
|
Выскакивает ошибка: Invalid use of Null. Как мне обработать записи которые ничего не содержат, чтобы в переменную попал мой сотрудник с пустым полем "Категория"? | |
|
| |
|
|
|
| varX = DLookup("[Сотрудник]", "Сотрудники", "[Категория] = " & nz(srch,-1)) | |
|
| |
|
|
|
|
| Странно. Повторил ситуёвину. Результат плачевный. Ничего не работает. | |
|
| |
|
|
|
| А так:?
DLookup("Сотрудник", "Сотрудники", "Категория Is Null")
|
| |
|
| |
|
|
|
| Не знаю у меня в принципе первый способ работает. Но по скольку автор мне напомнил про фнукцию Nz, то я в том запросе сразу же в кнострукторе её поставил, чтобы там уже 0 был и Dlookup замечательно сработал | |
|
| |
|
|
|
| имхо, зависит от типа поля. в данном примере - играем с числовыми значениями. если текстовое то nz (Поле, "") ... | |
|
| |
|
|
|
| Поле категория ставлю числовое. Как всегда работает только по Лукасу. Но смысла от функции DLookup не узрел. Показывает первого в списке без записи. Работает только вот так:
Dim varX As Variant
Dim srch As Integer
'srch = Null
varX = DLookup("Сотрудник", "Сотрудники", "Категория Is Null")
MsgBox varX
И чем она лучше MsgBox? | |
|
| |
|
|
|
|
Что сравнивается, DLookup и MsgBox? | |
|
| |
|
|
|
|
| Видимо не в ту сторону копаю. Смоделировал ситуевину только для того, что бы понять что дает этот Dlookup. Дает окно с соответствующей надписью. Стало быть отсюда и сравнение.
По моему справочнику про эту функцию ничего нет. | |
|
| |
|
|
|
| Используется для вывода значения поля из таблицы
т.е. если нужно вытащить какое то одно значение из таблицы а в запросе или в форме эта таблица не используется в качестве источника строк - то можно значение выдернуть при помощи этой функции......
синтаксис такой же как у DCount DSum.... | |
|
| |
|
|
|
| Спасибо за инфу. Прояснилось. | |
|
| |