Outlook VBA yordamida kiruvchi elektron pochta ma'lumotlarini Excel fayliga qanday avtomatik eksport qilish mumkin

Hozir ulashing:

Ko'pgina foydalanuvchilar Outlook avtomatik ravishda kiruvchi elektron pochta xabarlarining asosiy ma'lumotlarini Excel fayliga eksport qilishi mumkinligiga umid qiladi. Ushbu maqola ushbu talabni ko'rib chiqadi va Outlook VBA orqali tezkor usulni taqdim etadi.

Ba'zan, ba'zi sabablarga ko'ra, masalan, pochta statistikasi, siz tez-tez elektron pochta xabarlarini Excel fayliga eksport qilishingiz kerak bo'lishi mumkin. Umuman olganda, mavjud qabul qilingan elektron pochta xabarlari uchun ularni bir vaqtning o'zida Excelga eksport qilish uchun "Import va eksport" funksiyasidan foydalanishingiz mumkin. Ammo, ehtimol siz Outlook-dan kelgan xatlarni pochta qutingizga kelishi bilan avtomatik ravishda Excelga eksport qilishini xohlaysiz. Hech qanday shubhasiz, Outlook-da bunday mahalliy xususiyat yo'q. Shuning uchun siz uchinchi tomon plaginlari yoki Outlook VBA kabi boshqa yondashuvlardan foydalanishingiz kerak. Bu erda biz sizga Outlook VBA yordamida uni qanday avtomatlashtirishni o'rgatamiz. Qadamlar va kodlarga muvofiq olish uchun o'qing.

Kiruvchi elektron pochta ma'lumotlarini Excel fayliga avtomatik eksport qilish

  1. Avvalo, siz Excel faylini yaratishingiz kerak.
  • Yangi Excel faylini oching.
  • Keyin "Yo'q" deb yozishingiz kerak. A1 katakchada, B1 katakdagi “Yuborgan nomi”, C1 katakda “Yuborganning elektron pochta manzili” va D1 katakdagi “Elektron pochta mavzusi” va E1 katakdagi “Qabul qilingan vaqt” quyidagi rasm kabi.Excel faylini yarating
  • Nihoyat, uni o'zingiz xohlagan nom va kerakli papkaga saqlang.
  1. Shundan so'ng siz Outlook-ni ishga tushirishingiz kerak.
  2. Keyin "Alt + F11" tugmachalarini bosing, bu sizni VBA muharririga olib keladi.
  3. Keyingi qalqib chiquvchi oynada chap tomondagi "ThisOutlookSession" tugmasini ikki marta bosishingiz kerak.
  4. Keyinchalik, "ThisOutlookSession" loyihasi oynasida siz quyidagi VBA kodlarini nusxalashingiz va unga joylashtirishingiz kerak.
Public WithEvents objMails As Outlook.Items

Private Sub Application_Startup()
    Set objMails = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub

Private Sub objMails_ItemAdd(ByVal Item As Object)
    Dim objMail As Outlook.MailItem
    Dim strExcelFile As String
    Dim objExcelApp As Excel.Application
    Dim objExcelWorkBook As Excel.Workbook
    Dim objExcelWorkSheet As Excel.Worksheet
    Dim nNextEmptyRow As Integer
    Dim strColumnB As String
    Dim strColumnC As String
    Dim strColumnD As String
    Dim strColumnE As String

    If Item.Class = olMail Then
       Set objMail = Item
    End If
 
    'Specify the Excel file which you want to auto export the email list
    'You can change it as per your case
    strExcelFile = "E:\Email\Email Statistics.xlsx"
 
    'Get Access to the Excel file
    On Error Resume Next
    Set objExcelApp = GetObject(, "Excel.Application")
    If Error <> 0 Then
       Set objExcelApp = CreateObject("Excel.Application")
    End If
    Set objExcelWorkBook = objExcelApp.Workbooks.Open(strExcelFile)
    Set objExcelWorkSheet = objExcelWorkBook.Sheets("Sheet1")
 
    'Get the next empty row in the Excel worksheet
    nNextEmptyRow = objExcelWorkSheet.Range("B" & objExcelWorkSheet.Rows.Count).End(xlUp).Row + 1
 
    'Specify the corresponding values in the different columns
    strColumnB = objMail.SenderName
    strColumnC = objMail.SenderEmailAddress
    strColumnD = objMail.Subject
    strColumnE = objMail.ReceivedTime
 
    'Add the vaules into the columns
    objExcelWorkSheet.Range("A" & nNextEmptyRow) = nNextEmptyRow - 1
    objExcelWorkSheet.Range("B" & nNextEmptyRow) = strColumnB
    objExcelWorkSheet.Range("C" & nNextEmptyRow) = strColumnC
    objExcelWorkSheet.Range("D" & nNextEmptyRow) = strColumnD
    objExcelWorkSheet.Range("E" & nNextEmptyRow) = strColumnE
 
    'Fit the columns from A to E
    objExcelWorkSheet.Columns("A:E").AutoFit
 
    'Save the changes and close the Excel file
    objExcelWorkBook.Close SaveChanges:=True
End Sub

VBA kodlari - kiruvchi elektron pochta ma'lumotlarini Excel fayliga avtomatik eksport qilish

  1. Keyinchalik siz ushbu kodni imzolashingiz kerak.
  2. Keyinchalik, restart Outlook yangi VBA loyihasini faollashtirish uchun.
  3. Oxir-oqibat, bundan buyon barcha kiruvchi elektron pochta xabarlari sizning Inbox jildiga tushishi bilanoq, oldindan o'rnatilgan Excel fayliga avtomatik ravishda eksport qilinadi. Excel fayli quyidagi rasmga o'xshaydi:Kiruvchi elektron pochta ma'lumotlarini o'z ichiga olgan Excel fayli

Og'riqli PST ma'lumotlarining buzilishini oldini oling

Outlook o'zining turli xil xususiyatlari tufayli juda ko'p maqtovga sazovor bo'ldi. Biroq, bu aql bovar qilmaydigan degani emas. U hali ham istalgan vaqtda buzilgan bo'lishi mumkin. Misol uchun, agar siz tez-tez Outlook-ni noto'g'ri yopsangiz, PST ma'lumotlaringiz xavf ostida qolishi mumkin. Bunday holda, agar xohlasangiz PST-ni ta'mirlash ma'lumotlar uchun tajribali vositaga murojaat qilishingiz kerak, masalan DataNumen Outlook Repair.

Muallif kirish:

Shirli Chjan ma'lumotlarni qayta tiklash bo'yicha mutaxassis DataNumenMa'lumotlarni qayta tiklash texnologiyalari bo'yicha jahon yetakchisi bo'lgan , Inc mdf-ni tiklash va Outlook ta'mirlash dasturiy mahsulotlar. Qo'shimcha ma'lumot olish uchun tashrif buyuring www.datanumen.com

Hozir ulashing:

Comments are closed.