http://www.happy2-island.com/vbs/cafe02/capter00707.shtml
下記フォームに組み込む方法を教えてください。
ラベル lblURL 「URL表示」
コマンドボタン cmdKensaku 「検索」
コマンドボタン cmdSyutoku 「URL取得」
この3つのオブジェクトを配置し「検索」を押すとIEが立ち上がり
URLを取得を押すとその時表示しているページのURLを取得しラベルに表示させたい
聞いてばかりで申し訳ないのですが、適切な答えの方には
100p~差し上げます。
よろしくお願いします。
今回ご質問への直接の回答ではありませんが、EXCEL の VBA と WSH の VBS は文法も似ていますが、まったく同じではありません。
特にWScript と書かれている部分はそのままでは動きませんし、VBA がプロシージャ単位でしか記述できないという点も異なります。
例示のサンプルをEXCEL で動かすには下記にように変更する必要があります。
Option Explicit '--- 追加 --- Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub runIE() Dim objIE As Object Dim strBody As String 'objIEオブジェクトを作成します Set objIE = CreateObject("InternetExplorer.Application") 'ウィンドウの大きさを変更します objIE.Width = 800 objIE.Height = 600 '表示位置を変更します objIE.Left = 0 objIE.Top = 0 'インターネットエクスプローラ画面を表示します objIE.Visible = True '指定したURLを表示します objIE.Navigate "http://www.yahoo.co.jp/" 'ページの読み込みが終わるまでココでグルグル回る Do Until objIE.Busy = False '空ループだと無駄にCPUを使うので250ミリ秒のインターバルを置く '--- 変更 --- Sleep 250 Loop ' '①表示したページの<BODY>部のHTMLを取得し画面に表示 strBody = objIE.Document.Body.InnerHtml '--- 変更 --- MsgBox strBody '②表示したページの<BODY>部のテキストだけを取得し画面に表示 strBody = objIE.Document.Body.InnerText '--- 変更 --- MsgBox strBody 'オブジェクトの破棄 Set objIE = Nothing End Sub
ご質問では、URL を取得したいということですが、今回の例はURL を渡して表示させ、中身を表示させるものです。
やりたい目的をもう一度、整理してはいかがでしょうか。
いつもご回答ありがとうございます。
勉強不足で質問内容を間違っていたようです。
また勉強してみます