Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/12: Рейтинг темы: голосов - 12, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 49
1

При подсчете полей в строке запроса выскакивает значение #Ошибка

01.09.2020, 11:05. Показов 2382. Ответов 13

Author24 — интернет-сервис помощи студентам
При подсчете полей в строке запроса выскакивает значение #Ошибка, если не все поля строки заполнены. Если делать подстановку значения в поле таблицы, то это временный эффект, до удаления значения.
Миниатюры
При подсчете полей в строке запроса выскакивает значение #Ошибка  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.09.2020, 11:05
Ответы с готовыми решениями:

Ошибка при попытке вывести сумму полей из запроса
Ошибка "..не удается найти входную таблицу или запрос..." при выполнении программы, которая выводит...

При выполнении запроса выскакивает ошибка "Operand type clash: date is incompatible with int"
Всем доброго дня! Я использовал данный запрос: SELECT Филиал.Название_филиала,...

Как извлечь данные из запроса и вывести их на экран при подсчете строк в бд?
Добрый день! что то я туплю. делаю запрос к бд но увы ничего не приходит. точнее приходит но видимо...

Ошибка при подсчете
скажите как правильно записать выражение а то вылитает ошибка ...

13
9108 / 6037 / 590
Регистрация: 27.03.2013
Сообщений: 19,813
01.09.2020, 11:10 2
Видимо нужно оборачивать имена полей в - Nz
1
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 49
01.09.2020, 11:13  [ТС] 3
Доброго. Можно более подробно?
0
Эксперт MS Access
17535 / 7287 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
01.09.2020, 11:15 4
Цитата Сообщение от prokudin Посмотреть сообщение
Можно более подробно?
Подробно? Может хотя бы SQL своего запроса выложите?
0
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 49
01.09.2020, 11:17  [ТС] 5
SQL
1
2
SELECT Таблица1.[1], Таблица1.[2], Таблица1.[3], Таблица1.[4], Таблица1.[5], Len([1])-Len(REPLACE([1],"Б",""))+Len([2])-Len(REPLACE([2],"Б",""))+Len([3])-Len(REPLACE([3],"Б",""))+Len([4])-Len(REPLACE([4],"Б",""))+Len([5])-Len(REPLACE([5],"Б","")) AS Количество
FROM Таблица1;
0
9108 / 6037 / 590
Регистрация: 27.03.2013
Сообщений: 19,813
01.09.2020, 11:21 6
Цитата Сообщение от prokudin Посмотреть сообщение
...Можно более подробно?...
Примерно так:
SQL
1
Сумма: (Nz([ИмяПоля1];0))+(Nz([ИмяПоля2];0))-(Nz([ИмяПоля3];0))
1
3759 / 2263 / 705
Регистрация: 29.05.2013
Сообщений: 9,613
01.09.2020, 11:56 7
У вас в первой строке в 5-колонке поле не содержит значения поэтому попытка вычисления:
SQL
1
Len([5])-Len(REPLACE([5],"Б","")
порождает ошибку и как следствие все остальные вычисления тоже дают ошибку.
Для устранения этого безобразия надо проверить, можно ли использовать в вычислениях значение из поля, для чего предлагается воспользоваться специальной функцией nz([5];0)
которая проверит значение поля [5] и если значение корректное, то разрешит его использовать, а иначе вернет 0 (второй параметр этой функции). Но использовать функцию nz() надо аккуратно, если будет не сложение, а деление, то такое вычисление вызовет снова ошибку и в этом случае вторым параметром в nz() надо уже задавать 1.
0
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 49
01.09.2020, 16:22  [ТС] 8
Функция NZ - хороша, но она работает с числами, а здесь функция Len - она считает количество символов (букв) в полях запроса.
0
Модератор
Эксперт MS Access
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
01.09.2020, 18:25 9
Цитата Сообщение от prokudin Посмотреть сообщение
Функция NZ - хороша, но она работает с числами
С числами.
И не с числами.
0
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 49
02.09.2020, 07:27  [ТС] 10
Вот база, кто реально покажет, где я не прав.
Вложения
Тип файла: rar Error.rar (28.5 Кб, 2 просмотров)
0
Эксперт MS Access
17535 / 7287 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
02.09.2020, 08:14 11
Лучший ответ Сообщение было отмечено Capi как решение

Решение

SQL
1
2
SELECT [1], [2], [3], [4], [5], Len(Nz([1],""))-Len(REPLACE(Nz([1],""),"Б",""))+Len(Nz([2],""))-Len(REPLACE(Nz([2],""),"Б",""))+Len(Nz([3],""))-Len(REPLACE(Nz([3],""),"Б",""))+Len(Nz([4],""))-Len(REPLACE(Nz([4],""),"Б",""))+Len(Nz([5],""))-Len(REPLACE(Nz([5],""),"Б","")) AS Количество
FROM Таблица1
12345Количество
 kБББ3
БББоБ4
127лшБ1
2
4080 / 1460 / 401
Регистрация: 07.08.2013
Сообщений: 3,652
02.09.2020, 10:23 12
Лучший ответ Сообщение было отмечено Capi как решение

Решение

ltv_1953, Как вариант и то только из-за того что читать тяжко

SQL
1
2
3
4
SELECT a2.1, a2.2, a2.3, a2.4, a2.5, Len(Nz(a2.Slovo,"")-Len(REPLACE(Nz(a2.Slovo,""),"Б","") AS Количество
FROM(
SELECT a1.1, a1.2, a1.3, a1.4, a1.5, a1.1 & a1.2 & a1.3 &a1.4 & a1.5 AS Slovo
FROM Таблица1 AS a1) AS a2
1
Эксперт MS Access
17535 / 7287 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
02.09.2020, 10:34 13
Цитата Сообщение от snipe Посмотреть сообщение
Как вариант
Уже предлагалось похожее в Как создать массив значений полей, но ТС упорно желает отдельно по полям.
0
0 / 0 / 0
Регистрация: 12.07.2016
Сообщений: 49
02.09.2020, 14:18  [ТС] 14
Всем спасибо!
0
02.09.2020, 14:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.09.2020, 14:18
Помогаю со студенческими работами здесь

ошибка при подсчете матриц
Есть две матрицы А и В (3х3) надо сформировать матрицу С за этим условием С=А*2+В^2, программа...

При подсчёте косинуса компилятор выдаёт неверное значение
И снова здравствуйте,возникла очередная проблема в моей программе,при элементарном подсчёте...

Ошибка при подсчёте данных в таблице
скриншот 1 мне нужно чтобы у меня как-то запросом считало сколько у меня выходных (в) и рабочих...

Ошибка при подсчёте контрольной суммы
Всем здравствуйте. Вот функция, представленная производителем приборов для проверки правильности...

Ошибка #ЗНАЧ при подсчете значения
Приветствую всех. В ячейке A2 есть формула: =ЕСЛИ(A1=1;100;""). В ячейке A3 другая формула =A2+100....

Ошибка при подсчете формулы (Рекурсия)
Доброго времени суток! Программа вместо того чтобы суммировать значения в знаменателе, умножает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru