我正在尝试使用以下代码从访问excel
中导出表格我收到的错误对象最后不支持属性或方法
Set objexcel = New Excel.Application
objexcel.Visible = True
If Dir("C:\reports\Data_Analysis1.xls") = "" Then
objexcel.Workbooks.Add
Set wbexcel = objexcel.ActiveWorkbook
Set objSht = wbexcel.Worksheets("Sheet1")
Else
Set wbexcel = objexcel.Workbooks.Open("C:\Documents and Settings\TAYYAPP\Desktop\test folder\reports\ERROR REPORT4.xls")
Set objSht = wbexcel.Worksheets("Sheet1")
End If
objSht.Activate
objexcel.DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "UTYP_Anzahl", "C:\Reports\Data_Analysis1.xls", True
答案 0 :(得分:1)
“DoCmd.TransferSpreadsheet”中的DoCmd是MS Access命令,而不是excel命令。我认为这是你的问题。
如果此VBA在MS Access中运行,则只需将其称为
DoCmd.TransferSpreadsheet
不
objexcel.DoCmd.TransferSpreadsheet
此外,如果您正在进行此操作,则无需使用Execl Automation手动创建Excel文件,Access将为您执行此操作。
道歉,如果我误解了你在做什么,但我认为你需要的只是TransferSpreadSheet命令。
答案 1 :(得分:0)
此answer适用于Excel对象,可以提供帮助,因为它允许您自动格式化Excel文件。