Ошибка времени выполнения «3011» при передаче электронной таблицы одному пользователю, но не другому - PullRequest
0 голосов
/ 19 февраля 2019

Я новичок в VBA, и у меня есть макрос, который я использую для передачи информации из электронной таблицы в базу данных доступа.Это работает для меня безупречно, однако, когда другой пользователь пытается запустить его, он получает ошибку:

Ошибка времени выполнения 3011: ядру базы данных Microsoft Access не удалось найти объект 'Data $ K1:M155 '

(M155 - последняя ячейка на листе с информацией в ней).

У нас одинаковые сетевые разрешения и мы используем один и тот же лист Excel, включая отмеченные объектыв справочной библиотеке.Все о нас совпадает с тем, что я могу сказать.
Любые идеи о том, почему это происходит на чужой машине, но не на моей, очень приветствуются.

Мой код, где возникает ошибка:

Sub exporttoaccesss() 
    Dim acc As Object
    Set acc = CreateObject("Access.Application") 
    acc.OpenCurrentDatabase "\\filepath" 
    Set dbs = acc.CurrentDb 
    Set d = ActiveWorkbook.Sheets("Data") 

    Set lastcell = d.Range("m9999").End(xlUp)
    lastaddress = lastcell.Address(0, 0)

    strSQL = "CREATE TABLE tblADPTemp (Analyst CHAR, EndDate DATETIME, Regular DOUBLE)"

    acc.DoCmd.RunSQL strSQL

    'Transfers the data from excel into the temporary table 
    acc.DoCmd.TransferSpreadsheet _
        TransferType:=acImport, _
        SpreadSheetType:=acSpreadsheetTypeExcel12Xml, _
        TableName:="tblADPTemp", _
        Filename:=Application.ActiveWorkbook.FullName, _
        HasFieldNames:=True, _
        Range:="Data$K1:" & lastaddress
End Sub

Прикрепленное изображение показывает область электронной таблицы, с которой я работаю Настройка электронной таблицы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...