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

Step 8 既にリンク先が取り出されていないかチェックする

Findを使いURLが入力されている列を検索します。


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

シート画面

実行中の画面
登録済みの検索チェックを追加したシート


シートのVBAコード

下記のVBAコードに変更してください。

'リンク先を取り出す
Private Function ExGetLink(sUrl As String, lrow As Long, lCol As Long) As Long
    Dim i As Long
    Dim n As Long
    Dim s1 As String
    Dim llen As Long
    Dim trange As Range
       
    n = 1
    llen = Len(sUrl)
    For i = 0 To tIEobj.document.Links.Length - 1
        If IsNull(tIEobj.document.Links(i).href) = False Then
        
        Debug.Print tIEobj.document.Links(i).href
        If Left(tIEobj.document.Links(i).href, 4) = "http" Then
            s1 = LCase(tIEobj.document.Links(i).href)
            '内部リンクのみに絞る
            If s1 <> sUrl And Left(s1, llen) = sUrl Then
                '既に取り出されていないかチェックする
Set trange = ActiveSheet.UsedRange.Columns(2). _
Find(What:=tIEobj.document.Links(i).href, _
LookIn:=xlValues, LookAt:=xlWhole)
                If trange Is Nothing Then
                    Cells(lrow + n, lCol) = tIEobj.document.Links(i).href
                    lMaxRow = lrow + n
                    n = n + 1
                End If
                Set trange = Nothing
            End If
        End If
        End If
    Next
    ExGetLink = n - 1
End Function


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

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


Copyright (c) Excel-Excel ! All rights reserved