KutoolsforOffice— 하나의 솔루션, 다섯 가지 강력한 도구。적은 노력으로 더 큰 성과。

Outlook: 한 이메일에서 모든 URL 을 추출하는 방법

작성자수정 날짜

이메일에 수백 개의 URL 이 포함되어 있고 이를 텍스트 파일에 추출해야 한다면, 하나씩 복사하여 붙여넣는 작업은 매우 번거로울 것입니다. 이 튜토리얼에서는 이메일에서 모든 URL 을 빠르게 추출할 수 있는 VBA 코드를 소개합니다。

한 이메일에서 URL 을 추출하여 텍스트 파일에 저장하는 VBA

여러 이메일에서 URL 을 추출하여 Excel 파일로 저장하는 VBA

Office Tab - Microsoft Office 에서 탭 기반 편집 및 탐색 활성화, 업무를 손쉽게
지금 바로 Kutools for Outlook 의 잠금을 해제하고 100 가지 이상의 기능을 무제한으로 영원히 즐기세요
이 고급 기능으로 Outlook 2024 - 2010 또는 Outlook 365 를 강화하세요。 100+가지 강력한 기능을 즐기며 이메일 경험을 한층 업그레이드하세요!

한 이메일에서 URL 을 추출하여 텍스트 파일에 저장하는 VBA

 

1. URL 을 추출하고자 하는 이메일을 선택한 후Alt+F11키를 눌러Microsoft Visual Basic for Applications창을 엽니다。

2. 삽입>모듈을 클릭하여 새 빈 모듈을 생성한 다음 아래 코드를 복사하여 모듈에 붙여넣습니다。

VBA: 한 이메일에서 모든 URL 을 텍스트 파일으로 추출하기

