Access 2007, VBA, крошечный проект для школы и Центр управления безопасностью
Друг попросил моей помощи собрать базу данных Access для небольшого факультета в университете. Он отслеживает медицинскую информацию о некоторых животных. Проблема в том, что для того, чтобы сделать приложение достаточно простым в использовании, нам пришлось написать некоторый код VBA, чтобы склеивать различные формы вместе. Когда мы открываем базу данных (или новую обновленную версию базы данных), мы получаем небольшую вещь VBA Macro Trust, и нам трудно понять, как избавиться от этого предупреждения. Я - разработчик с открытым исходным кодом и системный администратор своей организации, поэтому для меня обычно не проблема подписывать rpm-пакеты с помощью CA Cert, который я поддерживаю...
Отдел моего друга использует ПК с Windows вместе с Novell, но его отдел поддержки компьютеров заявил, что они не предоставляют никакой поддержки созданным пользователями приложениям (т. Е. Предоставляют сертификат, подписанный ЦС департамента), а также не будут предоставлять администратору доступ к компьютерам, поэтому что мы можем изменить настройки доверия. У них также нет навыков или опыта, чтобы кодировать приложение для пользователей. (Спасибо, парни, очень полезно.)
Кроме того, во всем нашем Университете пользователям недвусмысленно дано указание никогда не нажимать кнопку "Да, я доверяю этому". Переобучение пользователей с помощью этой маленькой базы данных доступа, которую она создала, является проблемой, так как около 20 человек будут использовать ее для поиска информации.
Поскольку я помогаю ей, я бы хотел сделать это в C# со встроенным файлом базы данных, хранящимся на общем диске, но это также относится к "созданным пользователем приложениям", и я не смогу запустить установщик, так как нет один имеет административные права.
Есть ли способ обойти необходимость обходить настройки доверия для макросов каждый раз, когда кто-то открывает этот файл? Я думал, что если бы мы вообще не использовали макросы и просто использовали VBA, это бы сработало, но это, очевидно, не так.
2 ответа
Вы явно на правильном пути, так как вы упоминаете TRUST CENTER. Я не пользуюсь A2007, но за 2 минуты Googling появились следующие две статьи:
- Посмотреть мои параметры и настройки в центре управления безопасностью
- Создать, удалить или изменить надежное расположение для ваших файлов
Инструкции, приведенные там для доступа:
- Нажмите кнопку Microsoft Office, а затем нажмите Параметры доступа.
- Нажмите "Центр управления безопасностью", нажмите "Настройки центра управления безопасностью", а затем нажмите "Надежные расположения".
- Если вы хотите создать надежное расположение, которое не является локальным для вашего компьютера, установите флажок Разрешить надежные расположения в моей сети (не рекомендуется). Нажмите Добавить новое местоположение.
- В поле Путь введите имя папки, которую вы хотите использовать в качестве надежного расположения, или нажмите кнопку Обзор, чтобы найти папку.
- Если вы хотите включить подпапки в качестве надежных расположений, установите флажок Подпапки этого расположения также являются доверенными.
- В поле Описание введите то, что вы хотите описать назначение надежного расположения.
- Нажмите ОК.
Похоже, это должно заботиться о ваших проблемах, хотя это должно быть сделано на каждом компьютере пользователя.
Вы можете найти некоторую помощь по:
http://msdn.microsoft.com/en-us/library/bb421308.aspx
В частности:
Макросы встроенного доступа
В OfficeAccess2007 вы теперь можете вставлять макросы в события формы, такие как VBA, вместо того, чтобы сохранять их в коллекции макросов как отдельные объекты. Это делает их более переносимыми, поскольку вы можете копировать и вставлять элемент управления со встроенным макросом, а макрос остается с элементом управления. Во многих случаях достаточно встроенного макроса для открытия отчета вместо короткой последовательности VBA для той же задачи. Многие образцы этих встроенных макросов можно увидеть в шаблонах "Популярные онлайн-базы данных" на панели "Начало работы с доступом", которая появляется, если вы открываете Access 2007 без выбора базы данных. Поскольку большинство макросов Access не являются исполняемым содержимым, они являются важным инструментом, когда вам необходимо заставить ваши базы данных работать при любых обстоятельствах.