今日も、アクセスを取り上げます。
任意のテーブルもしくはクエリーのデータをエクセルファイルに出力する方法をご紹介します。
その際、エクセルのファイル名だけではなく、シート名も指定してみます。
なお、シート名を指定しないと、テーブルもしくはクエリーの名前が
シート名となりますよ。
なお、Accessファイルは、デスクトップに保存してあるものとします。
エクセルファイルは、同じディレクトリ(今回は、デスクトップとなります)に
出力されるようにします。
従って、マイドキュメントにAccessファイルが保存してあれば、
エクセルファイルも自動的にマイドキュメントに出力されます。
Access2007でご説明しますが、2003やXPバージョンでも、問題なく動作します。
以下の画像は、今回エクスポートするテーブルのデータです。
T講座 という名前のテーブルです。
フォームをデザインビューで開いて、ボタンを配置します。
ボタンを選択して、プロパティをクリックします。
(F4キー、もしくは、Alt + Enter でもかまいません)
書式タブの標題に「エクスポート」と入力します。
これが、ボタンの表示される文字となります。
続いて、イベントタブのクリック時の右端の「・・・」をクリックします。
コードビルダを選択して、OKをクリックします。
Visual Basic Editorに切り替わりますので、
以下のように入力します。
画像を参考にしてください。
若干の説明をします。
FileName という変数を宣言して、そこにAccessファイルのパスとエクセルのファイル名を代入しています。
これで、Accessファイルがどこに保存してあろうと、同じフォルダにエクセルファイルが保存されるようになります。
エクセルのファイル名は、自由に変更してもかまいません。
今回は、エクスポート講座.xls としました。
次の1文がメイン処理です。
acSpreadsheetTypeExcel9 というのは、Excel2000ファイル形式を指しています。
これにしておくのが、一番安定しているようです。
保存先のファイル名は、先ほど仕込んだ FileName を使っています。
また、最後の 「講座情報 」は、シート名の指定です。
これを省略すると、テーブル名の「T講座」がシート名となります。
さて、それでは、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に切り替えて、フォームビューで表示してください。
「エクスポート」ボタンをクリックします。
画面に変化がありませんが、これで、エクセルファイルが出力されました。
もし、エラーが表示されたら、入力ミスの可能性がありますので、よく確認してみてください。
デスクトップ画面を見ると、エクセルファイルが作られていますね。
このファイルを開いてみましょう。
確かに、データが書き出されていますね。
シート名も確認してみましょう。
確かに、「講座情報」となっていますね。
なお、すでに同名のエクセルファイルが存在していても、エラーは出ません。
シートを上書きします。
シート名を変更してエクスポートすると、シートが増えていきますよ。
エクエルつながりで思い出しました。
エクセルって色々な機能があって、使い方によってはまるで手品(マジック)のようになるんですよね。
子どもの“プログラミング的思考"をグングン伸ばす本
この本、おすすめですよ(^^)
だい
プロの目から見てのいろいろをお願いします。
画像とか、アクセス数が伸びる方法とか、
ぜひお願いいたします。
そして、リクエストありがとうございます。
画像の加工について、取り上げたいと思います。
お楽しみに♪
せっかくエクセルとか書きよってんのに、
申し訳ありません。
エクセルは会社勤めをしてた頃は必要でしたが、今は遊びよる?主婦ですけん、
家計簿もエクセルでやりよったんですが
今はそういうサイトもありますよね。
あー、そうじゃった。
ウチ方はアクセスカウンターをつけようとしたら、なぜか出来ません。
どうしてなんでしょうか?セキュリティでストップされてしまうのです。
何かいい方法はありませんか?
あと、子供のテストの結果をエクセルで表示していくのはいいでしょうか?
折れ線グラフで表示したら、少しは勉強をやる気になってくれますかね?
先生のお名前はだい先生いうてんですか?
変なことをお伺いするかと思いますが、ご指導よろしくお願いいたします。
さて、画像加工の件ですが、
まずは、こちらの記事をご覧頂くのが、一番かなあとおもいます。
ブログで画像を魅せましょう(フリー画像加工ソフト)
それから、アクセスカウンターは、ブログ以外のホームページのことですか?
ブログは、既についていますもんね。
この件は、またお返事しますね。
エクセルで折れ線グラフ、いいですね。
お子様も頑張っちゃうかも♪
リンクが剥がれ落ちてた・・・
上の だい という字をクリックしてください。
ブログの記事に飛びます・・・
とかとは、違うんですか?
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