Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: kenin
Ситуация следущая (упрощённая фомулировка, но сути не меняет): имеем гл. и подч. форму. Подчин. форма ленточная, в ней вводятся данные, числовые, одно поле. В примечании подч. формы в поле (Назовём ПолеСумм) считается сумма введеных значений по всем записям ( =Sum([кол]) . После ввода на главн. форме нажимается кнопка по которой обрабатывается процедура (Proc1) с использаванием ПолеСумм из подчен. формы. Всё работает, но всплыла ошибка - если пользователь не заканчивает ввод в подч. форме переходом на другую запись (т.е вводит число и сразу жмёт кнопку в главной форме) то ПолеСумм считается не правильно (т.е. последнее значение не суммируется, а при одной записи вообще Null ). Вставляем в начало Proc1 метод Refresh для подч. формы. - ПолеСумм обновляется только после выполнения всей процедуры. При методе Requery - выдаёт ошибку Divising by zero. Кусок процедуры:
Forms![главная]!Поле = (Sum + Forms![главная]![Подч]!ПолеСумм) / Forms![главная]![Подч]!ПолеСумм
- при этом после остановки при ошибке Forms![главная]![Подч]!ПолеСумм НЕ РАВНО 0 . Что делать? Как завершить (если пользователь не завершил) ввод записи в подч. форме, пересчитать ПолеСумм и после выполнить процедуру в главной форме?


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.