Pārvaldiet Outlook no Excel, izmantojot Microsoft Excel VBA

Anonim

Tālāk redzamie divi makro piemēri parāda, kā varat nosūtīt informāciju uz Outlook
(piemēram, nosūtot e-pasta ziņojumu) un kā jūs varat izgūt informāciju no programmas Outlook
(piem., ielādējot sarakstu ar visiem ziņojumiem iesūtnē).

Piezīme! Izlasiet un rediģējiet parauga kodu, pirms mēģināt to izpildīt savā projektā!

"nepieciešama atsauce uz Microsoft Outlook 8.0 objektu bibliotēku Sub SendAnEmailWithOutlook ()" izveido un nosūta jaunu e-pasta ziņojumu ar Outlook Dim OLF kā Outlook.MAPIFolder, olMailItem As Outlook.MailItem Dim ToContact As Outlook.Recipient Set OLF = GetObject ( "", _ "Outlook.Application"). GetNamespace ("MAPI"). GetDefaultFolder (olFolderInbox) Set olMailItem = OLF.Items.Add 'izveido jaunu e-pasta ziņojumu ar olMailItem .Subject = "Jaunā e-pasta tēma pasta ziņojums "" ziņojuma temats Set ToContact = .Recipients.Add ("[email protected]") 'pievienot adresātu Set ToContact = .Recipients.Add ("[email protected]")' pievienot adresātu ToContact.Type = olCC 'iestatīt jaunāko adresātu kā CC Set ToContact = .Recipients.Add ("[email protected]")' pievienot adresātu ToContact.Type = olBCC 'iestatīt jaunāko saņēmēju kā BCC .Body = "Šis ir ziņojuma teksts" & Chr (13) 'ziņojuma teksts ar rindas pārtraukumu .Attachments.Add "C: \ FolderName \ Filename.txt", olByValue,, _ "Attachment"' insert attachment '.Attachments.Add "C : \ FolderName \ Filename.txt ", olByReference,, _" Shortcut to Attachment "'insert shortcut' .Attachments.Add" C: \ FolderName \ Filename.txt ", olEmbeddedItem,, _" Embedded Attachment "'iegultais pielikums'. Attachments.Add "C: \ FolderName \ Filename.txt", olOLE,, _ "OLE Attachment" 'OLE pielikums .OriginatorDeliveryReportRequested = True' piegādes apstiprinājums .ReadReceiptRequested = True 'lasīšanas apstiprinājums' .Save 'saglabā ziņojumu vēlākai rediģēšanai. Sūtīt 'nosūta e-pasta ziņojumu (ievieto to Izsūtnē) Beigt ar Iestatīt ToContact = Nekas Iestatīt olMailItem = Nekas Iestatīt OLF = Nekas Beigt Apakšsaraksts SubListAllItemsInInbox () Dim OLF kā Outlook.MAPIFolder, CurrUser As String Dim EmailItemCount As Integer, i Kā vesels skaitlis, e -pasts tiek skaitīts kā vesels skaitlis. ScreenUpdating = False Workbooks.Add "izveidot jaunu darbgrāmatu" pievienojiet virsrakstus Šūnas (1, 1). Formula = "Temats" Šūnas (1, 2). Formula = "Saņemtas" šūnas (1 , 3) .Formula = "Pielikumi". Šūnas (1, 4). Formula = "Lasīt" ar diapazonu ("A1: D1"). ze = 14 Beigt ar Application.Calculation = xlCalculationManual Set OLF = GetObject ("", _ "Outlook.Application"). GetNamespace ("MAPI"). GetDefaultFolder (olFolderInbox) EmailItemCount = OLF.Items.Count i = 0: EmailCount = 0 'lasīt e-pasta informāciju, kamēr i <EmailItemCount i = i + 1 Ja i Mod 50 = 0 Tad Application.StatusBar = "E-pasta ziņojumu lasīšana" & _ Format (i / EmailItemCount, "0%") & "… "Ar OLF Items (i) EmailCount = EmailCount + 1 šūnas (EmailCount + 1, 1). Formula =. Subjekta šūnas (EmailCount + 1, 2). Formula = Formāts (.ReceivedTime," dd.mm.yyyy hh: mm ") šūnas (EmailCount + 1, 3). Formula = .Attachments.Count Cells (EmailCount + 1, 4) .Formula = Not. "). AutoFit diapazons (" A2 "). Atlasiet ActiveWindow.FreezePanes = True ActiveWorkbook.Saved = True Application.StatusBar = False End Sub