Excelでサイトマップ作成ソフトを作ってみよう

Step 2 IE(インターネット エクスプローラ)をオープンする

IEをオープンするには、CreateObject("InternetExplorer.application") でIEを起動し、navigate にURLを代入し、ReadyState が 4 になるまでタイマー設定時間ループします。


Homeへ > Excelでアプリケーションソフト2 > サイトマップ作成ソフト

シート画面

オープンするサイトアドレスを入力し、作成開始ボタンをクリックします。
IEオープンシート


シートのVBAコード

下記のコードを入力してください。

Option Explicit

Private tIEobj As Object

Private Function ExCreateIEobject() As Boolean
    Dim sttime As Long
    Dim passtime As Long
    
    ExCreateIEobject = False
On Error GoTo ErrExit
    Set tIEobj = CreateObject("InternetExplorer.application")
    tIEobj.navigate TextBox1
    
    '読み込みが終わるまで30秒待つ
    sttime = Timer
    Do
        '経過時間を算出
        passtime = Timer - sttime
        'Label2.Caption = "URLをオープンしています。 (" & passtime & ")"
        DoEvents
        If passtime >= 30 Then
            Exit Do
        End If
        '読込み完了
        If tIEobj.ReadyState = 4 Then
            Exit Do
        End If
    Loop
    'マウスポインターを戻す
    Application.Cursor = xlNormal
    If tIEobj.ReadyState <> 4 Then
        MsgBox "IEをオープンできませんでした。処理を中止します。"
    Else
        If LCase(tIEobj.Document.URL) <> LCase(TextBox1) Then
            MsgBox "入力されたURLを開くことができませんでした。URLを確認してください。"
            TextBox1.Activate
        Else
            ExCreateIEobject = True
        End If
    End If
    Exit Function
ErrExit:
    'マウスポインターを戻す
    Application.Cursor = xlNormal
    MsgBox "処理中にエラーが発生しました。処理を中止します。" & vbCrLf & Err.Description
On Error Resume Next
    tIEobj.Quit
    Set tIEobj = Nothing
End Function

'作成開始ボタンをクリック
Private Sub CommandButton1_Click()
    If TextBox1 = "" Then
        MsgBox "作成するサイトアドレスを入力してください。"
        TextBox1.Activate
        Exit Sub
    End If
    
    'マウスポインターを砂時計に
    Application.Cursor = xlWait
    ExCreateIEobject
    tIEobj.Visible = True
End Sub


Homeへ > Excelでアプリケーションソフト2 > サイトマップ作成ソフト

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved