Excel VBA質問箱 IV

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

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


4110 / 13644 ツリー ←次へ | 前へ→

【57926】このWebクエリによって返されるデータがありません のエラーについて まさと 08/9/21(日) 19:24 質問[未読]
【57928】Re:このWebクエリによって返されるデータが... かみちゃん 08/9/21(日) 19:33 発言[未読]
【57929】Re:このWebクエリによって返されるデータが... まさと 08/9/21(日) 21:12 質問[未読]
【57930】Re:このWebクエリによって返されるデータが... かみちゃん 08/9/21(日) 21:38 発言[未読]
【57931】Re:このWebクエリによって返されるデータが... りん 08/9/21(日) 21:42 発言[未読]
【57932】Re:このWebクエリによって返されるデータが... かみちゃん 08/9/21(日) 21:52 発言[未読]
【57935】Re:このWebクエリによって返されるデータが... まさと 08/9/22(月) 0:46 お礼[未読]
【57942】Re:このWebクエリによって返されるデータが... りん 08/9/22(月) 20:47 発言[未読]
【58388】Re:このWebクエリによって返されるデータが... フェス太郎 08/10/23(木) 10:15 お礼[未読]

【57926】このWebクエリによって返されるデータが...
質問  まさと  - 08/9/21(日) 19:24 -

引用なし
パスワード
   最近気づいたのですが、WEB上の表のテーブル番号を知ろうと思い、マクロの記録機能を使い、”新しいWEBクエリ”を使用して、コードを取ろうと思ったのですが、”このWebクエリによって返されるデータがありません” というエラーが出てきてしまいます。
読み込めないページなのか? と思い、自分でコードに書き換え、読み込んでみたらうまく読み込めます。何回か試したのですが、”外部データ取り込み”→、”新しいWEBクエリ”から読み込ませたらうまく動作しません。
もし同じ現象を解決された方がいましたらどうかアドバイスをよろしくお願いします。
ちなみに、使用環境は以下通りです。
バージョン EXCEL 2003
試験ページ (抜粋)://money.www.infoseek.co.jp/MnStock/sranking/?t=r&k=r&m=0です。 

【57928】Re:このWebクエリによって返されるデータ...
発言  かみちゃん  - 08/9/21(日) 19:33 -

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

> このWebクエリによって返されるデータがありません

提示されたURLでマクロの記録で記録してみましたが、特にこのようなメッセージは確認
されず、取り込めました。

もし、不具合が出るようなコードがあれば、提示していただけないですか?

【57929】Re:このWebクエリによって返されるデータ...
質問  まさと  - 08/9/21(日) 21:12 -

引用なし
パスワード
   お返事ありがとうございます。
今回マクロ関係なく、手動で読み込ませたらエラーが出てしまいます。
マクロで、指定した表、今回はテーブル番号13ですね。 これを"新しいwebクエリ”から取り込んだらエラーが出てしまいます。私のPC以外にも複数代で試しましたが、同様のエラーでました。 office2007の機体でも同様でした。
かみちゃんさんはどの様な手順で行ったのでしょうか? よかったら教えてください。

【57930】Re:このWebクエリによって返されるデータ...
発言  かみちゃん E-MAIL  - 08/9/21(日) 21:38 -

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

>今回マクロ関係なく、手動で読み込ませたらエラーが出てしまいます。

あまりそういう事象には遭遇したことがありません。

>どの様な手順で行ったのでしょうか?

WindowsXP Pro SP2 + Excel2002 SP3 の環境で以下のVBAコードで試してみたところ、
取り込めました。

Sub Sample()
 Dim strURL As String
 
 strURL = StrConv("http", vbNarrow) & "://money.www.infoseek.co.jp/MnStock/sranking/?t=r&k=r&m=0"
 With ActiveSheet
  With .QueryTables.Add(Connection:="URL;" & strURL, Destination:=.Range("A1"))
   .AdjustColumnWidth = False
   .WebFormatting = xlWebFormattingNone
   .Refresh BackgroundQuery:=False
  End With
 End With
 MsgBox "取り込みました"
