我是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
所附图片显示了我正在使用的电子表格区域 Spreadsheet Setup