Excel VBA質問箱 IV

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

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


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

【7253】WebSingleBlockTextImport プロパティ sabo 03/8/27(水) 18:01 質問
【7259】Re:WebSingleBlockTextImport プロパティ こうちゃん 03/8/28(木) 8:43 回答
【7262】Re:WebSingleBlockTextImport プロパティ sabo 03/8/28(木) 10:42 質問
【7263】Re:WebSingleBlockTextImport プロパティ こうちゃん 03/8/28(木) 11:22 回答
【7295】Re:WebSingleBlockTextImport プロパティ sabo 03/9/1(月) 16:25 お礼

【7253】WebSingleBlockTextImport プロパティ
質問  sabo  - 03/8/27(水) 18:01 -

引用なし
パスワード
   「WebSingleBlockTextImport プロパティ」を用いてHTML内のデータをインポートし,そのデータを同一のマクロで処理をしたいのですが,インポートするには一度マクロを終了させなければなりません.同一のマクロで処理するためには,マクロを終了せずにインポートすることが必要です.これを解決できる方法はないでしょうか.ご存知でしたら教えていただけないでしょうか.
どうぞ宜しくお願いいたします.

【7259】Re:WebSingleBlockTextImport プロパティ
回答  こうちゃん E-MAIL  - 03/8/28(木) 8:43 -

引用なし
パスワード
   saboさん、こんにちは

>「WebSingleBlockTextImport プロパティ」を用いてHTML内のデータをインポートし,そのデータを同一のマクロで処理をしたいのですが,インポートするには一度マクロを終了させなければなりません.同一のマクロで処理するためには,マクロを終了せずにインポートすることが必要です.これを解決できる方法はないでしょうか.ご存知でしたら教えていただけないでしょうか.

Webクエリを使ったことがないので、明確な回答はできないのですが、どなたかからレスが付くまでのつなぎで・・

下記のコードでマクロ内でHTML内のデータインポートができるようです。
インポート後、マクロを終了せずに次の処理が行えますが、こういうことじゃないんでしょうか?
お役にたたなかったらごめんなさい。
#HELPとマクロ記録だけでつくりました。不具合があったらごめんなさい。(^^;)

Sub Macro1()
  
  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
  
  With Selection.QueryTable
    .Connection = _
      ConnString
    .WebSelectionType = xlAllTables
    .WebFormatting = xlWebFormattingNone
    .WebPreFormattedTextToColumns = True
    .WebConsecutiveDelimitersAsOne = True
    .WebSingleBlockTextImport = True
    .WebDisableDateRecognition = False
    .Refresh BackgroundQuery:=False
  End With

  MsgBox "aaa"

End Sub

【7262】Re:WebSingleBlockTextImport プロパティ
質問  sabo  - 03/8/28(木) 10:42 -

引用なし
パスワード
   ▼こうちゃん さん:
こうちゃんさん ありがとうございます.

以下のコードで実行してみたところ,
.Connection = ConnString や .Refresh BackgroundQuery:=False のところで
「実行時エラー"1004" バックグラウンドでデータを更新中であるため,この操作は
行えません.」とでます.
こうちゃんさんが実行されたときは,このようなエラーがでませんでしたか?

いろいろ試してみましたが,どうも解決できません.
これについて解決策等をご教授頂ければ幸いです.
どうぞ宜しくお願いいたします.

>
>Sub Macro1()
>  
>  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
>  
>  With Selection.QueryTable
>    .Connection = _
>      ConnString
>    .WebSelectionType = xlAllTables
>    .WebFormatting = xlWebFormattingNone
>    .WebPreFormattedTextToColumns = True
>    .WebConsecutiveDelimitersAsOne = True
>    .WebSingleBlockTextImport = True
>    .WebDisableDateRecognition = False
>    .Refresh BackgroundQuery:=False
>  End With
>
>  MsgBox "aaa"
>
>End Sub

【7263】Re:WebSingleBlockTextImport プロパティ
回答  こうちゃん E-MAIL  - 03/8/28(木) 11:22 -

引用なし
パスワード
   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

【7295】Re:WebSingleBlockTextImport プロパティ
お礼  sabo  - 03/9/1(月) 16:25 -

引用なし
パスワード
   ▼こうちゃんさん,どうもありがとうございました.
教えていただいた方法ではやはり無理でした.
原因はOS等の違いからくるのでしょうか.
よくわかりませんが,今回は断念することにします.
いろいろとアドバイスを頂きましてどうもありがとうございました.

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