У меня возникли проблемы с моим кодом Excel VBA.Каждый день я (и коллеги) получаю почту в одном и том же формате.Я хочу импортировать время / дату письма и тему, ЕСЛИ почта отвечает следующим требованиям: * Тема содержит «Заказ» * Время получения> = (На основе диапазона) * Время получения <= (На основе диапазона) * ОпределенныйИмя отправителя (в зависимости от диапазона) </p>
Код отлично работает, когда я использую свою учетную запись Outlook.Однако, когда коллега пытается запустить его, условие конкретного имени отправителя выдает ошибку 438 «Объект не поддерживает это свойство или метод».
Когда я снимаю условие с именем конкретного отправителя, код работает для моей коллеги.Имя отправителя в моей учетной записи коллеги точно такое же, как и в моей учетной записи Outlook.(Очевидно, что strMailboxName и папки были изменены на имена, которые мой коллега использует в Outlook, прежде чем пытаться запустить код)
Примечание: у моего коллеги есть встречи календаря в папке, которых у меня нет (но они не отправляются SenderName).Кроме того, мой коллега получает письма о других предметах от SenderName.
Sub Outlook()
Dim OutlookApp As Outlook.Application
Dim OutlookNamespace As Namespace
Dim Folder As MAPIFolder
Dim OutlookMail As Variant
Dim strMailboxName As String
Dim i As Integer
strMailboxName = "OutlookName" 'Name of mailaccount
Set OutlookApp = New Outlook.Application
Set OutlookNamespace = OutlookApp.GetNameSpace("MAPI")
Set Folder = Session.Folders(strMailboxName)
Set Folder = Folder.Folders("FolderName") 'Name of folder
i = 1
For Each OutlookMail In Folder.Items
If InStr(OutlookMail.Subject, "Order") > 0 And OutlookMail.ReceivedTime >= Range("start_date").Value And OutlookMail.ReceivedTime <= Range("end_date") And OutlookMail.Sender = Range("Sender") Then
Range("Date_and_time").Offset(i, 0).Value = OutlookMail.ReceivedTime
Range("Date_and_time").Offset(i, 0).VerticalAlignment = xlTop
Range("Subject").Offset(i, 0).Value = OutlookMail.Subject
Range("Subject").Offset(i, 0).VerticalAlignment = xlTop
i = i + 1
End If
Next OutlookMail
Set Folder = Nothing
Set OutlookNamespace = Nothing
Set OutlookApp = Nothing
End Sub
Кто-нибудь знает, почему это происходит и как преодолеть эту проблему?Это проблема с кодом или, возможно, проблема с настройками моего почтового аккаунта моих коллег?
Любая помощь приветствуется!Заранее спасибо.