gpt4 book ai didi

vba - Outlook VBA Mailitem 属性 SenderEmailAddress 未正确返回地址

转载 作者:行者123 更新时间:2023-12-01 21:19:29 26 4
gpt4 key购买 nike

因此,我在 access 中有一个程序,可以让用户选择要导入到表中的 Outlook 文件夹。然后可以从组合框中选择并传输到表单以供使用。

但是,我收到的返回值之一有问题。 SenderEmailAddress 实际上并没有给我一个电子邮件地址,例如,这是我保存在表中的内容。

出于隐私考虑,我删除了姓名。

/O=COMPANY/OU=MAIL12/CN=RECIPIENTS/CN=FIRSTNAME.LASTNAME

现在,当然,如果我想将此值传递回 Outlook 以回复电子邮件,我无法使用它。

有人可以帮我吗?

Public Sub LoadEmails()

On Error Resume Next

'Outlook wasn't running, start it from code
If Started = False Then
Set olApp = New Outlook.Application '("Outlook.Application")
Started = True
End If

Set myNamespace = olApp.GetNamespace("MAPI")
Set objFolder = myNamespace.PickFolder

' if outlook is closed, it will display this error
If Err <> 0 Then
MsgBox "Outlook was closed. Please log out and log back in."
Started = False
Exit Sub
End If

'Exit if no folder picked.
If (objFolder Is Nothing) Then
MsgBox "No Folder Selected"
Started = False
Exit Sub
End If

Dim adoRS As Recordset
Dim intCounter As Integer
Set adoRS = CurrentDb.OpenRecordset("TBL_UserInbox") 'Open table Inbox

'Cycle through selected folder.
For intCounter = objFolder.Items.Count To 1 Step -1
With objFolder.Items(intCounter)
'Copy property value to corresponding fields
If .Class = olMail Then
adoRS.AddNew
adoRS("Subject") = .Subject
adoRS("TimeReceived") = .ReceivedTime
adoRS("Body") = .Body
adoRS("FromName") = .SenderEmailAddress '<<< Issue
adoRS("ToName") = .To
adoRS.Update
End If
End With
Next

MsgBox "Completed"

Started = False
End Sub

最佳答案

这是一个完全有效的 EX 类型电子邮件地址(与 SMTP 相反)。检查 MailItem.SenderEmailType 属性。如果是"SMTP",请使用SenderEmailAddress 属性。如果是"EX",请使用MailItem.Sender.GetExchangeUser.PrimarySmtpAddress。准备好处理空值/异常。

关于vba - Outlook VBA Mailitem 属性 SenderEmailAddress 未正确返回地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25746770/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com