hatena
hatena
2025/03/05 (水) 10:09:53
普通の選択クエリや集計クエリなら#1の回答のコードでOKですが、
クロス集計クエリの場合は、下記のコードを使用してください。
Const QueryName = "Q年度別売上集計_Cross_顧客と営業担当別"
Dim strSQL As String 'エクスポート用一時クエリのSQL
strSQL = "SELECT * FROM " & QueryName
If Me.Filter <> "" And Me.FilterOn Then
strSQL = strSQL & " WHERE " & Me.Filter
End If
Dim db As Database, qd As DAO.QueryDef
Set db = CurrentDb
Set qd = db.CreateQueryDef("TempQuery", strSQL & ";") 'エクスポート用一時クエリの作成
On Error Resume Next 'エクスポートがエラーになった場合でも以降の行を実行
'エクセルにエクスポート
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "TempQuery", Filepath & FileName, True
'一時クエリの削除
db.QueryDefs.Delete "TempQuery"
On Error GoTo 0 'エラー処理をを無効にする
通報 ...