Outlooki juhtimine Excelist, kasutades Microsoft Excelis VBA -d

Anonim

Allpool toodud kaks näidismakrot näitavad, kuidas saate Outlooki teavet saata
(nt e-kirja saatmine) ja kuidas saate Outlookist teavet hankida
(nt kõigi postkastis olevate sõnumite loendi allalaadimine).

Märge! Lugege ja muutke näidiskoodi, enne kui proovite seda oma projektis käivitada!

"nõuab viidet Microsoft Outlook 8.0 objektide raamatukogule Sub SendAnEmailWithOutlook ()" loob ja saadab uue meilisõnumi Outlook Dim OLF Outlookina.MAPIFolder, olMailItem As Outlook.MailItem Dim ToContact As Outlook.Recipient Set OLF = GetObject ( "", _ "Outlook.Application"). GetNamespace ("MAPI"). GetDefaultFolder (olFolderInbox) Set olMailItem = OLF.Items.Add 'loob uue e-kirja OlMailItem .Subject = "Uue e-kirja teema meilisõnum "" sõnumi teema Määra ToContact = .Recipients.Add ("[email protected]") 'lisa adressaat Set ToContact = .Recipients.Add ("[email protected]")' lisa adressaat ToContact.Type = olCC 'määras viimase adressaadi CC -ks Määra ToContact = .Recipients.Add ("[email protected]")' lisage adressaat ToContact.Type = olBCC 'määrake viimaseks saajaks BCC .Body = "See on sõnumi tekst" & Chr (13) 'sõnumitekst reavahega .Lisad.Lisage "C: \ FolderName \ Filename.txt", olByValue,, _ "Attachment"' lisa manus '.Attachments.Add "C : \ FolderName \ Filename.txt ", olByReference,, _" Otsetee manusesse "'sisestage otsetee' .Attachments.Add" C: \ FolderName \ Filename.txt ", olEmbeddedItem,, _" Embedded Attachment "'manustatud manus'. Attachments.Add "C: \ FolderName \ Filename.txt", olOLE,, _ "OLE Attachment" 'OLE manus .OriginatorDeliveryReportRequested = True' kohaletoimetamise kinnitus .ReadReceiptRequested = True 'lugemise kinnitus' .Save 'salvestab sõnumi hilisemaks redigeerimiseks. Saada 'saadab meilisõnumi (paneb selle väljundkasti) Lõpeta Set ToContact = Nothing Set olMailItem = Nothing Set OLF = Nothing End Sub Sub ListAllItemsInInbox () Dim OLF Outlookina. MAPIFolder, CurrUser String Dim EmailItemCount As Integer, i Nagu täisarv, EmailCount As Integer Application.ScreenUpdating = False Workbooks.Add 'loo uus töövihik' lisage pealkirjad Lahtrid (1, 1) .Formula = "Subject" Lahtrid (1, 2) .Formula = "Laekunud" lahtrid (1 , 3) .Formula = "Attachments" Lahtrid (1, 4) .Formula = "Read" With range ("A1: D1"). Font .Bold = True .Si ze = 14 Lõpetage rakendusega.Calculation = xlCalculationManual Set OLF = GetObject ("", _ "Outlook.Application"). GetNamespace ("MAPI"). GetDefaultFolder (olFolderInbox) EmailItemCount = OLF.Items.Count i = 0: EmailCount = 0 'e-posti teabe lugemine Kuigi i <EmailItemCount i = i + 1 Kui i Mod 50 = 0 Siis Application.StatusBar = "E-kirjade lugemine" & _ Format (i / EmailItemCount, "0%") & "… "Koos OLF.üksustega (i) EmailCount = EmailCount + 1 lahtrit (EmailCount + 1, 1). Vormel = .Aine lahtrid (EmailCount + 1, 2). Vormel = Formaat (.ReceivedTime," pp.kk.aaaa hh: mm ") Lahtrid (EmailCount + 1, 3) .Formula = .Attachments.Count Cells (EmailCount + 1, 4) .Formula = Not .UnRead End with Wend Application.Calculation = xlCalculationAutomatic Set OLF = Nothing Veerud (" A: D "). AutoFit Range (" A2 "). Valige ActiveWindow.FreezePanes = True ActiveWorkbook.Saved = True Application.StatusBar = False End Sub