重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

エクセル2003です。
シートに
「外部データの取り込み」→「新しいデータベースクエリ」でアクセスのテーブルを表示させています。
データ範囲プロパティで「ファイルを開く時にデータを更新する」にチェックをいれています。
なおかつWorkbook_Openイベントにセルの書式、加工に関するコードを記載しています。

ファイルを開いた時に、
データの更新→書式設定
をしたいのですが、
Workbook_Openイベント→データの更新
になってしまい、結局書式を加工しても更新されて意味がなくなってしまいます。

「データの更新」より後に発生するイベントはありますか?
アドバイス宜しくお願い致します。

A 回答 (1件)

'ThisWorkbookModule


Option Explicit

Private Sub Workbook_Open()
  Application.OnTime Now, Me.CodeName & ".macro1"
End Sub

Private Sub macro1()
  '
End Sub

...というような感じでOnTimeメソッドで一拍置いてみてはどうでしょうか。
もしくは「ファイルを開く時にデータを更新する」を止めて
OpenイベントでQueryTableのRefreshメソッドを実行すれば良いような気もしますが。

>セルの書式、加工に関するコード...
プロパティ「セルの書式を保持する」だけではダメな内容なのでしょうね。
    • good
    • 0
この回答へのお礼

なるほど!
質問してよかったです!
ご回答ありがとうございます。

>プロパティ「セルの書式を保持する」だけではダメな内容なのでしょうね。
そう言われるとも思いました ^^;
書式もそうですが、置換などもあるためマクロでやりたかったのです。

大変参考になりました。

お礼日時:2009/07/16 23:19

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