End Sub

動作確認済みです。

【57931】Re:このWebクエリによって返されるデータ...
発言  りん E-MAIL  - 08/9/21(日) 21:42 -

引用なし
パスワード
   まさと さん、こんばんわ。

エラーの再現について。

>今回マクロ関係なく、手動で読み込ませたらエラーが出てしまいます。
>マクロで、指定した表、今回はテーブル番号13ですね。 これを"新しいwebクエリ”から取り込んだらエラーが出てしまいます。私のPC以外にも複数代で試しましたが、同様のエラーでました。 office2007の機体でも同様でした。

 表だけ(テーブル18)を取り込もうとすると上記のエラーになり、ページ全体や、種類のあたりから表を含む範囲(テーブル13)を取り込むとエラーにならずにデータを取得できるようです(XL2003およびXL2007で検証)。理由はわかりませんが、マクロ、手動とも同様(13は取得可能で18は取得不可)でした。

ちなみに、
■■  種類:値上がり率 | 値下がり率 | 出来高 | 時価総額
↑この左側(実際は重なっていて見にくい)のがテーブル13の選択ボタン。

【57932】Re:このWebクエリによって返されるデータ...
発言  かみちゃん E-MAIL  - 08/9/21(日) 21:52 -

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

>マクロで、指定した表、今回はテーブル番号13ですね。

りんさんのコメントを見て、ひとつ大事な前提条件を忘れていました。
テーブル番号を指定せずに全体を取り込んでいることです。
全体を取り込んで、不要な部分をカットしたほうがいいと思うからです。

なお、試しに、先ほど提示したコードに
   .WebTables = "18"
とすると、おっしゃるようなエラーになり、
   .WebTables = "13"
とすると、うまく取り込めました。

理由は、りんさん同様、わかりません。

【57935】Re:このWebクエリによって返されるデータ...
お礼  まさと  - 08/9/22(月) 0:46 -

引用なし
パスワード
   かみちゃんさん、りんさん、アドバイスどうもです。助かってます。

現象に対する原因はわかりませんが、アドバイス通り、表単独ではなく、表を含む一回り大きい単位で取り込んだらうまく取り込めました。 今度から、同様のエラー出たときは同様の手順で考えたら解決の糸口になりますね。

すごく有力な情報です。ありがとうございます。今のままでもなんとかなりそうですが、原因をご存知の方がいましたらどうぞお願いします。

【57942】Re:このWebクエリによって返されるデータ...
発言  りん E-MAIL  - 08/9/22(月) 20:47 -

引用なし
パスワード
   まさと さん、こんばんわ。

>現象に対する原因はわかりませんが、アドバイス通り、表単独ではなく、表を含む一回り大きい単位で取り込んだらうまく取り込めました。 今度から、同様のエラー出たときは同様の手順で考えたら解決の糸口になりますね。

ソースをざっとみた感じだとTableも16しかないようですし、総当たりで調べてみたところ、インデックス値が間違っているような感じです。
ちなみに、マクロで取り込むときは、16を指定すると単独表が取り込めました。
それを手動で編集しなおそうとすると、アイコンは違う部分を指していました。

仕様かな。

【58388】Re:このWebクエリによって返されるデータ...
お礼  フェス太郎  - 08/10/23(木) 10:15 -

引用なし
パスワード
   私も助かりました。ありがとうございまする。

>かみちゃんさん、りんさん、アドバイスどうもです。助かってます。
>
>現象に対する原因はわかりませんが、アドバイス通り、表単独ではなく、表を含む一回り大きい単位で取り込んだらうまく取り込めました。 今度から、同様のエラー出たときは同様の手順で考えたら解決の糸口になりますね。
>
>すごく有力な情報です。ありがとうございます。今のままでもなんとかなりそうですが、原因をご存知の方がいましたらどうぞお願いします。

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