Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как реализовать макроподстановки в Access или VB

2.0K
25 августа 2004 года
Bereza
44 / / 01.04.2004
Очень часто в бухгалтерии (когда формулы по расчётам меняются от года к году и что-либо стабильное в коде написать не имеет смысла, т.е. a=b*c) для получения итоговых данных приходится пользовать макроподстановками, как это реализовано в программах у меня на foxpro.
Т.е. есть таблица для расчёта и пользователь сам может добавлять строчки и в поле formula пишет формулу для расчёта, а в поле perem наименование переменной. И согласно этим формулам происходит расчёт. В foxpro я знаю как это реализовать, а вот как это сделать в ACCESS или VB не имею представления, от куда плясать?
Может кто-то эту задачку уже решил

kod naim St perem formula
1 Стоимость работ 500 K1
2 Cтоимость материала 300 K2
3 Цена продукции 800 K3 K1+k2
4 Цена продукции розн 1200 K4 K3*1.5
258
25 августа 2004 года
SergeySV
1.5K / / 19.03.2003
В принципе в Access есть функция Eval() - она вычисляет строковые выражения...

Просто писать твоим бухгалтерам выражения типа: Forms!Orders!ShipRegion*100 будет я думаю затруднительно :).

Как ты планируешь организовать работу с пользователями?, они будут переменные вводить?, а все переменные заранее известны (их можно легко переобозначить)?
2.0K
25 августа 2004 года
Bereza
44 / / 01.04.2004
Цитата:
Originally posted by SergeySV
В принципе в Access есть функция Eval() - она вычисляет строковые выражения...

Просто писать твоим бухгалтерам выражения типа: Forms!Orders!ShipRegion*100 будет я думаю затруднительно :).

Как ты планируешь организовать работу с пользователями?, они будут переменные вводить?, а все переменные заранее известны (их можно легко переобозначить)?



Приятно снова увидитеть тебя на форуме :)
Я планирую так: первоначально все настройки делает программист, но после если что-то нужно изменить в расчёте мог сделать и сам пользователь.
Названия переменным можно давать любые k1 или m1 или ... И формулы пишет пользователь сам, конечно корректные, т.е. с теми перменными что существуют.
При расчёте: k1 должно присвоиться значение из st(500),k2 тоже самое,k3 должно подсчитаться согласно формулы и поле st занестись значение k3
и т.д.

258
25 августа 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by Bereza


Приятно снова увидитеть тебя на форуме :)
Я планирую так: первоначально все настройки делает программист, но после если что-то нужно изменить в расчёте мог сделать и сам пользователь.
Названия переменным можно давать любые k1 или m1 или ... И формулы пишет пользователь сам, конечно корректные, т.е. с теми перменными что существуют.
При расчёте: k1 должно присвоиться значение из st(500),k2 тоже самое,k3 должно подсчитаться согласно формулы и поле st занестись значение k3
и т.д.



Ну эти переменные конечно Access не знает, тебе придется заменять эти переменные на: конкретные значения, ссылки на контролы, типа Me!txtSumma - Eval это скушает

2.0K
27 августа 2004 года
Bereza
44 / / 01.04.2004
Цитата:
Originally posted by SergeySV


Ну эти переменные конечно Access не знает, тебе придется заменять эти переменные на: конкретные значения, ссылки на контролы, типа Me!txtSumma - Eval это скушает



Класс :} Все получилось. Только я использовала Evaluate для объекта Excel, а Eval я нашла для ScriptControl тоже можно.
Кому интересно, то ловите файл ...

258
30 августа 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by Bereza


Класс :} Все получилось. Только я использовала Evaluate для объекта Excel, а Eval я нашла для ScriptControl тоже можно.
Кому интересно, то ловите файл ...



Не нашла, странно.. в Access функция Eval является методом объекта Access.Application так что в коде можно просто писать Eval (Access.Application по умолч. будет браться)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог