Ведение модулей / макросов в Access - PullRequest
2 голосов
/ 20 октября 2010

Эй, ребята, я написал небольшой модуль / макрос, который помогает нашему отделу инвентаризации, им нужно будет запускать модуль / макрос несколько раз в месяц. Они получают базы данных в полевых условиях, которые они экспортируют из какой-либо имеющейся у нас системы отслеживания запасов.

Мой вопрос, есть ли способ установить этот модуль / макрос вне файла db, но все еще в пределах доступа, чтобы команде управления запасами не приходилось открывать редактор vb, импортировать модуль, создавать новый макрос, давать ему имя , правильно настроить для выполнения функции?

Модуль / макрос не нужно менять для любой новой базы данных, которая входит.

По сути, они должны иметь возможность открывать любую базу данных, полученную полем, и иметь доступ к этим функциям в модуле / макросе без необходимости устанавливать это. Это возможно?

Ответы [ 2 ]

3 голосов
/ 20 октября 2010

Вы можете посмотреть мою статью для vb123.com:

Использование файлов библиотеки баз данных в вашем приложении доступа

Мысль о том, что вы можете помещать объекты доступав файле библиотеки (все еще файл mdb или mde или любой из новых типов файлов доступа), а затем просто добавив ссылку на файл в ваш проект VBE, вы получите эту функциональность доступной для вас.

Он работает с формами, отчетами, запросами, классами и т. Д. Если честно, я не пробовал его с макросами, но не вижу причины, по которой он не будет работать.

Прелесть в том,эта повторно используемая функциональность упакована в один файл, который по-прежнему представляет собой простой старый файл доступа.

Если у вас есть склонность, вы также можете написать дополнение доступа, которое в основном вызывает ваш макрос в библиотеке.

Мы сделали это с помощью продукта, упрощающего работу с SQL в Access, и он уже много лет работает с установками Access по всему миру.Вы можете установить надстройку с помощью профессионального установочного пакета, такого как мудрая установка, что делает его довольно удобным для конечного пользователя вашего макроса.Тем не менее, при написании такой установки на профессиональном уровне возникают значительные накладные расходы.Полагаю, зависит от того, что нужно вашим пользователям.

3 голосов
/ 20 октября 2010

Возможно, вы думаете о VBScript или о создании внешнего интерфейса?

Вы можете использовать VBScript для выполнения действий с базой данных Access, через объект Access, с ADO и так далее. Сценарий может принимать входные данные командной строки, запрашивать информацию или работать с любой базой данных в текущем каталоге.

При использовании внешнего интерфейса новая база данных становится внутренним, а файл Access с вашим макросом - внешним. Ваш макрос должен запросить у пользователя имя внутреннего файла и либо использовать его с объектом Access, либо связать таблицы в соответствии с тем, что необходимо сделать.

...