VBAのIE(InternetExplorer)制御に便利なサブルーチンを紹介しています。
Sub frameFormText(objIE As InternetExplorer, _
nameValue As String, _
tagValue As String)
'フレームのオブジェクトを取得する
Set objFrame = objIE.document.frames
For i = 0 To objFrame.Length - 1
'フレームドキュメントのオブジェクトを取得する
Set objFrameDoc = objFrame(i).document
'フレーム内のテキストボックス・パスワードボックスに値を入力
For Each objTag In objFrameDoc.getElementsByTagName("input")
If objTag.name = nameValue Then
objTag.Value = tagValue
GoTo label01
End If
Next
'フレームテキストエリアに値を入力
For Each objTag In objFrameDoc.getElementsByTagName("textarea")
If objTag.name = nameValue Then
objTag.Value = tagValue
GoTo label01
End If
Next
Next
label01:
End Sub
引数名 | データ型 | 内容 | 値の事例 | 初期値 | 省略 |
---|---|---|---|---|---|
objIE | InternetExplorer | IEオブジェクト | objIE,objIE2 | × | |
nameValue | String | name属性の名前文字列 | "name","pass" | × | |
tagValue | String | 目的エレメントに入力する文字列 | "田中太郎" | × |
引数については、form操作のサブルーチンとまったく同じです。
フォーム用のサブルーチンを利用することで、簡単に処理を行うことができます。
念のため引数について説明すると、全て必須項目となります。
「objIE」はオブジェクトを入力します。
「nameValue」はname属性を値を入力します。
「tagValue」には、テキストボックス・パスワードボックス・テキストエリアに入力する値を入力します。