powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Снятие блокировки базы Access из Excel
7 сообщений из 7, страница 1 из 1
Снятие блокировки базы Access из Excel
    #39117237
7ionov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, друзья!

Пользуюсь Access-Excel, для синхронизации справочных данных из одной базы Access во многих файлах Excel. Такое самодельное MDM (master data management).
Вся эта "красота" с выпадающими каскадными списками (зависящими от предыдущего значения в записи), пока работала без VBA.
Таблицы подключаются с помощью Подключения к внешним данным на вкладке Данные в Excel, через файл .odc, в котором содержится строка подключения:

Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=f:\Общая\DWH\DWH.accdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False;Jet OLEDB:Limited DB Caching=False;Jet OLEDB:Bypass ChoiceField Validation=False

Таблицы обновляются вручную, после нажатия Обновить всё. С поля Обновлять при открытии, я флажок убрал.
При обновлении база Access блокируется, появляется файл .laccdb.
Блокировка снимается только после того, как пользователь закроет файл Excel, который он обновил.
Таким образом другой пользователь не может обновиться, пока открыт файл предыдущего обновившегося пользователя.

Вопрос в следующем:
Можно ли на событие, например, после ActiveWorkbook.RefreshAll повесить процедуру снятия блокировки базы Access.
...
Рейтинг: 0 / 0
Снятие блокировки базы Access из Excel
    #39117300
Попробуйте заменить "Mode=Share Deny None" на "Mode=Read"
...
Рейтинг: 0 / 0
Снятие блокировки базы Access из Excel
    #39117329
7ionov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анатолий ( Киев ),

эффект тот же.
...
Рейтинг: 0 / 0
Снятие блокировки базы Access из Excel
    #39117358
7ionov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анатолий ( Киев ),

опытным путем выяснил, что база закрывается, когда после обновления заходишь в контекстном меню Умной таблицы" в: таблица ->свойства внешних данных -> свойства подключения, а потом отмена, отмена.

Но это не то, что надо.
...
Рейтинг: 0 / 0
Снятие блокировки базы Access из Excel
    #39117520
f
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кросспостинг.
...
Рейтинг: 0 / 0
Снятие блокировки базы Access из Excel
    #39117644
7ionov, в другом своем посте на эту же тему вы показали код с использованием CopyFromRecordset. Как он относится к теме? ИМХО, это вариант решает проблему.
...
Рейтинг: 0 / 0
Снятие блокировки базы Access из Excel
    #39118060
7ionov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анатолий ( Киев ),

Вариант, о котором вы пишете нашел сам, но он возвращает только записи, без полей, и не отформатированные как таблица.
Он не подходит, поскольку использую именованные диапазоны, на которых работают выпадающие списки в Excel.

avng, подсказал следующее:

Закрытие сессии с Access после обновления в Excel

Это дает нужный результат.

Сорри за кросспостинг, не знал к какой теме лучше отнести вопрос: Access или Excel.
А два раза в Access из-за флуда товарища 2112.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Снятие блокировки базы Access из Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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