こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【Excel】データベースクエリ 開いたらデータの更新後にWorkbook_Openイベントを実行させたい。

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

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

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

投稿日時 - 2009-07-16 21:22:50

QNo.5131146

困ってます

質問者が選んだベストアンサー

'ThisWorkbookModule
Option Explicit

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

Private Sub macro1()
  '
End Sub

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

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

投稿日時 - 2009-07-16 22:56:57

お礼

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

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

大変参考になりました。

投稿日時 - 2009-07-16 23:19:47

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問