sendobjectでオブジェクトの種類をクエリー、出力ファイル形式csvがあれば一番いいのですがどうしたらよいでしょう。
accessの上のバージョンではできるのですか。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

まず、クエリを開いておいて、メニューのファイルからエクスポート選ぶと、ウィザードが立ち上がります。


後はウィザードの説明を見ればわかると思いますが、ファイルの種類をテキストにして、区切り文字をカンマにし、最後にファイル名を付けますので、その時に拡張子をCSVに変えればCSVで出力できます。
    • good
    • 0
この回答へのお礼

CSVファイルの作成ができました。
ありがとうございます。
しかしそのファイルを添付ファイルで送信する方法がわかりません。
できればその部分も教えていただけたらありがたいのですが。

お礼日時:2001/12/04 15:42

メールで送信するという事でよろしいのでしょうか?


各メーラーによってやり方は違いますが、アウトルックエクスプレス(OE)でしたら、ツールバーに「新しいメール」というのがありますので、そちらを押して新しいメールを作ります。
その時にメッセージの作成というウィンドウが出てきますが、そちらのツールバーに添付というのがありますので、添付したいファイルを選べば送れるはずです。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

ACCESSの中でCSVの変換からメール送信までを
自動的(ボタン1つをクリックしただけで)に送りたい。

目的をもう少し細かくすればよかったのですがすみません。

お礼日時:2001/12/05 09:59

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QACCESSのクエリーからエクセル出力

ACCESSのクエリーからエクセル出力する方法を探しています。
フォームのボタン押下⇒保存先選択画面表示⇒エクセル出力
という手順を考えていますが、
テーブルをそのまま(保存先も直書き)出力するサンプルは見つかるのですが上記のようなものは見つけられません。

どこかいいサイト、もしくはサンプルなどありませんでしょうか?

Aベストアンサー

DoCmd.OutputTo acQuery, "クエリ1", "MicrosoftExcelBiff8(*.xls)", "", False, "", 0
これでファイル保存ダイアログでると思います。

Qaccessで作成したクエリーをエクセルに出力する時の問題

アクセスで作成したクエリーをエクセルに出力します。フォームに作成したコマンドボタンを押すと、マクロが起動して、マクロで指定してあるフォルダにエクセルが出力されます。出力先にすでに同名のブックがある場合、「すでファイルが存在しています。上書きしますか。」と、いうメッセージが表示されますが、このメッセージを表示せずに無条件ですでに存在するファイルに上書きをしたいと思います。
メッセージを表示しない方法はありますか。一番いいのは,マクロ内でこのメッセージの非表示を指定できるのがいいのですが。
よろしくお願いします。

Aベストアンサー

> フォームに作成したコマンドボタンを押すと、・・・

コマンドボタンを使っているのでしたら、VBAで、直接コマンドボタンの
クリック時イベントに下記のように記述します。
(ご存知とは、思いますが、一応手順を書いておきます。)

フォームをデザインモードで開き、そのコマンドボタンをダブルクリックして、
コードを指定し、「イベント」タブで「クリック時」をポイントし、
右端の...をクリックします。
コードの一番上と下のコードが、表示されますので、その中に書き込みます。

Private Sub コマンド1_Click()
  DoCmd.SetWarnings False
  DoCmd.OutputTo acQuery, "クエリ1", "MicrosoftExcel(*.xls)", _
    "c:\test\クエりー1.xls", False, ""
  DoCmd.SetWarnings True
End Sub

たぶん、これでメッセージは、出ないと思います。

あとは、マクロの場合ですと、クエリーをテーブルに書き出して、
アクションに「ワークシート変換」で「エクスポート」する方法でしょうね。
メッセージは、出なくて、結果は、同じです。 

> フォームに作成したコマンドボタンを押すと、・・・

コマンドボタンを使っているのでしたら、VBAで、直接コマンドボタンの
クリック時イベントに下記のように記述します。
(ご存知とは、思いますが、一応手順を書いておきます。)

