• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Outlookta bulunan Maillerin Subject Tarhi gibi verilerinin Excele aktarılması

Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Merhabalar

Aklımda şöyle bir soru var. Microsoft outlooktan ben bir rapor çekebiliyormuyum.
Raporda şöyle, İnbox a düşen maillerdeki görüntüde "subject" "gönderen kişi" "tarih" "boyut" gibi önizlemesi olur. ben bu görünen bilgileri excele aktarmak istiyorum. Bunun için aşağıdaki gibi bir kod buldum ve bu kodu çalıştırmak içinde Outlook üzerinden Rule tanımlamak gerekiyormuş. Fakat bu Rule tanıtma durumunu beceremedim. Gerçi bu kod bu istediğim işlevimi yapıyor bilmiyorum eğer bu işlevi yapmıyorsa bu istediğim işi yapacak bir kod düzeneği biliyorsanız bilgi ve yardımlarınızı rica ederim

Rule tanıtmak için izlenecek yok
Giriş >> Kural Oluştur >>Gelişmiş Seçenekler adımından koşullar seçilir ve ileri tıklanır.
Gelen ekrandan komut dosyası çalıştır seçilir.
0nvDbZ.png


Kod:
    Option Explicit
    Private Const xlUp As Long = -4162

    Sub Mail2Excel(olItem As Outlook.MailItem)
    Dim xlApp As Object
    Dim xlWB As Object
    Dim xlSheet As Object
    Dim sText As String
    Dim rCount As Long
    Dim bXStarted As Boolean
    Dim strPath As String
    ‘NEREYE KAYDEDİLECEKSE BURAYA ONU GİRECEKSİN
    strPath = “E:\Mailler\Rapor.xlsx”

    On Error Resume Next
    Set xlApp = GetObject(, “Excel.Application”)
    If Err <> 0 Then
    Application.StatusBar = “Please wait while Excel source is opened … ”
    Set xlApp = CreateObject(“Excel.Application”)
    bXStarted = True
    End If
    On Error GoTo 0

    Set xlWB = xlApp.Workbooks.Open(strPath)
    Set xlSheet = xlWB.Sheets(1) ‘ Sayfa adı varsa buraya gireceksin

    rCount = xlSheet.Range(“B” & xlSheet.Rows.Count).End(xlUp).Row ‘ Dolu son satırı bul
    rCount = rCount + 1

    sText = olItem.Body
    xlSheet.Range(“a” & rCount) = olItem.ReceivedTime
    xlSheet.Range(“b” & rCount) = olItem.SenderName & “-” & olItem.SenderEmailAddress
    xlSheet.Range(“c” & rCount) = olItem.To
    xlSheet.Range(“d” & rCount) = olItem.CC
    xlSheet.Range(“e” & rCount) = olItem.Subject
    xlSheet.Range(“f” & rCount) = olItem.Body
    xlWB.Close 1
    If bXStarted Then
    xlApp.Quit
    End If
    Set xlApp = Nothing
    Set xlWB = Nothing
    Set xlSheet = Nothing

    End Sub
 
Outlookta verileri export etme seçeneğini buldum. Scripte gerek yokmuş. bu şekilde istediğimiz çözmüş oldum :)

Outlookta File -> Open -> Import Export butonuyla ilerleeyip excel halde bir dosya export edilebiliyor muş
 
Geri
Üst