Outlook: วิธีแยก URL ทั้งหมดจากอีเมลฉบับเดียว
หากอีเมลมี URL หลายร้อยรายการที่ต้องแยกออกเป็นไฟล์ข้อความ การคัดลอกและวางทีละรายการจะเป็นงานที่น่าเบื่อ บทช่วยสอนนี้จะแนะนำ VBA ที่สามารถดึง URL ทั้งหมดออกจากอีเมลได้อย่างรวดเร็ว
VBA เพื่อแยก URL จากอีเมลหนึ่งไปยังไฟล์ข้อความ
VBA เพื่อแยก URL จากอีเมลหลายฉบับไปยังไฟล์ Excel
- เพิ่มประสิทธิภาพการทำงานอีเมลของคุณ ด้วยเทคโนโลยีเอไอช่วยให้คุณสามารถตอบกลับอีเมล ร่างอีเมลใหม่ แปลข้อความ และมีประสิทธิภาพยิ่งขึ้น
- ส่งอีเมลอัตโนมัติด้วย CC อัตโนมัติ / BCC, ส่งต่ออัตโนมัติ ตามกฎ; ส่ง ตอบอัตโนมัติ (Out of Office) โดยไม่ต้องใช้ Exchange Server...
- รับการแจ้งเตือนเช่น คำเตือน BCC เมื่อตอบกลับทุกคนในขณะที่คุณอยู่ในรายการ BCC และ เตือนเมื่อไม่มีไฟล์แนบ สำหรับความผูกพันที่ถูกลืม...
- ปรับปรุงประสิทธิภาพอีเมลด้วย ตอบกลับ (ทั้งหมด) พร้อมไฟล์แนบ, เพิ่มคำทักทายหรือวันที่ & เวลาลงในลายเซ็นหรือหัวเรื่องโดยอัตโนมัติ, ตอบกลับอีเมลหลายฉบับ...
- เพิ่มความคล่องตัวในการส่งอีเมลด้วย เรียกคืนอีเมล, เครื่องมือแนบ (บีบอัดทั้งหมด, บันทึกอัตโนมัติทั้งหมด...), ลบรายการที่ซ้ำกันและ รายงานด่วน...
VBA เพื่อแยก URL จากอีเมลหนึ่งไปยังไฟล์ข้อความ
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:\Users\สาธารณะ\ดาวน์โหลดคุณสามารถเปลี่ยนได้ตามต้องการ
3 คลิก เครื่องมือ > อ้างอิง การเปิดใช้งาน ข้อมูลอ้างอิง – โครงการ 1 กล่องโต้ตอบ ให้ทำเครื่องหมายที่ Microsoft VBScript นิพจน์ทั่วไป 5.5 ช่องทำเครื่องหมาย คลิก OK.
4 กด F5 คีย์หรือคลิก วิ่ง เพื่อเรียกใช้โค้ด ตอนนี้ไฟล์ข้อความจะปรากฏขึ้นและแยก URL ทั้งหมดแล้ว
หมายเหตุ: หากคุณเป็นผู้ใช้ Outlook 2010 และ Outlook 365 โปรดทำเครื่องหมายที่ช่องทำเครื่องหมาย Windows Script Host Object Model ในขั้นตอนที่ 3 จากนั้นคลิก ตกลง
VBA เพื่อแยก URL จากอีเมลหลายฉบับไปยังไฟล์ Excel
ถ้าคุณต้องการแยก URL จากอีเมลที่เลือกหลายฉบับไปยังไฟล์ Excel โค้ด 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
ในโค้ดนี้ จะแยกไฮเปอร์ลิงก์ทั้งหมดและข้อความที่แสดงที่เกี่ยวข้องและหัวเรื่องของอีเมล
3 คลิก เครื่องมือ > อ้างอิง การเปิดใช้งาน ข้อมูลอ้างอิง – โครงการ 1 โต้ตอบ ติ๊ก ไลบรารีอ็อบเจ็กต์ Microsoft Excel 16.0 และ ไลบรารีวัตถุ Microsoft Word 16.0 ช่องทำเครื่องหมาย คลิก OK.
4. จากนั้นวางเคอร์เซอร์ภายในโค้ด VBA กด F5 คีย์หรือคลิก วิ่ง เพื่อเรียกใช้โค้ด ตอนนี้เวิร์กบุ๊กจะปรากฏขึ้นและแยก URL ทั้งหมดแล้ว จากนั้นคุณสามารถบันทึกลงในโฟลเดอร์ได้
หมายเหตุ: VBA ด้านบนทั้งหมดจะแยกไฮเปอร์ลิงก์ทุกประเภท
สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน
ข่าวด่วน: Kutools สำหรับ Outlook เปิดตัว เวอร์ชันฟรี!
สัมผัสประสบการณ์ Kutools ใหม่สำหรับ Outlook เวอร์ชันฟรีพร้อมฟีเจอร์ที่น่าทึ่งกว่า 70 รายการ ให้คุณใช้งานได้ตลอดไป! คลิกดาวน์โหลดเลย!
🤖 Kutools AI : ใช้เทคโนโลยี AI ขั้นสูงเพื่อจัดการอีเมลได้อย่างง่ายดาย รวมถึงการตอบกลับ การสรุป การเพิ่มประสิทธิภาพ การขยาย การแปล และการเขียนอีเมล
📧 การทำงานอัตโนมัติของอีเมล: ตอบกลับอัตโนมัติ (ใช้ได้กับ POP และ IMAP) / กำหนดการส่งอีเมล / Auto CC/BCC ตามกฎเมื่อส่งอีเมล / ส่งต่ออัตโนมัติ (กฎขั้นสูง) / เพิ่มคำทักทายอัตโนมัติ / แบ่งอีเมลผู้รับหลายรายออกเป็นข้อความส่วนตัวโดยอัตโนมัติ ...
📨 การจัดการอีเมล์: เรียกคืนอีเมล / บล็อกอีเมลหลอกลวงตามหัวเรื่องและอื่นๆ / ลบอีเมลที่ซ้ำกัน / การค้นหาขั้นสูง / รวมโฟลเดอร์ ...
📁 ไฟล์แนบโปร: บันทึกแบทช์ / การแยกแบทช์ / การบีบอัดแบบแบตช์ / บันทึกอัตโนมัติ / ถอดอัตโนมัติ / บีบอัดอัตโนมัติ ...
🌟 อินเตอร์เฟซเมจิก: 😊อีโมจิที่สวยและเจ๋งยิ่งขึ้น / เตือนคุณเมื่อมีอีเมลสำคัญมาถึง / ลดขนาด Outlook แทนที่จะปิด ...
???? เพียงคลิกเดียวสิ่งมหัศจรรย์: ตอบกลับทั้งหมดด้วยไฟล์แนบที่เข้ามา / อีเมลต่อต้านฟิชชิ่ง / 🕘 แสดงโซนเวลาของผู้ส่ง ...
👩🏼🤝👩🏻 รายชื่อและปฏิทิน: แบทช์เพิ่มผู้ติดต่อจากอีเมลที่เลือก / แบ่งกลุ่มผู้ติดต่อเป็นกลุ่มแต่ละกลุ่ม / ลบการแจ้งเตือนวันเกิด ...