フォームをデザインモードで開き、そのコマンドボタンをダブルクリックして、
コードを指定し、「イベント」タブで「クリック時」をポイントし、
右端の...をクリックします。
コードの一番上と下のコードが、表示されますので、その中に書き込みます。

Private ...続きを読む

Qグループ単位にCSVファイル形式で出力する方法について

次のテーブルがあります。

組店コード  金額
 A     100
 A     150
 A     300
 B     250
 B     100
 C      50
 C     150
 C     400

これを、次のように組店コード単位でCSVファイル形式で出力(ファイル名は組店コード)したいです。

【イメージ】
  Aファイル
  Bファイル
  Cファイル

ACCESS VBAの勉強不足の私ですが、どうか、お力を貸してください。<m(__)m>
もし、説明に不足がありましたら、ぜひ、お申し付けください。

Aベストアンサー

フォームの出力ボタンで組合コード別のCSVを出力と言う事で有れば、
エキスポートを一つのファイル単位に出す事になります。

方法としては、
① 最初に組合コードをグループ化してテーブルに保存する
② 組合コードの数を①のテーブルから集計クエリで求める
③ エキスポートの処理ではクエリーからの処理は面倒臭い
④ 組合コード別のテーブルを作成する(テーブル作成クエリ)
⑤ エキスポートをするためのパラメータテーブルを作る
⑥ パラメータのテーブルはテーブル名とファイル名を用意する
⑦ ⑤のテーブルを読んで、EOFになる迄エキスポートする

⑦の実際のエキスポートの処理は下記。
① テーブル名を読む
② その名前でテーブル作成クエリで出力先のテーブルを作る
③ ファイル名を読む。
④ テーブル名とファイル名をエキスポートのパラメータに組み込む
⑤ エキスポートを実行する

⑤のパラメータを作る所は、データに依り変化するので規則性をもって
プログラム化をする必要が有ります。この部分は後にして最初はテスト
データとしてデータをテスト的に使って全体が動く事を確認してから。

パラメータのテーブルを作る所は、プログラム化をした方が良いと思いま
す。然し、多分に得意先別のデータの配布などに使うとは思いますが。

私ならば、メールを使ってファイルは特別には用意はしませんが。無駄
なリソースは余り作る物では有リません。

フォームの出力ボタンで組合コード別のCSVを出力と言う事で有れば、
エキスポートを一つのファイル単位に出す事になります。

方法としては、
① 最初に組合コードをグループ化してテーブルに保存する
② 組合コードの数を①のテーブルから集計クエリで求める
③ エキスポートの処理ではクエリーからの処理は面倒臭い
④ 組合コード別のテーブルを作成する(テーブル作成クエリ)
⑤ エキスポートをするためのパラメータテーブルを作る
⑥ パラメータのテーブルはテーブル名とファイル名を用意する
⑦ ⑤のテーブルを...続きを読む

Qアクセスから自動で(マクロ化)csv形式で出力したいです。

こんにちは。いまアクセスのプログラムで困っています。
もし、お分かりでしたらお返事願います。

ymd = Format(Now(), "yyyymmdd")

DoCmd.OutputTo acTable, "テーブル名", acFormatXLS, "D:\XXXX" & "XYXY" & ymd & ".csv", True, ""


これでやると、うわべだけのCSV形式で実は.XLSになっていたということらしいのですが、こういう形でCSV形式で出力する方法は無いでしょうか?

Aベストアンサー

まず先に「エクスポート」メニューにてカンマ区切り出力のエクスポート定義を作っておきます。

エクスポート定義の作り方は以下です。

