Ovládajte aplikáciu Outlook z Excelu pomocou jazyka VBA v programe Microsoft Excel

Anonim

Dve nižšie uvedené makrá ukazujú, ako môžete odosielať informácie do Outlooku
(napr. odoslanie e-mailovej správy) a ako môžete získať informácie z Outlooku
(napr. načítanie zoznamu zo všetkých správ v priečinku Doručená pošta).

Poznámka! Prečítajte si a upravte ukážkový kód skôr, ako sa ho pokúsite vykonať vo svojom vlastnom projekte!

„Vyžaduje odkaz na podriadenú objektovú knižnicu objektov Microsoft Outlook 8.0 SendAnEmailWithOutlook ()“ vytvorí a odošle novú e-mailovú správu s programom Outlook Dim OLF ako Outlook.MAPIFolder, olMailItem As Outlook.MailItem Dim ToContact As Outlook.Recipient Set OLF = GetObject ( "", _ "Outlook.Application"). GetNamespace ("MAPI"). GetDefaultFolder (olFolderInbox) Nastaviť olMailItem = OLF.Items.Add 'vytvorí novú e-mailovú správu s olMailItem .Subject = "Predmet pre nový e-mail e -mailová správa "'predmet správy Nastaviť ToContact = .Recipients.Add (" [email protected] ")' pridať príjemcu Nastaviť ToContact = .Recipients.Add (" [email protected] ") 'pridať príjemcu ToContact.Type = olCC 'nastaviť najnovšieho príjemcu ako CC Nastaviť ToContact = .Recipients.Add ("[email protected]")' pridať príjemcu ToContact.Type = olBCC 'nastaviť najnovšieho príjemcu ako BCC .Body = "Toto je text správy" & Chr (13) 'text správy s prerušením riadka .Attachments.Add "C: \ FolderName \ Filename.txt", olByValue,, _ "Attachment"' vložte prílohu '.Attachments.Add "C : \ \ FolderName \ Filename.txt ", olByReference,, _" Skratka k prílohe "'vložiť skratku' .Attachments.Add" C: \ FolderName \ Filename.txt ", olEmbeddedItem,, _" vložená príloha "'vložená príloha'. Attachments.Add "C: \ FolderName \ Filename.txt", olOLE,, _ "OLE Attachment" 'OLE attachment .OriginatorDeliveryReportRequested = True' delivery delivery .ReadReceiptRequested = True 'read confirmation' .Save 'save the message for later editing. Odoslať 'odošle e-mailovú správu (vloží ju do priečinka Na odoslanie) Ukončiť Nastaviť ToContact = Nič Nastaviť olMailItem = Nič Nastaviť OLF = Nič Ukončiť Sub Sub Sub ListAllItemsInInbox () Dim OLF ako Outlook.MAPIFolder, CurrUser ako reťazec Dim EmailItemCount ako celé číslo, i Celé číslo, EmailCount ako celé číslo Application.ScreenUpdating = False Workbooks.Add 'create a new workbook' add headings Cells (1, 1) .Formula = "Subject" Cells (1, 2) .Formula = "Recieved" Cells (1 , 3). Vzorec = bunky „Prílohy“ (1, 4). Vzorec = „Čítanie“ s rozsahom („A1: D1“). Písmo. Tučné = True. Si ze = 14 Koniec s Application.Calculation = xlCalculationManual Set OLF = GetObject ("", _ "Outlook.Application"). GetNamespace ("MAPI"). GetDefaultFolder (olFolderInbox) EmailItemCount = OLF Items.Count i = 0: EmailCount = 0 'prečítajte si informácie o e-maile, kým i <EmailItemCount i = i + 1 Ak i Mod 50 = 0, potom Application.StatusBar = "Čítanie e-mailových správ" & _ Formát (i / EmailItemCount, "0%") & "… "S OLF Items (i) EmailCount = EmailCount + 1 buniek (EmailCount + 1, 1). Vzorec =. Predmetné bunky (EmailCount + 1, 2). Vzorec = Formát (.ReceivedTime," dd.mm.rrrr hh: mm ") Bunky (EmailCount + 1, 3). Formula = .Attachments.Count Cells (EmailCount + 1, 4) .Formula = Not .UnRead End with Wend Application.Calculation = xlCalculationAutomatic Set OLF = Nothing Columns (" A: D "). Rozsah AutoFit (" A2 "). Vyberte ActiveWindow.FreezePanes = True ActiveWorkbook.Saved = True Application.StatusBar = False End Sub