Sub ExportUrlToTextFileFromEmail()
'UpdatebyExtendoffice20220413
  Dim xMail As Outlook.MailItem
  Dim xRegExp As RegExp
  Dim xMatchCollection As MatchCollection
  Dim xMatch As Match
  Dim xUrl As String, xSubject As String, xFileName As String
  Dim xFs As FileSystemObject
  Dim xTextFile As Object
  Dim i As Integer
  Dim InvalidArr
  On Error Resume Next
  If Application.ActiveWindow.Class = olInspector Then
    Set xMail = ActiveInspector.CurrentItem
  ElseIf Application.ActiveWindow.Class = olExplorer Then
    Set xMail = ActiveExplorer.Selection.Item(1)
  End If
  Set xRegExp = New RegExp
  With xRegExp
    .Pattern = "(https?[:]//([0-9a-z=\?:/\.&-^!#$;_])*)"
    .Global = True
    .IgnoreCase = True
  End With
  If xRegExp.test(xMail.Body) Then
    InvalidArr = Array("/", "\", "*", ":", Chr(34), "?", "<", ">", "|")
    xSubject = xMail.Subject
    For i = 0 To UBound(InvalidArr)
      xSubject = VBA.Replace(xSubject, InvalidArr(i), "")
    Next i
    xFileName = "C:\Users\Public\Downloads\" & xSubject & ".txt"
    Set xFs = CreateObject("Scripting.FileSystemObject")
    Set xTextFile = xFs.CreateTextFile(xFileName, True)
    xTextFile.WriteLine ("Export URLs:" & vbCrLf)
    Set xMatchCollection = xRegExp.Execute(xMail.Body)
    i = 0
    For Each xMatch In xMatchCollection
      xUrl = xMatch.SubMatches(0)
      i = i + 1
      xTextFile.WriteLine (i & ". " & xUrl & vbCrLf)
    Next
    xTextFile.Close
    Set xTextFile = Nothing
    Set xMatchCollection = Nothing
    Set xFs = Nothing
    Set xFolderItem = CreateObject("Shell.Application").NameSpace(0).ParseName(xFileName)
    xFolderItem.InvokeVerbEx ("open")
    Set xFolderItem = Nothing
  End If
  Set xRegExp = Nothing
End Sub

이 코드는 이메일 제목으로 이름이 지정된 새 텍스트 파일을 생성하며, 경로는 다음과 같습니다:C:\Users\Public\Downloads필요에 따라 경로를 변경할 수 있습니다。

하나의 이메일에서 모든 URL을 추출하는 단계

3. 도구>참조를 클릭하여참조 – 프로젝트 1대화 상자를 열고Microsoft VBScript Regular Expressions 5.5확인란을 선택한 후확인을 클릭합니다。

하나의 이메일에서 모든 URL을 추출하는 단계
하나의 이메일에서 모든 URL을 추출하는 단계

4. F5키를 누르거나실행버튼을 클릭하여 코드를 실행하면, 이제 텍스트 파일이 나타나고 그 안에 모든 URL 이 추출됩니다。

하나의 이메일에서 모든 URL을 추출하는 단계
하나의 이메일에서 모든 URL을 추출하는 단계

참고: Outlook 2010 및 Outlook 365 사용자의 경우 3 단계(3)에서 Windows Script Host Object Model 확인란도 함께 선택한 후 확인을 클릭하세요。


여러 이메일에서 URL 을 추출하여 Excel 파일로 저장하는 VBA

 

여러 개의 선택된 이메일에서 URL 을 Excel 파일로 추출하려는 경우 아래 VBA 코드가 도움이 됩니다。

1. URL 을 추출하고자 하는 이메일을 선택한 후Alt+F11키를 눌러Microsoft Visual Basic for Applications창을 엽니다。

2. 클릭하세요삽입>모듈을 클릭하여 새 빈 모듈을 생성한 다음 아래 코드를 복사하여 모듈에 붙여넣습니다。

VBA: 여러 이메일에서 모든 URL 을 Excel 파일로 추출하기

'UpdatebyExtendoffice20220414
Dim xExcel As Excel.Application
Dim xExcelWb As Excel.Workbook
Dim xExcelWs As Excel.Worksheet

Sub ExportAllUrlsToExcelFromMultipleEmails()
  Dim xMail As MailItem
  Dim xSelection As Selection
  Dim xWordDoc As Word.Document
  Dim xHyperlink As Word.Hyperlink
  On Error Resume Next
  Set xSelection = Outlook.Application.ActiveExplorer.Selection
  If (xSelection Is Nothing) Then Exit Sub
  Set xExcel = CreateObject("Excel.Application")
  Set xExcelWb = xExcel.Workbooks.Add
  Set xExcelWs = xExcelWb.Sheets(1)
  xExcelWb.Activate
  With xExcelWs
    .Range("A1") = "Subject"
    .Range("B1") = "DisplayText"
    .Range("C1") = "Link"
  End With
  With xExcelWs.Range("A1", "C1").Font
    .Bold = True
    .Size = 12
  End With
  For Each xMail In xSelection
    Set xWordDoc = xMail.GetInspector.WordEditor
    If xWordDoc.Hyperlinks.Count > 0 Then
      For Each xHyperlink In xWordDoc.Hyperlinks
          Call ExportToExcelFile(xMail, xHyperlink)
      Next
    End If
  Next
  xExcelWs.Columns("A:C").AutoFit
  xExcel.Visible = True
End Sub

Sub ExportToExcelFile(curMail As MailItem, curHyperlink As Word.Hyperlink)
  Dim xRow As Integer
  xRow = xExcelWs.Range("A" & xExcelWs.Rows.Count).End(xlUp).Row + 1
  With xExcelWs
    .Cells(xRow, 1) = curMail.Subject
    .Cells(xRow, 2) = curHyperlink.TextToDisplay
    .Cells(xRow, 3) = curHyperlink.Address
  End With
End Sub

이 코드는 모든 하이퍼링크와 해당 표시 텍스트 및 이메일 제목을 추출합니다。

하나의 이메일에서 모든 URL을 추출하는 단계

3. 도구>참조를 클릭하여참조 – 프로젝트 1대화 상자를 열고Microsoft Excel 16.0 Object LibraryMicrosoft Word 16.0 Object Library확인란을 선택한 후확인을 클릭합니다。

하나의 이메일에서 모든 URL을 추출하는 단계
하나의 이메일에서 모든 URL을 추출하는 단계

4. 그런 다음 VBA 코드 내부에 커서를 두고F5키를 누르거나실행버튼을 클릭하여 코드를 실행하면 워크북이 나타나고 그 안에 모든 URL 이 추출되며, 이후 원하는 폴더에 저장할 수 있습니다。

하나의 이메일에서 모든 URL을 추출하는 단계

참고: 위의 모든 VBA 는 모든 유형의 하이퍼링크를 추출합니다。


최고의 Office 생산성 도구

Kutools for Outlook 의 완전히 새로운 버전을 100+가지 놀라운 기능과 함께 경험해 보세요!지금 다운로드하세요!

🤖KUTOOLS AI:고급 AI 기술을 활용하여 이메일 회신, 요약, 최적화, 확장, 번역, 작성 등 이메일 관련 작업을 손쉽게 처리합니다。

📧이메일 자동화:자동 회신(POP 및 IMAP 지원)/이메일 예약 발송/이메일 발송 시 규칙에 따라 자동 참조/숨은 참조/자동 전달(고급 규칙)/자동 인사말 추가/수신자 여러 명이 포함된 이메일을 자동으로 개별 메시지로 분할...

📨이메일 관리:이메일 회수/제목 등을 기준으로 피싱 이메일 차단/중복된 이메일 삭제/고급 검색/폴더 정리...

📁첨부파일 프로:일괄 저장/일괄 분리/일괄 압축/자동 저장/자동 분리/자동 압축...

🌟인터페이스 마법:😊더 예쁘고 멋진 이모지 제공/중요 이메일 수신 시 알림/Outlook 종료 대신 최소화...

👍한 번의 클릭으로 해결:모두 회신(첨부 파일 포함)/피싱 이메일 방지/🕘발신자의 현재 시간 시간대 표시...

👩🏼‍🤝‍👩🏻연락처 및 캘린더:선택한 이메일에서 연락처 추가 일괄 생성/연락처 그룹를 개별 그룹으로 분할/생일 알림 제거...

Kutools 를 선호하는 언어로 사용하세요 – 영어, 스페인어, 독일어, 프랑스어, 중국어 및 40+개의 다른 언어를 지원합니다!

한 번의 클릭으로 즉시 Kutools for Outlook 의 잠금을 해제하세요。 더 이상 기다리지 마시고 지금 다운로드하여 업무 효율을 높이세요!

kutools for outlook features1kutools for outlook features2

🚀 한 번의 클릭으로 다운로드 — 모든 Office 애드인 받기

강력히 권장: Kutools for Office (5-in-1)

한 번의 클릭으로다섯 개의 설치 프로그램을동시에 다운로드하세요 —Kutools for Excel, Outlook, Word, PowerPointOffice Tab Pro.지금 다운로드하세요!

  • 한 번의 클릭으로 편리하게: 다섯 개의 설치 패키지를 한 번에 다운로드하세요。
  • 🚀모든 Office 작업에 대비 완료: 필요한 시점에 필요한 애드인을 설치하세요。
  • 🧰포함됨: Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint