0

次のコードを使用して、アクセスから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
4

2 に答える 2

1

「DoCmd.TransferSpreadsheet」のようなDoCmdは、Excelコマンドではなく、MSAccessコマンドです。それがあなたの問題だと思います。

このVBAがMSAccess内で実行されている場合は、次のように参照してください。

DoCmd.TransferSpreadsheet

いいえ

objexcel.DoCmd.TransferSpreadsheet

また、それがあなたがしていることであるならば、あなたはExeclAutomationでExcelファイルを手動で作成する必要はありません、Accessはあなたのためにそれをします。

あなたがしていることを誤解してしまった場合はお詫びしますが、必要なのはTransferSpreadSheetコマンドだけだと思います。

于 2008-12-17T13:53:24.280 に答える
0

この回答はExcelオブジェクトで機能し、Excelファイルを自動的にフォーマットできるため、役立ちます。

于 2008-12-18T11:14:17.453 に答える