人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ExcelのVBAで、InternetExplorerで現在開いているWebサイトの、
あるリンクのリンク先の取得方法について教えてください。

・閲覧先のページのURLは固定(候補は複数ありますが・・・)
・その閲覧先のページには常に2つのリンクが貼られており、
取得したいのは1つめ(html的に先)の方のみ
(どちらも文字列リンクです。<a href="・・・">文字列</a>というタイプ。)
・この取得したいリンク先は、このページをリロード
する度にランダムに変わるため、ページを開かないと
確定しない。
・私が使用しているブラウザはIE8(←すいませんが固定)

VBA初心者で基本的なこともわからないことが多いですが、
どのような記述方法になるか、ご教授頂ければ幸いです。

※下のコメント欄もよければご活用ください

●質問者: yoshifuku
●カテゴリ:コンピュータ
✍キーワード:Excel HTML IE8 InternetExplorer URL
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● SALINGER
●70ポイント ベストアンサー

XMLHTTPオブジェクトを使った簡単な方法なら、

http://officetanaka.net/other/extra/tips02.htm

こちらの方法を利用して、こんな感じで簡単にできます。


Sub Sample()
 Dim Http, buf As String
 Dim stP As Long
 Dim edP As Long
 
 Set Http = CreateObject("MSXML2.XMLHTTP")
 Http.Open "GET", "http://q.hatena.ne.jp/1279613364", False
 Http.Send
 buf = StrConv(Http.ResponseBody, vbUnicode)
 
 stP = InStr(1, buf, "<a href=") + 9
 edP = InStr(stP, buf, ">") - 1
 
 MsgBox Mid(buf, stP, edP - stP)
 
 Set Http = Nothing
End Sub
◎質問者からの返答

ありがとうございます!いろいろなURLでやってみましたが、上手くできそうです!

しかし、ちょっと私がやりたいことができなかったので、追加質問を出しました。

http://q.hatena.ne.jp/1279686152

どうぞよろしくお願い致します!!


2 ● yamaneroom
●0ポイント

VBAで直接URL(固定の方)にアクセスして、正規表現でリンク先URLを取り出す方が簡単。

手順は下記参照。

http://www.ken3.org/vba/backno/vba120.html

http://oshiete.goo.ne.jp/qa/5661746.html

◎質問者からの返答

ありがとうございます!難しそうですが読んでみます。

追加質問を出しました。

http://q.hatena.ne.jp/1279686152

どうぞよろしくお願い致します!!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