◯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 を返します。
以上