解析エンジニアの自動化 blog

コツコツと自動化した方法を残す blog

◯VBScript による IE のフレームの document オブジェクトの取得




こんにちは。
仕事の自動化にやりがいと達成感を感じるガッくんです。



この記事の目次




目的


フレームの document オブジェクトを取得する関数を作成します。




関数

ソースコード

この関数は上位オブジェクトとフレーム名を引数で渡して、フレームの document オブジェクトを返す関数です。フレームが見つからなければ Nothing を返します。

getFrame-objUpper-FrameNameProperty.vbs

function getFrame(byval objUpper, byval FrameNameProperty)
   '-------------------------------
   '--- まず全フレームの取得 ---
   '-------------------------------
   Set objFrames = objIE.document.frames
   '--------------------------------------
   '--- フレームのドキュメント取得 ---
   '--------------------------------------
   Set objFrameDoc = objFrames(FrameNameProperty).Document
   '-------------------------------------------
   '--- 対象オブジェクトの有無確認 ---
   '-------------------------------------------
   if objFrameDoc is Nothing then
       Msgbox "name 属性が " & FrameNameProperty & "の frame は見つけることが出来ませんでした。"
       set getFrame = Nothing
   else
       set getFrame = objFrameDoc
   end if
end function

使い方

作成した getFrame-objUpper-FrameNameProperty.vbs ファイルを呼び出して使うプログラムを書きます。

main.vbs

'-----------------------------------------
'--- frame の document オブジェクトを取得 ---
'-----------------------------------------
   '--- 変数宣言 ---
   FrameNameProperty = "frame_name"
   '--- 実行 ---
   Set FrameDoc = getFrame(objUpper, FrameNameProperty)




コメント

これで、 main.vbs を実行すると引数で渡したフレームの document オブジェクトを返します。フレームが見つからない時は Nothing を返します。




以上