• ベストアンサー

エクセルのWEBクリエで取り込めないデータ

DOUGLAS_の回答

  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.8

>お手数をおかけします。  ぃぇぃぇ、http://okwave.jp/qa/q6129006_2.html を思い出しますゎ  (^凹^) -------------------------------------------------- >いずれでもTESTマクロでは「こんにちわ」までたどり着きました。  ということは、(甲)IEオブジェクトの読込、(乙)表部分の htmlコード の取り込み、(丙)クリップボード オブジェクト の操作、以上3点が問題なく行なわれているということになります。 -------------------------------------------------- >サンプルコード1による場合は、 >差し替えた・・・ところで >No4と同じメッセージになりました。  では、先ず、 myTbl = Left(myTbl, InStr(・・・ の行の頭に「’」を付けて コメントアウト し、それから マクロ を実行してみられるとどうなりますでしょうか?【問1】  この行は、表の末尾にある「*個人的に楽しむ~~~御了承下さい。」の2行を削除するための コード ですので、さほど重要ではありません。  次に、下記の操作の結果をお知らせください。【問2】 1)「myTbl = objIE.Document・・・」の行で [F9] キー を押下して ブレークポイント を置きます。 2)[デバッグ(D)] - [ウォッチ式の追加(A)...] で [ウォッチ式の追加] ダイアログ を開き [式(E):] に「myTbl」と入力して [OK] を クリック します。 3)[F5] キー で一気に マクロ を実行します。 4)「myTbl = objIE.Document・・・」の行で マクロ が止まりますので、それ以降は [F8] キー を押下して ステップ イン デバッグ します。 5)エラー が出た時点で、イミディエイト ウィンドウ を開き(そこに何か書かれていた場合は、[Ctrl] + [A] ですべて選択して、[Delete] キー で、削除してください)、「? myTbl」と書いて [Enter] を押下してください。 6)その結果、(ア)「? myTbl」の下に「空白または改行」だけが2~3行表示された場合は、上記の (乙) が出来ていないということになります。  (イ)「空白または改行」ではなくて、「<div id="SongLists"」で始まる長~い文字列が表示された場合は、「htmlコード の取り込み」はできているけれども、その中に「class="caption"> 」という文字列がないので、「InStr(・・・)」が「0」になり、つまり、「InStr(・・・) - 1」の値が「-1」となって「Left(myTbl, InStr(・・・) - 1)」の式の意味が「myTbl の左から -1 文字分」ということになります。  従って、「No4と同じメッセージになりま」す。  後者の場合は、きちんと「htmlコード の取り込み」が出来ていないことになりますが、その原因は分かりません。  2~3秒経って [F8] キー を押下したら、問題なく次に進むこともあります。  気休めに Application.Wait (Now + TimeValue("0:00:2")) を「3秒」とか「5秒」に変えてみるといかがでしょうか?【問3】 -------------------------------------------------- >サンプルコード2の場合は、 >数字入力Boxで数字を入れたあと >再度数字入力Boxが表示される繰り返しになってしまいました。  これは、恐らく、上記の (乙) が出来ていない状態ではないかと思われます。  ということは、「サンプルコード2」は非常に冗長な コーディング になっておりますので、この際、切り捨てて「サンプルコード1」の方でお考えください。 --------------------------------------------------  ちなみに、プロフィール を拝見すると、「ADSL」回線とお書きですが、下り速度は http://www.musen-lan.com/speed/ で計ると、どのくらい出ていますでしょうか?【問4】  私の環境(Yahoo! 12MB、基地局から約2km)で計ると、「推定転送速度: 5.94Mbps (742KB/sec)」と計測されました。 http://www.bspeedtest.jp/ で計ると、「下り受信速度: 5.9Mbps(5.99Mbps,749kByte/s)」と出ました。 #それと、これは憶測ですが、「ANo.5」の「実行時エラー 1004」は、既存の ブック でその マクロ を実行した場合に、C列以右の計算式に不合理が生じているような気もします。

noro6857
質問者

お礼

