パソコンカレッジ スタッフのひとりごと

パソコンスクールのスタッフが、
初心者から上級者まで役立つ情報をお伝えします。

Accessのデータをエクセルファイルに出力する(Access2000以降)

2017-05-17 17:26:43 | Access(アクセス)
今日も、アクセスを取り上げます。

任意のテーブルもしくはクエリーのデータをエクセルファイルに出力する方法をご紹介します。

その際、エクセルのファイル名だけではなく、シート名も指定してみます。

なお、シート名を指定しないと、テーブルもしくはクエリーの名前が
シート名となりますよ。

なお、Accessファイルは、デスクトップに保存してあるものとします。

エクセルファイルは、同じディレクトリ(今回は、デスクトップとなります)に
出力されるようにします。
従って、マイドキュメントにAccessファイルが保存してあれば、
エクセルファイルも自動的にマイドキュメントに出力されます。


Access2007でご説明しますが、2003やXPバージョンでも、問題なく動作します。



以下の画像は、今回エクスポートするテーブルのデータです。
T講座 という名前のテーブルです。






フォームをデザインビューで開いて、ボタンを配置します。
ボタンを選択して、プロパティをクリックします。
(F4キー、もしくは、Alt + Enter でもかまいません)

書式タブの標題に「エクスポート」と入力します。
これが、ボタンの表示される文字となります。






続いて、イベントタブのクリック時の右端の「・・・」をクリックします。






コードビルダを選択して、OKをクリックします。





Visual Basic Editorに切り替わりますので、
以下のように入力します。
画像を参考にしてください。


Private Sub コマンド0_Click()
    Dim FileName As String
    
    FileName = Left(CurrentDb.Name, InStrRev(CurrentDb.Name, "")) _
                    & "エクスポート講座.xls"
    DoCmd.TransferSpreadsheet acExport, _
            acSpreadsheetTypeExcel9, "T講座", _
            FileName, True, "講座情報"
    
End Sub







若干の説明をします。
FileName という変数を宣言して、そこにAccessファイルのパスとエクセルのファイル名を代入しています。

これで、Accessファイルがどこに保存してあろうと、同じフォルダにエクセルファイルが保存されるようになります。

エクセルのファイル名は、自由に変更してもかまいません。
今回は、エクスポート講座.xls としました。

次の1文がメイン処理です。

acSpreadsheetTypeExcel9 というのは、Excel2000ファイル形式を指しています。
これにしておくのが、一番安定しているようです。

保存先のファイル名は、先ほど仕込んだ FileName を使っています。

また、最後の 「講座情報 」は、シート名の指定です。
これを省略すると、テーブル名の「T講座」がシート名となります。


さて、それでは、Accessに切り替えて、フォームビューで表示してください。

「エクスポート」ボタンをクリックします。
画面に変化がありませんが、これで、エクセルファイルが出力されました。




もし、エラーが表示されたら、入力ミスの可能性がありますので、よく確認してみてください。


デスクトップ画面を見ると、エクセルファイルが作られていますね。





このファイルを開いてみましょう。
確かに、データが書き出されていますね。





シート名も確認してみましょう。
確かに、「講座情報」となっていますね。





なお、すでに同名のエクセルファイルが存在していても、エラーは出ません。
シートを上書きします。
シート名を変更してエクスポートすると、シートが増えていきますよ。




エクエルつながりで思い出しました。

エクセルって色々な機能があって、使い方によってはまるで手品(マジック)のようになるんですよね。

子どもの“プログラミング的思考"をグングン伸ばす本

この本、おすすめですよ(^^)

だい

コメント (8)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« IF関数であいまい検索しまし... | トップ | 累計を簡単に表示しましょう... »
最新の画像もっと見る

8 コメント

コメント日が  古い順  |   新しい順
お願いがあります (にっこ)
2009-06-04 21:20:49
今度はブログネタを取り上げてみて頂けないですか?

プロの目から見てのいろいろをお願いします。

画像とか、アクセス数が伸びる方法とか、
ぜひお願いいたします。
返信する
にっこさんへ (だい)
2009-06-04 22:04:11
コメントありがとうございます。

