• 締切済み

AccessのデータをExcelテンプレートに出力・自動印刷したい

Access2000を使っています。 クエリで必要なデータだけをフォーム上に抽出した後、フォーム上のコマンドボタンをクリックすることで、Excel2000で作成したテンプレートに出力・自動印刷したいのですがこんなことできますか?できるのでしたら方法を教えてください。マクロでもいいのですが、できればVBAのコードで教えていただければ助かります。 よろしくお願いします。

みんなの回答

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

Excel97での変換の部分のVBAコードです。 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel97, _ "(ここにテーブルorクエリ名)", _ App.Path & "\(ここに出力ファイル名を記述).xls"

関連するQ&A

  • AccessのフォームをExcelに出力

    いつもお世話になっております。 現在、Access2003でDBを作成中です。 "テーブル1"をパラメータクエリで抽出します。"クエリ1"。 そのクエリを基にフォームを作成しています。"フォーム1"。これは抽出して印刷したり、Excelに出力するために作成しました。レポートではなく、フォームにした理由は、コマンドボタン等を配置できることからです。 Excelに出力する際のVBAでつまづいてしまいました。 DoCmd.OutputTo acOutputForm, "フォーム1", acSpreadsheetTypeExcel9 これで問題なく出力できています。が、、、 Access2007の一部のPCでこれを実行するとエラーが出ます。 原因は"OutputTo"が含まれているとエラーになるようです。 ちなみにエラーは「現在出力しようとしているオブジェクトの形式は無効です。」 「2007 Office スイート Service Pack 2」こちらをインストールすると良いそうなのですが、だめでした。 WindowsXP、Office2007はこのVBAだとエラーになります。 WindowsVista、Office2007は正常に使えました。 PCの何か設定?と考えたりもしたのですが、はっきりとした原因がわからないのでは、他の人にDBを使っていただけないので、エラーにならないVBAでいきたいです。 もうひとつ、 mFileName = InputBox("ファイル名を入力してください。") DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "フォーム1", mFileName こちらのVBAはクエリの出力だとうまくいくのですが、フォームだとだめでした。 クエリから抽出して保存すれば良いのですが、理想はこの形です。 1.フォーム1を開くと「担当者を入力」とパラメータクエリが働き、抽出結果をフォーム1に表示される。 2.[出力]ボタンを押すと、ダイアログボックスが開いてファイル名を指定して保存する。または、ダイアログボックスが開かなくても名前を指定できれば良いです。最悪、指定できなくても良いですが、原因となる、"OutputTo"を避けたVBAでいきたい。 3.mFileName = InputBox("ファイル名を入力してください。") DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "クエリ1", mFileName これだと、1.でパラメータクエリで抽出結果をフォームに表示させて、2.で[出力]ボタンを押すと、また、パラメータクエリで抽出しなければならなくなるのでできれば避けたいです。 こちらの条件でご教授お願い致します。 また、WindowsXP、Office2007でエラーが出ましたので、これを解決する方法でも良いです。 よろしくお願い致します。

  • AccessのデータをExcelの決まったフォーマットに出力するには?

    Access2002を使っています。 社員マスターテーブルがあります。 フィールドは「社員番号」「氏名」「かな」「年齢」があります。 クエリで対象になるデータを抽出し、それをExcelの決まったフォーマットに出力させたいです。 希望はフォーム上にマクロのボタンを作ってそれをクリックするとエクセルの決まったフォーマットにデータが出力されるようにしたいのです。 お手数をおかけいたしますが、よろしくご指導ください。_(_^_

  • ACCESSのデータをEXCELに・・・

    Access97を使用しています。 ほぼ初心者に近いです。 会社で請求書のシステムを作成中です。 パラメータクエリを使用して例えば始まり「02/10/15」終り「02/12/15」と入力すればその期間の請求書データを抽出できるようになっています。 テーブルを増やしたくないのでそのパラメータクエリを使用して抽出したデータをExcelにエクスポートしたいのですが・・・いろいろ調べてみましたがわかりません。(モジュールに関数を作って、フォーム上でコマンドボタンを作成しそれをクリックすれば関数が動いてエクスポートと同時にExcelのファイルが出来上がるようにしたくて試みているのですが。) VBAでもかまいませんので出来る方法がありましたら教えてください。 よろしくお願いします。

  • Access Excel出力する保存先を指定したいのですが?

    Access初心者です。2003です。 7000ほどのデータを70ほどの抽出条件ごとにエクセルにしています。 抽出条件毎にクエリを複数作成し、各クエリが抽出したデータをマクロでエクセルに出力させています。このマクロをクエリ分作成し、別のマクロでその複数マクロをいっせいに実行させています。マクロには「コマンドの実行」で「Excelに出力」を使用しています。このアクションを使用するとマイドキュメントにエクセルが保存されてしまいます。(たまにディスクトップになります。) この保存先を指定したいのです。ダイアログではなく、設定した任意のフォルダにいっせいに収まるようにです。 「出力」アクションだと保存先のダイアログが出てくれますが、クエリの数が多いので手作業が増えてしまいます。「コマンドの実行」のExcel出力ですと手作業が無いのですが、マイドキュメントに保存されてしまいます。 私がツールを作成し、Accessを知らない人間がフォーム画面で使用するのでなるべく自動化したいと考えています。 へたくそな文ですが、どなたか助けてください。

  • Office Links/Excelに出力のVBA

    access2000でフォームで抽出したリストを、Office Links/Excel に出力して活用しているのですが、 出来れば、この操作をコマンドボタンを設けて、VBAで実行したいです。 テーブルからのエクスポートだったら、excelへのエクスポートが出来そうなのですが、フォームだと出来なさそうで・・・ やり方のご教授をお願い致します。

  • MS-Accessで音声データの出力について

    まず、Accessのテーブル上にOLEオブジェクト型のフィールドを取り、そこにMIDI形式のデータを挿入をしています。 そのテーブルからウィザードでフォームを作成すると、音声データが張り付いたフォームが作成されます。 これを実行して、そのフォーム上の音声データのコントロールをダブルクリックすると確かに 音声が出力されるのですが、別のボタンをクリック時に音声を出力する方法はないでしょうか。マクロでもVBAコードでも構いません。 あまり上手く説明できなく申し訳ありませんが、どなたか分かりましたら宜しくお願い致します。

  • Access、選択して印刷したい場合

     こんにちは、長い質問ですみません。どなたかご教授お願いします。  今、作成したいのはテーブルAに1000件以上の顧客データ(重複ないです)があり、その中から1件だけ選択し、フォームB上に作成したコマンドボタンのクリックで、その顧客データの情報だけをA4サイズ全てを使用して印刷出力したいのです。  レポートの詳細にテーブルAのフィールド項目を反映させると、1件だけではなく、A4サイズに許す限り次のデータが反映されてしまいます。  作業の順番を下記のように私なりに考えて進めていますが、どこがおかしいでしょうか? (1)テーブルAと連結する検索クエリCを作成し、抽出条件にLike[顧客コード]&"*" (2)フォームBのコントロールソースをクエリCに設定 →初期画面をフォームBにし、フォームBを立ち上げると同時にパラメータの入力画面が出て、そこに顧客コードを入力すると顧客情報がフォームB上に表示されます。 (3)テーブルAをコントロールソースにしたレポートを作成する。詳細にテーブルAのフィールド項目を入力。 (4)印刷マクロを作成し、マクロのアクションを「レポートを開く」にし、ビューを印刷にする。 (5)フォームBに印刷コマンドを作成し、イベントを印刷マクロにする。 (6)フォームBより印刷コマンドをクリックして、印刷開始する。

  • AccessからExcelへ出力

    Access2003からExcel2003へ出力したいのですが、 クエリに3つのフィールドがあるとして、 1つ目のフィールドをExcelの1行目、 2つ目を2行目、3つ目を3行目とゆうことはできるのでしょうか? VBAは勉強中です。 よろしくお願いします。

  • アクセスからエクセルのテンプレートへの出力

    お世話になっております。 アクセス(クエリ)から テンプレートファイル(エクセル)へ ユーザー単位で出力するには どのようにすれば良いでしょうか? QRY_出力: ユーザー名|ユーザーID|商品|単価|数量|日付 という表示クエリがあり、 このクエリから ユーザー名毎(もしくはユーザーID毎)に テンプレートファイル(エクセル)の「出力Sheet」へ出力した上で、 [ユーザー名]_出力日.xlsx という名前で別名保存したいです。 ※商品×1のユーザーは1レコード  商品×2のユーザーは2レコード・・・の出力のイメージです。 初心者につき、つたない説明かもしれませんが、 ご教示のほどよろしくお願い致します。

  • ACCESSのクエリで抽出したデータをWord文書へ差込印刷したいです。

    始めまして。今ACCESSをやっているのですが、クエリで抽出したデーターを既存のWord文書に差込印刷をしたいのですがどうしても上手くいきません。もしご存知でしたらこの差込方法を教えてください。 やりたいことは・・・ Accessのフォームでボタンを作り該当するボタンをクリックすると既存の差込をしたいWORD文書がでてきて、 そこにはもう差し込まれた状態でWordを起動したいのです。 今の作業の状況は・・・ ボタンをクリックするとマクロで設定してある作業が実行できるように指定しているのです。 マクロでは、 アプリケーションの実行 を入力して、 そのコマンドラインには C:\Program Files\Microsoft Office\Office10\WINWORD.EXE C:\総務\レポート\人事考課(経営推進-参与).doc としています。 わかりずらくてすみませんm(__)m どうかよろしくお願いします。

専門家に質問してみよう