[[20160824013928]] 『改行を含むセルから特定の文字を含む部分(複数)』(yk) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『改行を含むセルから特定の文字を含む部分(複数)を別のシートに一覧抽出』(yk)

お世話になります。

セルの中に改行を含むhtmlタグが書かれているシート内からURLだけを全て一覧にして調べたいのですが、
シートの特定の列の文章内にある「"http://」 〜 「"」までを全て別の一覧にまとめるようなことはできないでしょうか。

1つのセルにhtmlタグに囲まれたURLが一つでしたら分かりやすいのですが、
セル内に文字数も多く、URLがたくさん入っているセルもあります。

ダメ元ですが、宜しくお願いします。

< 使用 Excel:Excel2013、使用 OS:Windows10 >


 一例です。
 ★印のシート名は実際のものにしてください。

 Sub Test()
    Dim shT As Worksheet
    Dim reg As Object
    Dim sm As Object
    Dim r As Range
    Dim c As Range
    Dim x As Long

    On Error Resume Next
    Set r = Sheets("Sheet1").Cells.SpecialCells(xlCellTypeConstants)    '★元シート
    On Error GoTo 0

    If r Is Nothing Then
        MsgBox "シートは空です"
        Exit Sub
    End If

    Application.ScreenUpdating = False

    Set shT = Sheets("Sheet2")                                          '★転記シート
    shT.Cells.ClearContents
    shT.Range("A1").Value = "URL一覧"

    Set reg = CreateObject("VBScript.RegExp")
    reg.Global = True
    reg.Pattern = """http(s)?://.+?(?="")"
    reg.ignorecase = True

    x = 1

    For Each c In r
        For Each sm In reg.Execute(c.Value)
            x = x + 1
            shT.Cells(x, "A").Value = Mid(sm.Value, 2)
        Next
    Next

    shT.Select

 End Sub

(β) 2016/08/24(水) 06:15


ありがとうございます!!
教えていただいたコードで、一発でURL一覧が出ました!

質問するまで、試行錯誤し途方に暮れてたのですが、凄いですね本当に助かりました!
ありがとうございました!
(yk) 2016/08/24(水) 17:41


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.