Aşağıdaki iki örnek makro, Outlook'a nasıl bilgi gönderebileceğinizi gösterir.
(örneğin bir e-posta mesajı gönderme) ve Outlook'tan nasıl bilgi alabileceğiniz
(örneğin, Gelen Kutusundaki tüm mesajların bir listesini alma).
Not! Kendi projenizde çalıştırmayı denemeden önce örnek kodu okuyun ve düzenleyin!
', Microsoft Outlook 8.0 Nesne Kitaplığı'na bir başvuru gerektirir SendAnEmailWithOutlook() ', Outlook Dim OLF As Outlook.MAPIFolder, olMailItem As Outlook.MailItem Dim ToContact As Outlook.Recipient Set OLF = GetObject( ile yeni bir e-posta iletisi oluşturur ve gönderir. "", _ "Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(olFolderInbox) Set olMailItem = OLF.Items.Add ' olMailItem ile yeni bir e-posta iletisi oluşturur .Subject = "Yeni e- mail mesajı" ' mesaj konusu Set ToContact = .Recipients.Add("[email protected]") ' bir alıcı ekle ToContact Set = .Recipients.Add("[email protected]") ' bir alıcı ekle ToContact.Type = olCC ' en son alıcıyı CC olarak ayarla Set ToContact = .Recipients.Add("[email protected]") ' bir alıcı ekle ToContact.Type = olBCC ' en son alıcıyı Gizli olarak ayarla .Body = "Bu mesaj metnidir" & Chr (13) ' satır sonu içeren mesaj metni .Ekler. "C:\KlasörAdı\Dosyaadı.txt", olByValue, , _ "Ek" ' eki ekle ' .Ekler.Ek "C" :\FolderName\Filename.txt", olByReference, , _ "Ek için Kısayol" ' kısayol ekle ' .Attachments.Add "C:\FolderName\Filename.txt", olEmbeddedItem, , _ "Gömülü Ek" ' gömülü ek ' . Ekler.Add "C:\FolderName\Filename.txt", olOLE, , _ "OLE Ek" ' OLE eki .OriginatorDeliveryReportRequested = True ' teslim onayı .ReadReceiptRequested = True ' okuma onayı '.Save ' iletiyi daha sonra düzenlemek üzere kaydeder. Send ' e-posta mesajını gönderir (Giden Kutusuna koyar) End With Set ToContact = Nothing Set olMailItem = Nothing Set OLF = Nothing End Sub Sub ListAllItemsInInbox() Dim OLF As Outlook.MAPIFolder, CurrUser As String Dim EmailItemCount As Integer, i Integer, EmailCount As Integer Application.ScreenUpdating = False Workbooks.Add 'yeni bir çalışma kitabı oluştur' başlıkları ekleyin Hücreler(1, 1).Formula = "Konu" Hücreler(1, 2).Formula = "Alınan" Hücreler(1 , 3).Formula = "Ekler" Hücreler(1, 4).Formula = Aralık ile "Oku"("A1:D1").Font .Bold = True .Si ze = 14 Application.Calculation = xlCalculationManual Set OLF = GetObject("", _ "Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(olFolderInbox) EmailItemCount = OLF.Items.Count i = 0: EmailCount = 0 ' e-posta bilgilerini oku i iken < EmailItemCount i = i + 1 i Mod 50 = 0 ise Application.StatusBar = "E-posta mesajlarını okuma" & _ Format(i / EmailItemCount, "0%") & "… " OLF.Items(i) ile EmailCount = EmailCount + 1 Cells(EmailCount + 1, 1).Formula = .Subject Cells(EmailCount + 1, 2).Formula = Format(.ReceivedTime, "gg.mm.yyyy hh: mm") Hücreler(EmailCount + 1, 3).Formula = .Attachments.Count Cells(EmailCount + 1, 4).Formula = Değil .UnRead End with Wend Uygulaması.Calculation = xlCalculationAutomatic Set OLF = Nothing Columns("A:D ".AutoFit Range("A2").ActiveWindow'u seçin.FreezePanes = True ActiveWorkbook.Saved = True Application.StatusBar = False End Sub