|
saboさん、こんにちは
>以下のコードで実行してみたところ,
>.Connection = ConnString や .Refresh BackgroundQuery:=False のところで
>「実行時エラー"1004" バックグラウンドでデータを更新中であるため,この操作は
>行えません.」とでます.
>こうちゃんさんが実行されたときは,このようなエラーがでませんでしたか?
でませんでした。
>いろいろ試してみましたが,どうも解決できません.
>これについて解決策等をご教授頂ければ幸いです.
>どうぞ宜しくお願いいたします.
提示したコードはWebクエリの作成と更新を続けて行うコードです。
データが大きかったり、URLを開くのに時間がかかると、作成途中で更新がはじまってしまい、実行時エラーになるかもしれません。
下記のような作成のみだとどうでしょ?
また、すでに作成済みのWebクエリの更新なら、Webクエリをアクティブにしておいて(カーソルをWebクエリ範囲内においといて)更新手順のみ実行してみてください。
新規クエリ作成
Sub test()
Dim ConnString As String
ConnString = _
"URL;http://ABC.co.jp/DEF/HIJ.htm"
With ActiveSheet.QueryTables.Add(Connection:=ConnString, _
Destination:=Range("B1") _
)
.Refresh
End With
End Sub
クエリ更新
Sub Macro2()
Dim ConnString As String
ConnString = _
"URL;http://ABC.co.jp/DEF/HIJ.htm"
With Selection.QueryTable
.Connection = _
ConnString
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = True
.WebDisableDateRecognition = False
.Refresh BackgroundQuery:=False
End With
End Sub
|
|