powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ерунда с делением
19 сообщений из 19, страница 1 из 1
Ерунда с делением
    #32380870
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В запросе делаю вычисление:
[Поле1]/(nz([...]![Поле2];1))
Поле1 - поле этого же запроса, значение: 1758,00
Поле2 из таблицы, nz(....;1) - чтоб не поделить на 0, значение 1242,70
Получаю ответ: 1 (правильно ~1,42).
Никаких форматов в поле не прописано. Долблюсь, долблюсь, но не могу получить правильный результат.
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380880
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А если без nz?
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380885
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А без nz могут быть ошибки - Поле2 бывает =0.
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380886
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Но хотя бы с одной записью если попробовать?
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380896
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Считает правильно, но куча сообщений "#Ошибка", где Поле2 = 0
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380903
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Может, где-то описана функция nz? И Аксесс использует ее, а не стандартную?
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380908
Фотография Serge Gavrilov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуйте использовать свою функцию
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380909
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А разве такое возможно? Присваивать "самописным" ф-циям стандартные имена.
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380914
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[Поле1] \ (nz([...]![Поле2];1))

Может у тебя в запросе так написано?
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380926
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, всё правильно(а что это за операция "\"?)
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380937
Может так? [Поле1]/CCur(NZ([...]![Поле2];1))
А кокой тип у полей? Это MDB, ADP? Какой Access? Я не смог смоделировать ситуацию (А2000).
А как Вы справились с делением на 0? Ваша NZ() вместо Null возвращает 1, а 0 беспрепятственно пропускает. Здесь скорее нужно так:
[Поле1]/CCur(IIF([...]![Поле2]>0;[...]![Поле2];1))
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380967
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"\" - целочисленное деление.

Может, я чего-то не понимаю, но мне кажется, надо так:

Код: plaintext
Iif([Поле2]= 0 ;[Поле1]/[Поле2])
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380968
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Упс... Сорри, сорвалось...

Код: plaintext
Iif([Поле2]= 0 ; 0 ;[Поле1]/[Поле2])
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380975
Доброжелатель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 AlexJuice
еще и на Null не мешало бы проверить ;)
...
Рейтинг: 0 / 0
Ерунда с делением
    #32380982
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да знаю, знаю...
Что поделаешь... Когда летишь домой, всякое бывает. А у меня еще и свои юзеры имеются

Код: plaintext
Iif(Nz([Поле2];  0 )= 0 ; 0 ;[Поле1]/[Поле2])
...
Рейтинг: 0 / 0
Ерунда с делением
    #32381371
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, работают оба варианта: и Анатолия, и AlexJuice.
Правда есть ещё одна проблема, скорее логического свойства. Может кто сталкивался: суть этого вычисляемого поля - процентное отношение Поля1 к Полю2. Если Поле1=0, понятно, что процентное отношение тоже =0, а вот если равно 0 Поле2? Вроде как некорректно выводить значение Поля1 в процентах(слишком много получается), но и 0 выводить тоже как-то...
...
Рейтинг: 0 / 0
Ерунда с делением
    #32381424
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О, пока задавал вопрос, получил от шефа пожелание:
Если Поле2=0, а Поле1<>0, то независимо от величины Поля2 выводить: 1
...
Рейтинг: 0 / 0
Ерунда с делением
    #32381781
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 АндрейК: Это вопрос???
...
Рейтинг: 0 / 0
Ерунда с делением
    #32382658
АндрейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да нет, конечно, это скрежет зубовный........
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ерунда с делением
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]