Ms access 运行vba脚本时,我收到错误Microsoft VBScript运行时错误:需要对象:';DoCmd&x27;

Ms access 运行vba脚本时,我收到错误Microsoft VBScript运行时错误:需要对象:';DoCmd&x27;,ms-access,vbscript,Ms Access,Vbscript,通过命令提示符运行vb脚本时,我收到一个错误,指出Microsoft VBScript运行时错误:需要对象:“DoCmd” 请尽快帮我解决 ExecuteInsert Sub ExecuteInsert() Dim sheetPath Dim dbs, DbFullName, acc Set acc = createobject("Access.Application") DbFullName = "D:\G\Diamond\FINAL MS-Access\Demo\MS-A

通过命令提示符运行vb脚本时,我收到一个错误,指出Microsoft VBScript运行时错误:需要对象:“DoCmd”

请尽快帮我解决

ExecuteInsert
Sub ExecuteInsert()

Dim sheetPath
Dim dbs, DbFullName, acc
    Set acc = createobject("Access.Application")

    DbFullName = "D:\G\Diamond\FINAL MS-Access\Demo\MS-Access project.accdb"
    Set dbs = acc.DBEngine.OpenDatabase(DbFullName, False, False)

dbs.Execute "Delete from TempRoadMap"

sheetPath = "C:\Users\270784\Desktop\CSPRV scheduled work - 2014 through 1-26-14.xlsx"



DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, "TempRoadMap", _
 sheetPath, True

MsgBox "Imported Sheet1 from " & sheetPath & " Successfully!"

dbs.Execute "Delete from RoadMap"
    dbs.Execute "INSERT INTO [RoadMap] ( Release_Name,SPRF,SPRF_CC,Estimate_Type,PV_Work_ID,SPRF_Name,Estimate_Name,Project_Phase,CSPRV_Status,Scheduling_Status,Impact_Type,Onshore_Staffing_Restriction,Applications,Total_Appl_Estimate,Total_CQA_Estimate,Estimate_Total,Requested_Release,Item_Type,Path) SELECT [TempRoadMap.Release Name], [TempRoadMap.SPRF], [TempRoadMap.Estimate (SPRF-CC)],[TempRoadMap.Estimate Type],[TempRoadMap.PV Work ID],[TempRoadMap.SPRF Name],[TempRoadMap.Estimate Name],[TempRoadMap.Project Phase],[TempRoadMap.CSPRV Status],[TempRoadMap.Scheduling Status],[TempRoadMap.Impact Type],[TempRoadMap.Onshore Staffing Restriction],[TempRoadMap.Applications],[TempRoadMap.Total Appl Estimate],[TempRoadMap.Total CQA Estimate],[TempRoadMap.Estimate Total],[TempRoadMap.Requested Release],[TempRoadMap.Item Type],[TempRoadMap.Path] FROM [TempRoadMap] "

 dbs.Close
MsgBox "Done"


End Sub
排队

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, "TempRoadMap", _
     sheetPath, True
除非您在其他地方定义
acspreasheetype excel97
不存在,并且您应该使用
acspreasheetypeExcel8
,请参阅

不确定这是否正确,但我已经看到您应该使用
object.docmd
,那么在您的情况下会是这样吗

acc.docmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, "TempRoadMap", _
         sheetPath, True

Brother,现在显示TransferSpreadsheet不可用?:(这以前有效吗?因为我在其他论坛上看到的评论是,此对象仅在VBA中可用,而MSDN有时仅指VBA,而不是VB、VBS等“您可以使用DoCmd对象的方法从Visual Basic运行Microsoft Office Access操作。”是的,兄弟,这只是VBA的一个对象…但是当我通过MS Access运行脚本时,它工作得很好…但是当我在命令提示符下运行时,它会指出这些错误…请帮助我解决这个问题??所以你在cmd中运行VBS,它失败了,因为docmd不受支持,这不是很长很短吗?或者你正在尝试管道VBA代码通过cmd?是的,兄弟我正在通过cmd运行VBS,此时它显示Microsoft VBScript运行时错误:需要对象:“DoCmd”。