プロが教える店舗&オフィスのセキュリティ対策術

アクセスのデータをエクセルに移動できますか?方法があればぜひ教えてください!よろしくお願いします。

A 回答 (3件)

'AccessVBAで書くとしたら・・・↓(97/2000で動きます。

XPは知りません!)

Dim RetVal As String 'Shellの変数宣言
Dim vPath As Variant '引数(Path)の変数宣言

'まずAccessのテーブル「TestData」をCドライブの下にあるTest.xlsにインポート
DoCmd.TransferSpreadsheet acExport, , "TestData", "c:\Test.xls"

vPath = "c:\Test.xls"
RetVal = Shell("""" & "C:\Program Files\Microsoft Office97\Office\EXCEL.EXE" & """" _
& """" & vPath & """", 1)
'Accessを閉じる。
Application.Quit

'以上でAccessのテーブルをExcelにインポートしてExcel起動までです。
'適当なフォームにコンボボックス(ボタン)を1つ作って「クリック時」のクラス
'モジュールにカット&ペーストしてみてください。
'注意!「C:\Progr~1\Micros~1\Office\EXCEL.EXE」はインストールした端末
'により異なりますので、デスクトップ上にAccessのショートカットがあれば
'プロパティを開いて「リンク先を探す」等で探してください。もしくはWindows
'の検索で「*Access*」等で探してください。

'Excel側のMAXレコードを超えなければErr無くできるはずです。
'わからなかったらまた質問してください。(暇な時に返事します。)
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。とても細かく説明していただき、とても一般人とは思えません。とてもそんなに知識があるとは、うらやましいです。

お礼日時:2002/02/20 22:38

少量でしたら、コピーして貼付けられます。


大量でしたら、クエリとマクロで可能です。
マクロには、出力、エクセル形式で
という指定ができますので
クエリで希望のデータ、あるい全部を
指定してマクロに設定すれば
自動で出力します。
ただ、エクセルには、データ数に制限があります。
MAX6万件ほど。
出力時には、これを超えないような
条件を設定して、必要なら分割して出力します。

エクセルからも条件が整えばアクセスのデータを
引き出すことが可能です。

何かありましたら、質問ください。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。エクセルとアクセスが連携すると便利ですね。

お礼日時:2002/02/20 22:34

Accessの「ファイル」ー「エクスポート」でファイルの種類をExcelにしてテーブルを保存すれば良いと思います。

    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございました。一度試してみます!

お礼日時:2002/02/20 22:30

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