そして、リクエストありがとうございます。

画像の加工について、取り上げたいと思います。

お楽しみに♪
返信する
楽しみです (にっこ)
2009-06-06 00:27:30
画像の加工は面白そうですね。
せっかくエクセルとか書きよってんのに、
申し訳ありません。

エクセルは会社勤めをしてた頃は必要でしたが、今は遊びよる?主婦ですけん、

家計簿もエクセルでやりよったんですが
今はそういうサイトもありますよね。

あー、そうじゃった。

ウチ方はアクセスカウンターをつけようとしたら、なぜか出来ません。
どうしてなんでしょうか?セキュリティでストップされてしまうのです。
何かいい方法はありませんか?

あと、子供のテストの結果をエクセルで表示していくのはいいでしょうか?
折れ線グラフで表示したら、少しは勉強をやる気になってくれますかね?

先生のお名前はだい先生いうてんですか?

変なことをお伺いするかと思いますが、ご指導よろしくお願いいたします。
返信する
にっこさんへ (だい)
2009-06-08 20:24:13
返事が遅くなりまして、すみません。

さて、画像加工の件ですが、
まずは、こちらの記事をご覧頂くのが、一番かなあとおもいます。

ブログで画像を魅せましょう(フリー画像加工ソフト)

それから、アクセスカウンターは、ブログ以外のホームページのことですか?
ブログは、既についていますもんね。

この件は、またお返事しますね。

エクセルで折れ線グラフ、いいですね。
お子様も頑張っちゃうかも♪
返信する
にっこさんへ (だい)
2009-06-08 20:31:04
すみません。
リンクが剥がれ落ちてた・・・

上の だい という字をクリックしてください。

ブログの記事に飛びます・・・
返信する
質問です (Shiroto)
2018-07-13 10:54:15
TransferSpreadsheet メソッドとか、DoCmd.OutputTo acOutputForm, "フォーム名", acFormatXLS, "エクセルファイル名..xls", True
とかとは、違うんですか?
返信する
Test, just a test (ThomasWrirl)
2018-10-13 23:10:40
Hello. And Bye. Vghrufwiodjowifuegijefqolw
返信する
be8f8f9kefje0i4t49yu59ti04gudhd9wir948ty8tf9id0eu4r8gjiokdp098incm Nmghdfkdfhe iefwdkwsfheifoew JamesSus (JamesSus)
2020-06-24 22:56:53
https://bjdkgfsfhidhgvudbfjeguehfwhsfug.com
Mkfdkfjwsldjeifgheifnkehgjr
vndkfhsjfodkfc;sjgjdgokrpgkrp
bndljgoedghoekfpegorig
fihfowhfiehfoejogtjrir
Yndkfvhdjkfhke nkfnslkfn klfnklf
Oljgvkdfkndjvbgdjffsjdnkjdhf






Nkfhofjeojfoegoero ogeoegfeougeihigoohge igjeigheiogheiogheih giehdgoiehifoehgioheighe hfioeehfieohgeiodgnei hioehgioehfdkhgioehgi eodghioedhgieghiehgeuo
Nihdigheifjojfieui iihfishfiwsfhiwhfowhfh hfsdfhkdcndjkfhe klchsiofhwifhdvjdnj hkfhsfhifheuhguegheflkhe
Yfhsfheifhei hfhdfiehfiejfk fjeogjeogj ojgoedjodjvsclksfhszghLhekjb; ;dh jdjvndkjdfjsofjsofjosjfi fojsjdoskfsjfodgjdsghoi sdjfpfgspegjsodjvdhvgisd
Mfjefjojgidhvshg ihidhgiodhgirhgir hioihgdioghrigrigh ihgiogherihgirodvdks jsdjfsopejfovgjdksjosj joesjfoesjfsj;ifsjg
Ndjsfhjifekfhekdghior highdiofhidogheioghei gijhgoiehgiehgieh jfiheigheihgioe
返信する

コメントを投稿

Access(アクセス)」カテゴリの最新記事