「を思い出しますゎ  (^凹^)」 そうですねぇ。あのときはずいぶん親切にしていただき感謝しています。 あのマクロは現在でも重宝していて毎日のように活用していますが、あいにくとあの放送局が7月末で終了となるため、別の局の同内容を掲載した別サイトからの取り込みとなってしまうので、後に別の方(本当はDOUGLAS_様での回答がつながることを期待したのですが)に教えてもらったWEB取り込みマクロを使用することになりますが、取り込み後の並べ替えマクロは引き続き利用させていただくことになります。 しかし、「勉強します」といっておきながら相変わらず他の方をたよりにしてしまい恥ずかしいです。 さて、 問1ですが 「行の頭に「’」を付け」にするとうまく取り込めました。(問3も含めて) 欄外の注はあってもかまわないのでこれでいけるかと思います。 問2ですが 「始まる長~い文字列が表示」されました。 問3 5秒にしたところ取り込めました。 したがってA3のコードにより問1/問3の処理をすることでなんとかなりそうです。 「なんとか」というのは どういう加減かよくわかりませんが、ときどき 「実行時エラー1004 Worksheetクラスのoasteメソッドが失敗しました。」 デバック ActiveSheet.Paste ということが発生することがあり、そのときはctrl+Vにより手動で貼り付けを行うことで対処できています。 また、読み込めないとき、にA列B列のセルはなにも書かれていないけれどこれをいったん削除してみると取り込めるようになりました。 既存の関数入りのsheetでも同じ方法で可能でした。 あとはA列に「楽曲タイトル」の記述のある行の削除ですが、取り込んだあと別マクロで作業してもいいかと思います。find関数のようなものを使うことになりましょうか。 ※ADSL回線は局から2Kmを超える所の環境のため残念ながら3.4Mbbsしか出ていません。Yahoo! 50MBに入っていてもなんとなく無駄のような気がします。 (光はちょっと高いし。ちなみに加入ADSLはNexyBBといって50Mbbsで月2998円です)

