anoniem Geplaatst: 22 november 2007 Delen Geplaatst: 22 november 2007 Hallo, Is er een mogelijkheid om vanuit een VB6 programma te bepalen of een Outlook.MailItem een gewone mail is of een leesbevestiging. Ik wil namelijk de mailtjes in een tabel zetten, waarbij de datum en het tijdstip van verzenden wordt vermeld. Op het moment dat er echter een leesbevestiging tussen de mailtjes zit, geeft het programma een foutcode omdat het element SentOn niet bestaat in deze leesbevestiging. Weet iemand hiervoor een oplossing? [code:1:9504f739bc] Set OlApp = CreateObject("Outlook.Application") Set Inbox = OlApp.GetNamespace("Mapi").GetDefaultFolder(olFolderInbox) Set InboxItems = Inbox.Items PBar.Max = InboxItems.Count PBar.Value = 0 fraLadenMail.Visible = True For i = InboxItems.Count To 1 Step -1 With InboxItems(i) j = 0 sTijd = Format$(Right$(.SentOn, 8), "hh:mm") For k = 1 To Len(.SentOn) If Mid$(.SentOn, k, 1) = "-" Then j = j + 1 If j = 2 Then sDatum = Format$(Left$(.SentOn, k + 4)) Exit For End If End If Next k fgMail.AddItem .SenderName & vbTab & sDatum & vbTab & sTijd & vbTab & .Subject & vbTab & .Body End With PBar.Value = PBar.Value + 1 Next i [/code:1:9504f739bc] Quote Link naar reactie
anoniem Geplaatst: 22 november 2007 Auteur Delen Geplaatst: 22 november 2007 Zelf heb ik inmiddels een omweg gevonden om het probleem op te lossen, ik test het onderwerp op het aanwezig zijn van de tekst: "Gelezen:", maar volgens mij moet het ook mogelijk zijn om dit al op mailniveau te controleren. Iemand een idee? Alvast bedankt voor de moeite. Gr. René Quote Link naar reactie
anoniem Geplaatst: 23 november 2007 Auteur Delen Geplaatst: 23 november 2007 Ik heb [url=http://www.devnewsgroups.net/group/microsoft.public.office.developer.outlook.vba/topic5244.aspx]hier[/url] wat extra info gevonden, en daar een oplossing mee gecomponeerd: [code:1:ae7671f748] Dim inboxItem As Object Dim olApp As Outlook.Application Dim inbox As Folder Set olApp = GetObject("", "Outlook.Application") Set inbox = olApp.GetNamespace("Mapi").GetDefaultFolder(olFolderInbox) For Each inboxItem In inbox.Items If TypeOf inboxItem Is MailItem Then ' Dit is een gewoon bericht, plaats hier je code ElseIf TypeOf inboxItem Is ReportItem Then ' Dit is een ontvangstbevestiging, kun je overslaan Else ' Bericht is van een ander type (weet niet of dat mogelijk is, maar voor de zekerheid er bij gezet End If Next [/code:1:ae7671f748] Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen