Попытка убить временный mdb, который был импортирован в Excel

Я пытаюсь убить файл * .mdb в VBA, но я получаю отказ от прав, поскольку он используется в Excel.

If (fso.FileExists(tablepath & tablename & ".mdb")) Then Kill tablepath & tablename & ".mdb" End If 

Я хотел импортировать его, а затем удалить его. Я думал, что следующий импорт закрыл соединение с mdb после его импорта, очевидно, нет.

Как закрыть соединение?

Это MS Excel 2010 32bit.

  With Workbooks(new_workbook_name).Sheets(FolderName & " Detail").ListObjects.Add(SourceType:=0, Source:=Array( _ "OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;Password="""";User ID=Admin;Data Source=" & tablepath & tablename & ".mdb;" _ , _ "Mode=Share Deny Write;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:D" _ , _ "atabase Password="""";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Glob" _ , _ "al Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=Fals" _ , _ "e;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Supp" _ , "ort Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False"), _ Destination:=Range("A1")).QueryTable .CommandType = xlCmdTable .CommandText = Array(tablename) .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInfo = True .SourceDataFile = _ tablepath & tablename & ".mdb" .ListObject.DisplayName = "Table_" & tablename .Refresh BackgroundQuery:=False End With 

После строки QueryTable добавьте строку:

 .MaintainConnection = False 

В этом случае после запроса соединение будет выпущено. Значение по умолчанию верно.

Interesting Posts

Откройте Excel и найдите значение, верните следующий столбец

Как удалить содержимое именованного диапазона

Как быстро определить, какие листы имеют макросы в книге Excel?

Как генерировать случайные даты в excel через определенный дистрибутив?

Вытягивание данных из SQL SP в электронную таблицу Excel с использованием VBA

UBound Значение выходного сигнала фильтра в VBA

DAX Минимальное значение, сгруппированное по заказу клиента

Поиск общих значений в столбце A для каждого экземпляра значения в столбце B в Excel

Множественный диапазон IF и формула Excel

Программно изменить размер окна комментариев

Перемещение определенных данных между таблицами, Access VBA

Экземпляр C # Excel с видимым как false и открытие файла вне приложения

Kendo Grid for Angular 2 Форматирование даты экспорта Excel

Excel VBA – вставить пустую строку в блокнот Lotus Notes

SUMPRODUCT с пустыми ячейками / ISNUMBER

Давайте будем гением компьютера.