関連するQ&A

  • Webクリエ うまく読み込みできません><

    Webクリエ うまくできません>< http://fx.himawari-group.co.jp/report/weeklycalendar.html のサイトのカレンダーを読み込みたいのですが・・・ エラーが出てしまいます! *画像参照お願い致します!

  • 新しいクリエ買ったのはいいんですが

    とうとうVZ90買いました。 いままで使っていたクリエからデータを移したいのですが、そのままできるんじゃないかなと思い、 強引にホットシンクさせたらやっぱりダメでした。 前のクリエの全部のデータをそのまま移せる方法って ないんでしょうか・・・? MSバックアップで移行もしてみましたが、このデバイスでバックアップされたものではないと蹴られてしまいました

  • ウェブサイトのデータの入手方法

    VisualBasic6.0でウェブサイトのデータをオブジェクトとして 取得する方法が判りません。 ExcelのWebクリエのようにHTMLのテーブルタグの内容が直接 オブジェクトとして取得できるようにしたいのですが、方法 が判りません。 今は、タグを一つ一つ外してから、読み込むようにしている のですが、サイトが変更されると一からやり直しなので、で きればもっと簡単な方法があればお願いします。

  • エクセルのデータを自動的にWebに入れるには?

    いつもお世話になっています。 エクセルのデータをホームページに入れる時、決まった動作の繰り返しをするので、これを自動化することは出来ないでしょうか?VBAだとエクセル内部でしか出来ないのではないでしょうか? こういう操作です。 エクセルの場面でセルをCtrl+Cでコピーして、リターンキーを押して(セルが次のセルへ飛ぶ)、Alt+TabでWeb画面へ移動して、Ctrl+VでWebにエクセルの数値を貼り付けて、Tabキーを数回(回数は一定)押して次の入力欄へ移動させて、Alt+Tabでエクセル画面へ戻って、またCtrl+Cでコピー。 この繰り返しでエクセルの数値をWeb画面に入力するのです。このような定型的な動作はコンピューターが得意とするはずですが、VBAでは実現できない(と思う・・。エクセルの外部にまで操作出来るのでしょうか?)。 何か方法があるはずですが、ご存知の方がいらっしゃればよろしくお願いしたします。

  • ボタン天国をインストールするとWEBからのデータ取り込みができない

    Excel用ボタン天国100をインストールしたところ、「データ」→「外部データの取り込み」→「新しいWEBクリエ」によるWEBデータの取り込みが出来なくなりました。

  • VBAを用いて、ウェブからデータを取り込みたい

    エクセルVBAでウェブからデータを取り込みたいと思い、いろいろ挑戦していますが、以下のやり方(1)と(2)は失敗中です。 取り込みたいのは、ウェブページ中に描かれてある「表」の部分のデータです。 アドバイスをお願いいたします。 ◆◆◆◆◆失敗(1)◆◆◆◆◆ ActiveSheet.QueryTables.Add(Connection:="url;http://***省略***.htm", Destination:=Range("A1")) の方法の場合、取得したデータをエクセルシートに張り付けた場合に生じる文字化けがなおらず挫折・・・ QueryTableは文字コードを指定して読み込めないので困難という結論に至りました。 ちなみに目的のウェブページはshift-JISでcharsetされてますが、取得したいデータ部分はSQLサーバーでUTF-8で記述されていると思われます。 →http://okwave.jp/qa/q7864296.html ◆◆◆◆◆失敗(2)◆◆◆◆◆ ユーザーフォーム機能から、WEBブラウザーコントロールを用いて目的のウェブページを表示する方法では、表示したウェブページの情報をエクセルシートに転記する方法が分からず挫折・・・ url_report = "http://****省略.htm" WebBrowser1.Navigate url_report 'ここから先、どうすればエクセルシートにデータ取得できる? 上記(1)や(2)以外で他のやり方も含め、経験者の方のアドバイスをお願いいたします。 ウェブページ中の表データをエクセルシートにVBAで自動取得したいのですが・・・何か良い方法がありますでしょうか? ((+_+))

  • クリエでMacでMP3は聴けますか?

    クリエ(Clie)のPEG-N700CがMP3に対応したと雑誌で読みました。 これまで、MacからクリエにはOpenMG形式のファイルを落とせなかったようですが、MP3になって、Macからもクリエに音楽データを落とせるようになるのでしょうか? Macユーザーなんですが、クリエでMP3を聴きたいのです。方法を教えてください。 まず、メモリースティックとメモリースティックリーダーはやっぱり必要なんですよね? また、ダウンロードが始まったというAudioPlayer Ver.2はMacでも使えるのでしょうか?

  • Excel VBA で Webからデータを取得する方法

    Excel VBAを使ってWebページからデータを 取得する方法を探しています。 最初に、そのWebページの認証ページにIDをパスワード をVBAから自動で送信したいのですが、方法が全く わかりません。 認証ページはJavascriptを利用したページです。 どちらかご存知の方がおられましたら、 ご教授ください。

  • またまたエクセルでWEBデータを取り込む

    下のVBAは以前にお世話になった方に教えていただいたWEBからのデータ取得するものです。 日付を入力することで、その日のデータを取り出すことができます。 ところがWEBのURLが変更になってしまいました。 当方、VBAは疎いため適当に部分修正で利用しようとしたもののなかなかうまくできません。 呼び出したデータも以前と若干形式がちがっているためそのへんも直したいところがあるのですが 取りあえずWEBの取り出し方記述を教えていただければありがたいです。 (70, 80, 32, 62, 101,…というのはたぶんジャンル区分なので今回は不要です。) よろしくお願いします。 WEBURL(旧) http://www.m******/****/0062/00620726.html WEBURL(新) http://m*****/*****/2012-04-17/ ●旧WEB取り出しVBA Sub Using_Web_query30A() Dim arrMenu As Variant Dim myDate As String Dim myURL As String Dim Connection_URL As String arrMenu = Array(70, 80, 32, 62, 101, 102, 90, 120, 40, 22, 31) myDate = InputBox("オープンする日付を「月/日」のように入力してください。", _ "日付の入力", Format(Date, "m/d")) myURL = "0062/0062" & Format(Split(myDate, "/")(0) * 1, "00") & _ Format(Split(myDate, "/")(1) * 1, "00") Connection_URL = "http://www.m*********/***/" & myURL & ".html" Columns(1).ClearContents With ActiveSheet.QueryTables.Add(Connection:= _ "URL;" & Connection_URL, Destination:=Range("A1")) .WebFormatting = xlWebFormattingNone .WebTables = "9" .Refresh BackgroundQuery:=False End With

  • エクセルのWEBクエリで取り込めないデータ(続)

    QNo6887062で教えていただいたWEBからデータを取り出すVBA(A15)で対象URLのレイアウトが変更になってしまいました。そこで引き続き活用したいため修正方法を教えていただければと思います。 URLの変更については一部対応できたのですが、取り出す範囲、除去する方法です。 具体的にはQ&Aの中で書きますので、上記VBAを修正できる方でお願いします。 Excel2010/WinXP