메인 컨텐츠로 가기

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

작가: 썬 최종 수정 날짜: 2022-04-29

이메일에 텍스트 파일로 추출하는 데 필요한 수백 개의 URL이 포함된 경우 하나씩 복사하여 붙여넣는 것은 지루한 작업이 될 것입니다. 이 튜토리얼에서는 이메일에서 모든 URL을 빠르게 추출할 수 있는 VBA를 소개합니다.

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

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

Office 탭 - Microsoft Office에서 탭 편집 및 탐색을 활성화하여 작업을 원활하게 만듭니다.
Outlook용 Kutools 잠금 해제 비어 있는 버전 지금 무제한으로 영원히 액세스할 수 있는 70개 이상의 기능을 즐겨보세요
이러한 고급 기능으로 Outlook 2021~2010 또는 Outlook 365를 향상하세요. 70개 이상의 강력한 기능을 즐기고 이메일 경험을 향상시켜보세요!

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

 

1. URL을 추출할 이메일을 선택하고 다른 + F11 활성화 할 키 응용 프로그램 용 Microsoft Visual Basic 창.

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:\사용자\공개\다운로드, 필요에 따라 변경할 수 있습니다.

문서 추출 URL 1

3. 클릭 도구 > 참고자료 사용하려면 참조 – 프로젝트 1 대화 상자, 체크 Microsoft VBScript 정규식 5.5 확인란. 딸깍 하는 소리 OK.

문서 추출 URL 1

문서 추출 URL 1

4. 프레스 F5 키 또는 클릭 달리기 버튼을 눌러 코드를 실행하면 이제 텍스트 파일이 나타나고 모든 URL이 그 안에 추출됩니다.

문서 추출 URL 1

문서 추출 URL 1

주의 사항: Outlook 2010 및 Outlook 365 사용자인 경우 3단계에서 Windows 스크립트 호스트 개체 모델 확인란도 선택합니다. 그런 다음 확인을 클릭합니다.


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

 

선택한 여러 이메일에서 Excel 파일로 URL을 추출하려는 경우 아래 VBA 코드가 도움이 될 수 있습니다.

1. URL을 추출할 이메일을 선택하고 다른 + F11 활성화 할 키 응용 프로그램 용 Microsoft Visual Basic 창.

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 1

3. 클릭 도구 > 참고자료 사용하려면 참조 – 프로젝트 1 대화, 눈금 Microsoft Excel 16.0 개체 라이브러리 Microsoft Word 16.0 개체 라이브러리 체크박스. 딸깍 하는 소리 OK.

문서 추출 URL 1

문서 추출 URL 1

4. 그런 다음 VBA 코드 내에 커서를 놓고 누릅니다. F5 키 또는 클릭 달리기 버튼을 눌러 코드를 실행하면 통합 문서가 나타나고 모든 URL이 그 안에 추출되어 폴더에 저장할 수 있습니다.

문서 추출 URL 1

주의 사항: 위의 모든 VBA는 모든 유형의 하이퍼링크를 추출합니다.


최고의 사무 생산성 도구

속보: Outlook용 Kutools 출시 무료 버전!

완전히 새로운 Outlook용 Kutools를 경험해보세요 70개 이상의 놀라운 기능을 갖춘 무료 버전으로 영원히 사용할 수 있습니다.! 지금 다운로드하려면 클릭하세요!

🤖 Kutools AI : AI 마법이 적용된 즉각적인 전문가 이메일 - 원클릭으로 천재적인 답변, 완벽한 어조, 다국어 숙달이 가능합니다. 손쉽게 이메일을 변환하세요! ...

📧 이메일 자동화: 자동 회신(POP 및 IMAP에서 사용 가능)  /  이메일 보내기 예약  /  이메일 발송 시 규칙에 따른 자동 참조/숨은참조  /  자동 전달(고급 규칙)   /  인사말 자동 추가   /  여러 수신자 이메일을 개별 메시지로 자동 분할 ...

📨 이메일 관리: 리콜 이메일  /  제목 및 기타 사기 이메일 차단  /  중복 이메일 삭제  /  고급 검색  /  폴더 통합 ...

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

🌟 인터페이스 매직: 😊더 예쁘고 멋진 이모티콘   /  중요한 이메일이 오면 알림  /  문을 닫는 대신 전망을 최소화하세요 ...

???? 원클릭 불가사의: 수신 첨부 파일과 함께 전체 회신  /   피싱 방지 이메일  /  🕘발신자의 시간대 표시 ...

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

한 번의 클릭으로 Outlook용 Kutools를 즉시 잠금 해제—영구적으로 무료. 기다리지 마세요. 지금 다운로드하여 효율성을 높이세요!

Outlook 기능을 위한 kutools1 Outlook 기능을 위한 kutools2
 

 

 

Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations