Page 386 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼VBAからエクセルにデータを保存するPart2 なべたか 03/9/24(水) 16:30 ┣Re:VBAからエクセルにデータを保存するPart2 こうちゃん 03/9/24(水) 17:01 ┃ ┗Re:VBAからエクセルにデータを保存するPart2 なべたか 03/9/24(水) 17:17 ┗サンプルです。 ou 03/9/24(水) 17:21 ┗Re:サンプルです。 なべたか 03/9/24(水) 17:30 ─────────────────────────────────────── ■題名 : VBAからエクセルにデータを保存するPart2 ■名前 : なべたか ■日付 : 03/9/24(水) 16:30 -------------------------------------------------------------------------
実現したい機能は ・フォームからボタンを押下 ・保存のダイアログが表示 ・テーブルのデータをエクセル形式で保存 なのですが、 現状は、GetSaveFileNameを使用して ダイアログボックスの表示までは出来ました (と言ってもサンプルソースを貼り付けただけですが。。。) で、保存する際にテーブルのデータを ごそっとエクセルで保存したいんですけれども この保存ダイアログとテーブルを どう関連付けたら(何を保存するかの指定方法?) 良いものやらと悩んでおります どなたか、お知恵を拝借させて下さい 説明下手であれですが、以上よろしくお願いしますm(__)m |
なべたかさん、こんにちは 回答ではありませんが・・ >「TransferSpreadsheet」なんてのを使って出力してみました これと >現状は、GetSaveFileNameを使用して >ダイアログボックスの表示までは出来ました これを 組み合わせればいけると思いますが? どう組み合わせればいいのかわからないってことなら、現在のコードを提示できませんか? そのほうがレスが付きやすいと思いますが・・ |
▼こうちゃん さん: 早速の回答ありがとうございます こうちゃんさんのおっしゃる通りに 「TransferSpreadsheet」と組み合わせて出来ました なんとも見切り発車っぽい質問になってしまいました(^^; 今後とも宜しくお願いします |
Dim xlapp As Excel.Application Dim db As DAO.Database Dim rs As DAO.Recordset Dim varBookPath As Variant 'レコードセット指定 Set db = CurrentDb Set rs = db.OpenRecordset("テーブル名") '出力先Excelファイル指定 Set xlapp = New Excel.Application varBookPath = xlapp.GetSaveAsFilename("", "Excelファイル(*.xls),*.xls", , "出力先ファイルの指定") '指定したExcelを非表示で開く xlapp.Workbooks.Open varBookPath xlapp.Visible = True '指定したレコードセットを貼り付け xlapp.Worksheets("シート名").Range("A1").CopyFromRecordset rs 'Excelを保存して終了 xlapp.ActiveWorkbook.Save xlapp.Quit Set xlapp = Nothing rs.Close Set rs = Nothing db.Close Set db = Nothing |
▼ou さん: サンプルソースありがとうございます いろんなやり方があるもんなんですね 今は訳も分からずコピーして使う程度なので 1文ずつ理解しながら作成していきたいと思います |