Microsoft Access 掲示板

クロス集計クエリの結果をエクセルにエクスポートしたい / 5

6 コメント
views
5

普通の選択クエリや集計クエリなら#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 'エラー処理をを無効にする
通報 ...