プロが教えるわが家の防犯対策術!

宜しくお願いします。

(1)ACCESSのフォームをクリックして、抽出されたデータをエクセルに出力(マクロでやってます)
(2)抽出されたデータを、エクセル上で、セル幅や項目変更等を、手動にて行っています。


この、(2)の処理を、エクセルのマクロを用いて行いたいのですが、ACCESSからエクセルのマクロ
操作は可能なのでしょうか?

ご存知の方がいらっしゃいましたら、宜しくお願い致します。

A 回答 (3件)

>この、(2)の処理を、エクセルのマクロを用いて行いたい


>のですが、

というご質問でしたら、skikichiさんのご回答どおりでは
ないでしょうか?

そうではなく、(1)も(2)もAccessから自動で行いたい、
つまり、
>ACCESSからエクセルのマクロを操作したい
ということでしたら、
AccessVBA記述するときのVBEditorの画面で
「ツール」「参照設定」で、
「Microsoft Excel ×.0 Object Library」
にチェックをいれてあげれば、オートメーション(でしたっけ?)で、
AccessVBA上で、ExcelVBAのコードを書いて
Excelを制御することは可能です。

たとえば、Cドライブのルートに事前にExcelファイル
(sample.xls)を作り、以下のようなコードをAccessの標準モジュールに書いて(コピペして)
実行してやればExcelがVBA制御可能な状態でsample.xlsが
開きます。

Sub test01()
Dim objEXE As Object
Set objEXE = Excel.Application
objEXE.Workbooks.Open ("c:\sample.xls") 'Excelファイルを開く

objEXE.Visible = True 'Excelを表示する
objEXE.ScreenUpdating = True 'Excelの画面を更新する

End Sub

これはWordやOutlookからも同様に可能です。

Excelへの出力はTransferほにゃららという
命令でやればいいと思います。
    • good
    • 0

セルの整形だけでいいのですか?



Excel(2003の場合)のマクロでファイルオープン時に・・・

Sub Auto_open()
Cells.Select
Cells.EntireColumn.AutoFit
End Sub

でよろしいかと思いますが!?

もし、保存ファイル名を可変にしたり、マクロは保存したくないとかでしたら、ちょっと工夫がいりますが可能です。

分らない点はご質問ください。
    • good
    • 0

どのような操作を想定されていますか?



セル幅や項目変更等は決まったパターンではないということですね!?
データ内容等で可変てことですか?

Excel側にその条件をパラメーターで引き渡し、マクロ操作するのではダメですか?

AccessからExcelへのデータ出力のマクロは何を使用されていますか?

この回答への補足

ご回答有難うございます。

想定している作業は、セルの幅、列の調整だけです。
エクセルに出力すると、セル幅や列の幅が均等になっていないので、こちらをきれいにしたいだけなのです。

>Excel側にその条件をパラメーターで引き渡し、マク
>ロ操作するのではダメですか?

この作業は、どのようにされるのですか?自分、ACCESSを使うのが久々なので、完全に忘れてしまっているものですから・・・

>AccessからExcelへのデータ出力のマクロは何を使用
>されていますか?

アクション「出力」でエクセルに出力しています。

VB?VBA?を使う手もあるようなのですが、自分全く分からない者で。。。

大変お手数ですが、宜しくお願い致します。

補足日時:2005/04/15 16:20
    • good
    • 0

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

関連するカテゴリからQ&Aを探す