・データベースウィンドウにて出力したいテーブルの名前を選択し青色反転表示させる
・ファイル、エクスポートとクリック。ダイアログが出ます。
・とりあえず場所を指定して、ファイルの種類を「テキストファイル」に変えて、「保存」ボタンを押す。ウィザードが起動します。
・左下の「設定」ボタンを押し、カンマ区切り設定などを施す。
・閉じないで「保存」ボタンを押す。ダイアログが出てエクスポート定義名を入力するように促されます。
・デフォルトでの名前をAccessが勝手に作ってくれるので、もしそのままでよければOKを押す。ここでの名前を以降のVBAコード内で使用します。ただし、Accessはテーブル名+テーブル定義という名前に自動設定してくれる、テーブル名と「テーブル定義」という文字列の間に半角スペースが入っているので、注意。VBAコード内でこの半角スペースを忘れると動作しなくなってしまう。
うっとおしかったらこの段階で半角スペースを削除しておく。
・名前が決まったらOK
・ok
・ウィザードをキャンセルする。



で、コマンドボタンのクリックイベントなどに以下のように書くと、カンマ区切りのテキストファイルが出力されます。
ご質問でご提示いただいたコードのように拡張子をcsvにするコードを書けば、csvになります。


DoCmd.TransferText acExportDelim, "エクスポート定義の名前(半角スペースなどに注意)", "出力したいテーブルの名前", "出力したい場所のフルパス(ファイル名とその拡張子も含む)", -1

まず先に「エクスポート」メニューにてカンマ区切り出力のエクスポート定義を作っておきます。

エクスポート定義の作り方は以下です。

・データベースウィンドウにて出力したいテーブルの名前を選択し青色反転表示させる
・ファイル、エクスポートとクリック。ダイアログが出ます。
・とりあえず場所を指定して、ファイルの種類を「テキストファイル」に変えて、「保存」ボタンを押す。ウィザードが起動します。
・左下の「設定」ボタンを押し、カンマ区切り設定などを施す。
・閉じないで「保存」ボタ...続きを読む

QAccess2000形式からAccess2007形式への変更について

Access2000形式からAccess2007形式への変更について

Access2000で作ったmdbをAccess2007形式に変更しようと考えています。
このMDBをAccess2007形式で保存するのと、Access2007の空のMDBを作ってここにデータをすべてインポートするのとの違いは何でしょうか?

通常はどちらで行うのでしょうか?

以上、よろしくお願いいたします。

Aベストアンサー

> 通常はどちらで行うのでしょうか?

必要なものが「テーブルに格納したレコード(=データ)」だけでしたら、
どちらでも大差はないかと思います。

ただ、「通常」は『フォーム』や『マクロ』『モジュール』なども含めた
データベースシステム一式を引き継ぐはずですので、その場合は
Access2007形式での保存(データベースの変換)を行う、というのが
一般的かと思います。

理由としては、「インポート」の対象は『テーブル』『クエリ』『フォーム』
といった『オブジェクト』(AccessObject)に限られるのに対して、
「データベースの変換」の場合は、Access2000時に行った『起動時の
設定』や『オプション』(DAO.DatabaseのPropertyオブジェクト)も含めて
引き継がれること、が挙げられるかと思います。

例えば、mdbファイルの展開時に自動でフォームを開かせる方法には
「autoexecマクロの使用」と「起動時の設定」の2通りがありますが、
後者で対応していた場合、インポートしただけではフォームが自動で
開かなくなります(→再度『起動時の設定』でフォームを指定する必要
が生じる、と)。
(データベースの変換なら、どちらの方法でフォームを開いていたと
 しても、追加の作業は発生しません)

※VBAやマクロの互換性の問題による改修が必要になる可能性は、
  どちらの方法を採ったとしても、同様にあります。
  (そして、ここの負荷が大抵かなり重いのですが・・・(汗))

> 通常はどちらで行うのでしょうか?

必要なものが「テーブルに格納したレコード(=データ)」だけでしたら、
どちらでも大差はないかと思います。

ただ、「通常」は『フォーム』や『マクロ』『モジュール』なども含めた
データベースシステム一式を引き継ぐはずですので、その場合は
Access2007形式での保存(データベースの変換)を行う、というのが
一般的かと思います。

理由としては、「インポート」の対象は『テーブル』『クエリ』『フォーム』
といった『オブジェクト』(AccessObject)に限られるのに対して...続きを読む


このカテゴリの人気Q&Aランキング

おすすめ情報