Skip to main content

Kutools for Office — Bir Paket. Beş Araç. Daha Fazla İş Yapın.

Outlook: Bir e-postadan tüm URL'leri nasıl çıkarılır

Author Sun Last modified

Bir e-postada yüzlerce URL varsa ve bunların bir metin dosyasına çıkarılması gerekiyorsa, bunları teker teker kopyalayıp yapıştırmak oldukça yorucu bir iş olacaktır. Bu öğretici, bir e-postadan tüm URL'leri hızlıca çıkarabilen VBA kodlarını tanıtmaktadır.

Tek bir e-postadan URL'leri metin dosyasına çıkarmak için VBA

Birden fazla e-postadan URL'leri Excel dosyasına çıkarmak için VBA

Office Tab - Sekmeli düzenleme ve Microsoft Office'de gezinmeyi etkinleştirin, işleri kolaylaştırın.
Kutools for Outlook'u şimdi açın ve sınırsız erişimle 100'den fazla özelliği hemen kullanmaya başlayın.
Outlook 2024 - 2010 veya Outlook 365'inizi bu gelişmiş özellikleri kullanarak güçlendirin. 100'den fazla güçlü özelliğin keyfini çıkarın ve e-posta deneyiminizi geliştirin!

Tek bir e-postadan URL'leri metin dosyasına çıkarmak için VBA

 

1. URL'lerini çıkarmak istediğiniz e-postayı seçin ve Microsoft Visual Basic for Applications penceresini açmak için Alt + F11 tuşlarına basın.

2. Ekle > Modül'e tıklayarak yeni boş bir modül oluşturun, ardından aşağıdaki kodu modüle kopyalayıp yapıştırın.

VBA: Tek bir e-postadan tüm URL'leri metin dosyasına çıkarır.

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

Bu kodda, e-posta konusuyla adlandırılmış ve şu yolda yerleştirilmiş yeni bir metin dosyası oluşturulacaktır: C:\Users\Public\Downloads. İhtiyaçlarınıza göre bu yolu değiştirebilirsiniz.

steps on extracting all URLs from one email

3. Araçlar > Referanslar'a tıklayarak Referanslar – Proje 1 iletişim kutusunu etkinleştirin, Microsoft VBScript Normal İfadeler 5.5 onay kutusunu işaretleyin. Tamam'a tıklayın.

steps on extracting all URLs from one email
steps on extracting all URLs from one email

4. Kodu çalıştırmak için F5 tuşuna basın veya Çalıştır düğmesine tıklayın, şimdi bir metin dosyası açılacak ve tüm URL'ler bu dosyaya çıkarılacaktır.

steps on extracting all URLs from one email
steps on extracting all URLs from one email

Not: Eğer Outlook 2010 ve Outlook 365 kullanıyorsanız, lütfen 3. Adımda Windows Script Host Object Model onay kutusunu da işaretleyin. Ardından Tamam'a tıklayın.


Birden fazla e-postadan URL'leri Excel dosyasına çıkarmak için VBA

 

Birden fazla seçili e-postadan URL'leri bir Excel dosyasına çıkarmak istiyorsanız, aşağıdaki VBA kodu size yardımcı olabilir.

1. URL'lerini çıkarmak istediğiniz e-postayı seçin ve Microsoft Visual Basic for Applications penceresini açmak için Alt + F11 tuşlarına basın.

2. Ekle > Modül'e tıklayarak yeni boş bir modül oluşturun, ardından aşağıdaki kodu modüle kopyalayıp yapıştırın.

VBA: Birden fazla e-postadan tüm URL'leri Excel dosyasına çıkarır.

'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

Bu kodda, tüm köprüler, ilgili görüntü metinleri ve e-posta konuları çıkarılmaktadır.

steps on extracting all URLs from one email

3. Araçlar > Referanslar'a tıklayarak Referanslar – Proje 1 iletişim kutusunu etkinleştirin, Microsoft Excel 16.0 Nesne Kitaplığı ve Microsoft Word 16.0 Nesne Kitaplığı onay kutularını işaretleyin. Tamam'a tıklayın.

steps on extracting all URLs from one email
steps on extracting all URLs from one email

4. Daha sonra imleci VBA kodunun içine yerleştirin, kodu çalıştırmak için F5 tuşuna basın veya Çalıştır düğmesine tıklayın, şimdi bir çalışma kitabı açılacak ve tüm URL'ler bu dosyaya çıkarılacaktır, ardından bunu bir klasöre kaydedebilirsiniz.

steps on extracting all URLs from one email

Not: Yukarıdaki tüm VBA'lar tüm türdeki köprüleri çıkarır.


En İyi Ofis Verimlilik Araçları

Son Dakika: Kutools for Outlook Ücretsiz Sürümünü Sunmaya Başladı!

Yepyeni Kutools for Outlook ile100'den fazla etkileyici özelliği deneyimleyin! Şimdi indir!

🤖 Kutools AI : Gelişmiş yapay zeka teknolojisi sayesinde e-postalarınızı kolayca yönetir; yanıtlama, özetleme, optimize etme, uzatma, çeviri ve e-posta oluşturma işlemlerini zahmetsizce gerçekleştirir.

📧 E-posta Otomasyonu: Otomatik Yanıt (POP ve IMAP için kullanılabilir) / E-posta Gönderimini Zamanla / E-posta Gönderirken Kurala Göre Otomatik CC/BCC / Gelişmiş Kurallar ile Otomatik Yönlendirme / Selamlama Ekle / Çoklu Alıcılı E-postaları Otomatik Olarak Bireysel Mesajlara Böl...

📨 E-posta Yönetimi: E-postayı Geri Çağır / Konu veya diğer kriterlere göre dolandırıcılık amaçlı e-postaları engelle / Yinelenen e-postaları sil / Gelişmiş Arama / Klasörleri Düzenle...

📁 Ekler Pro: Toplu Kaydet / Toplu Ayır / Toplu Sıkıştır / Otomatik Kaydet / Otomatik Ayır / Otomatik Sıkıştır...

🌟 Arayüz Büyüsü: 😊 Daha Fazla Şık ve Eğlenceli Emoji / Önemli e-postalar geldiğinde uyarı / Outlook'u kapatmak yerine küçült...

👍 Tek Tıkla Harikalar: Tümüne Eklerle Yanıtla / Kimlik Avı E-postalarına Karşı Koruma / 🕘 Gönderenin Saat Dilimini Göster...

👩🏼‍🤝‍👩🏻 Kişiler & Takvim: Seçilen E-postalardan Toplu Kişi Ekle / Bir Kişi Grubunu Bireysel Gruplara Böl / Doğum günü hatırlatıcısını kaldır...

Kutools'u tercih ettiğiniz dilde kullanın – İngilizce, İspanyolca, Almanca, Fransızca, Çince ve40'tan fazla başka dili destekler!

Tek tıkla Kutools for Outlook'u anında etkinleştirin. Beklemeyin, hemen indirin ve verimliliğinizi artırın!

kutools for outlook features1 kutools for outlook features2

🚀 Tek Tıkla İndir — Tüm Ofis Eklentilerini Edinin

Şiddetle Tavsiye Edilen: Kutools for Office (5'i1 arada)

Tek tıkla beş kurulum paketini birden indirin — Kutools for Excel, Outlook, Word, PowerPoint ve Office Tab Pro. Şimdi indir!

  • Tek tık kolaylığı: Beş kurulum paketinin hepsini tek seferde indirin.
  • 🚀 Her türlü Ofis görevi için hazır: İhtiyacınız olan eklentileri istediğiniz zaman yükleyin.
  • 🧰 Dahil olanlar: Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint