[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『別ファイルのWEBクエリー操作について』(愛宕)
お世話になります。
BOOK_Aのマクロから、BOOK_Bを開きこれのマクロ(WEBクエリー更新)を実行したいのです。
手動によるステップ実行では更新されますが、一括実行では更新されません。
どなたかアドバイスをお願いします。
BOOK_Aのマクロ(抜粋)
Workbooks.Open Filename:="C:\Users\user\みずほ\みずほLOTO6.xlsm" Application.Run "みずほLOTO6.xlsm!RenewLoto6_Tbl"
BOOK_B(みずほLOTO6.xlsm)のマクロ
Sub RenewLoto6_Tbl() 'テーブルを更新する
Worksheets("取込データ").Activate If ActiveSheet.QueryTables.Count = 0 Then Call Macro1 '---クエリテーブルが無ければ実行--- End If With ActiveSheet.QueryTables(1) .Connection= "URL;http://www.mizuhobank.co.jp/takarakuji/loto/loto6/index.html" .WebTables = 1 '---1番上の表を取り込みデータを更新する--- .Refresh End With End sub
< 使用 Excel:Excel2010、使用 OS:Windows10 >
Macro1の内容が開示されていないのですが、
Macro1が動く環境になっているのでは?
(その都度Querytableを削除しているとか。)
いずれにせよ、一括実行の際の動作をもっとよく観察する必要が
あるのではないですか?
(γ) 2016/04/21(木) 06:53
Sub Macro1()
' -------- 新規作成時に使用する --------------
With ActiveSheet.QueryTables.Add(Connection:= _ "URL;http://www.mizuhobank.co.jp/takarakuji/loto/loto6/index.html", _ Destination:=Range("$B$2")) .Name = "ロト6" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlOverwriteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = False .RefreshPeriod = 0 .WebSelectionType = xlSpecifiedTables .WebFormatting = xlWebFormattingNone .WebTables = "1" .WebPreFormattedTextToColumns = True .WebConsecutiveDelimitersAsOne = True .WebSingleBlockTextImport = False .WebDisableDateRecognition = False .WebDisableRedirections = False .Refresh BackgroundQuery:=False End With End Sub
(愛宕) 2016/04/21(木) 10:42
いやいやすっかり放置したことになっていました。どうも失礼。 自宅でしかアクセスせず、アクセス回数も最近減っていたので見逃してしまっていました。
それで、もう一度質問を読み直してみたのですが、 BackgroundQuery周りを確認されたらどうでしょうか。
というのは、 .BackgroundQuery = True と設定されていて、 実行時には、Refreshとだけしているので、 Trueにしたがって、本体命令は直ぐに次の命令に制御が移り、 Backgroundで取得が遅れてなされる、という状況なのでしょう。
遅れても更新されれば問題がなく、更新すらされないということなら、 別の問題があるのでしょう。私にはわかりません。
(γ) 2016/04/24(日) 12:46
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.