powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Счет выполнения макроса
19 сообщений из 19, страница 1 из 1
Счет выполнения макроса
    #32532157
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как сделать так, чтобы макрос выполнялся только один раз при определенных условиях (или какой - то счетчик выполнения макроса)
Проблемма в следующем:
по макросу выполняется запрос на дополнение с определенным условием. Если условие не выполняется, то запрос добавляет "пустоту", то бишь - ничего.
НО!!! в течении месяца может быть неоднократно соблюдено условие (когда первый раз будет соблюдено - не известно).
Как сделать так, чтобы макрос выполнялся один раз, а не дополнял одни и теже данные в табл при соблюдении условия...
Спасибо.
Stepler (щёлк-щёлк!!)
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532162
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создать таблицу настроек и ключик в ней менять при выполнении макроса
Ключик добавить в условия запуска

?
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532181
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ключик добавить в условия запуска
пробовал, что-то не проходит. Может неправильно делаю? (раньше не сталкивался с необходимостью использовать данные табл как условие выполнение макроса...
Правильно пишу?: [Табл1]![ххх]=13 ____ Вероятно нет, т.к. выдает : "Приложению MsA не удается найти имя Табл1 из этого выражения"
Что неправильно делаю???
Stepler (щёлк-щёлк!!)
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532195
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что - обязательно прямо к таблице лезть?
А функцию написать, которая этот ключик вернет и с ней сравнивать?
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532197
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор[Табл1]![ххх]=13

попробуй через DLookup
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532201
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О-о

А функция-то уже есть :)

Kelme подсказал :)
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532231
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда получается, что нужно запускать макрос тока через процедуру ????
DLookup в колонке условий макроса не срабатывает...
Stepler (щёлк-щёлк!!)
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532324
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поставил следю выражение в Сondition:
nz(DLookUp("ProdShopCode";"Products";"[ProdShopCode] = 'tttt'");0)<>0

всё сработало
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532338
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Классно!!! Работает...
Расшифруй енто, плз, чтоб яснее было...
СПАСИБО!
Stepler (щёлк-щёлк!!)
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532346
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что не понятно?

DLookUp - функция возвращающая значение поля (парам1) из таблицы (парам2) по условию (парам2)
Если по условию ничего нет или таблица пуста - вернет Null

Nz(парам1, парам2) - функция вернет парам1, если он не равен Null, иначе вернет парам2
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532349
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторпо условию (парам2)

читать как:
по условию (парам3)
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532358
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dlookup вщзвращает значение, удовлетворяющее критерию, если нет ничего то возвращается Null.

Вообщето наверно правильней так будет:
DLookUp("ProdShopCode";"Products";"[ProdShopCode] = '161300520'") Is Not Null
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532363
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и вернёт оно True/False...

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532369
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
и вернёт оно True/False...


что в принципе и требуется ;)
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532380
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну да
сорьки действительно красивее...
проявлю и я эрудицию
Код: plaintext
1.
Not IsNull(DLookUp("ProdShopCode";"Products";"[ProdShopCode] = '161300520'")) 

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532403
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
ну да
сорьки действительно красивее...


дело не в том, что красивее, а в том, что Dlookup может и значение 0 возвратить, типа запись найдена, а в Nz cтоит проверка на 0, и условие не сработает ;)

Саныч как то мне на этот нюанс указывал...
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532426
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Ну, раз уж меня помянули... :^)))

Если запись найдена, но в ней Null, то эта ситуация все равно пока не отлавливается. И что делать - я не знаю.
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532432
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А! Знаю.

Код: plaintext
DCount("*";"Products";"[ProdShopCode] = '161300520'") >  0 
...
Рейтинг: 0 / 0
Счет выполнения макроса
    #32532440
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да и нафиг эту запись тогда ;)
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Счет выполнения макроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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