Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1696 / 13646 ツリー ←次へ | 前へ→

【72560】webクエリが進まなくなる現象への対応について アツ 12/8/24(金) 23:05 質問[未読]
【72563】Re:webクエリが進まなくなる現象への対応に... かみちゃん 12/8/25(土) 7:28 発言[未読]
【72576】Re:webクエリが進まなくなる現象への対応に... アツ 12/8/26(日) 2:38 質問[未読]

【72560】webクエリが進まなくなる現象への対応に...
質問  アツ  - 12/8/24(金) 23:05 -

引用なし
パスワード
   初めまして。
excel2010のVBAで複数のwebクエリをループさせて株式関連の情報を取得しているのですが、
数十回〜数百回に1回の頻度で、
”情報を取得するためにサーバーに 接続中です。:取り消すにはEscキーを押してください。”
とステータスバー(真ん中に境目がないので厳密にはステータスバーではないかもしれません)の位置に表示されて、webクエリの動作が進まなくなります。
(Escを1度押すと、また動作が再開して進みます)

この現象が発生した際に、webクエリの動作が進むようにしたいのですが、
@webクエリ取得中に上記のメッセージがステータスバーに表示されたらEscを1度押す
Awebクエリの動作が一定時間進まなくなったら(何もおこらない状態が続いたら)Escを1度押す
Bエクセルの動作が一定時間進まなくなったら(何もおこらない状態が続いたら)Escを1度押す
このようなVBAを作成する事は可能でしょうか?
”○○をしながら”という動作が自分の能力では作れない状況でして、ご存知の方がいらっしゃればご教示頂けると助かります(VBAの特性上、難しいでしょうか…)。
(VBAでなくVBScriptやエクセルの動作を監視できるソフト等、他の解決法でも結構です)

webクエリについては以下の対処はしています。
・1ループ終わるごとに、webクエリの接続(Connections)を全て削除
・webクエリ読み込み完了の都度IEの一時ファイルを削除

ご参考にOSおよびエクセル・IEのバージョンは以下です。
OS    Windows7
エクセル excel2010
IE   Internet Explorer 9

あと少しのところなのでなんとか解決できる方法はないでしょうか。
その他、必要情報があればお知らせください。
よろしくお願いいたします。

【72563】Re:webクエリが進まなくなる現象への対応...
発言  かみちゃん E-MAIL  - 12/8/25(土) 7:28 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>webクエリについては以下の対処はしています。
>・1ループ終わるごとに、webクエリの接続(Connections)を全て削除
>・webクエリ読み込み完了の都度IEの一時ファイルを削除
>
>ご参考にOSおよびエクセル・IEのバージョンは以下です。
>OS    Windows7
>エクセル excel2010
>IE   Internet Explorer 9
>
>あと少しのところなのでなんとか解決できる方法はないでしょうか。
>その他、必要情報があればお知らせください。

この環境が手元にないので、すぐに確認はできないのですが、
今できているコードを提示していただくことはできませんか?

【72576】Re:webクエリが進まなくなる現象への対応...
質問  アツ  - 12/8/26(日) 2:38 -

引用なし
パスワード
   かみちゃんさん
返信ありがとうございます。

>この環境が手元にないので、すぐに確認はできないのですが、
>今できているコードを提示していただくことはできませんか?

長いコードになっていますので、概略としては、
複数サイトからwebクエリで情報を取得する構成で、
取得するサイトごとにPrivate Subに分けて、Callで呼び出しています。
これをDo Loopで繰り返ししています。


Callで呼び出しているwebクエリ部分は以下です。

  With Worksheets("取込み").QueryTables.Add(Connection:= _
   "URL;●● Destination:=Worksheets("取込み").Range("J10"))
    .Name = "MSN Money(会社情報・決算期)取り込み"
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = False
    .RefreshPeriod = 0
    .WebSelectionType = xlEntirePage
    .WebFormatting = xlWebFormattingNone
    .WebPreFormattedTextToColumns = True
    .WebConsecutiveDelimitersAsOne = True
    .WebSingleBlockTextImport = False
    .WebDisableDateRecognition = False
    .WebDisableRedirections = False
    .Refresh BackgroundQuery:=False
  End With

*URLが記入できないため、●●表記にしています。
そのほか確認したい個所があればお知らせいただけますでしょうか?

1696 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free