[英]VBA Lotus Notes sender email address as CC
我在excel中创建了一个Makro,将所有TODO发送给负责人员。 现在,我要将发件人地址添加到抄送中。 我知道如何设置抄送,但我不知道如何获取当前发件人地址。
Set session = CreateObject("Notes.NotesSession")
Set db = session.GETDATABASE("", "")
Call db.OPENMAIL
Set doc = db.CREATEDOCUMENT
Call doc.REPLACEITEMVALUE("CopyTo", strEmail)
我认为它应该与notes会话一起使用,但是我没有找到任何方法。
您可以只使用NotesSession.UserName()
。 这是您要发送的Notes邮件。 您不需要带有@和DNS域名的完整SMTP样式地址。 您可以仅将用户的Notes用户名放在地址字段中,然后Domino路由器将进行查找并且将正常工作。
只要(a)与之建立会话的服务器是用户的家庭邮件服务器,同一Notes域的成员(与DNS域不同)的成员,上述条件就适用包括用户的Notes域作为其目录服务(如果使用的是20年的配置,则是层叠的通讯录列表)的一部分的Notes域,并且(b)用户名在上述范围内是唯一的。
另一个建议,从最近发送的邮件中复制发件人,以进行测试
Set view = db.GetView("(($Sent))")
Set sentdoc = View.GetLastDocument
sender=sentdoc.getItemValue("From")
我自动化Lotus Notes和发送电子邮件的方式是使用以下站点:
您要注意的区域位于底部,该区域带有“ noDocument”,并添加相关标题“ Subject”,“ to”,“ Sendto”等。
'将值添加到创建的电子邮件主要属性中。
With noDocument
.Form = "Memo"
.SendTo = vaRecipients
.CopyTo = vaCopyTo
.Subject = stSubject
.Body = vaMsg
.SaveMessageOnSend = True
.PostedDate = Now()
.Send 0, vaRecipients
End With
使用NotesSession.userName()
获取当前用户名。 如果您确实想要完整的电子邮件地址,则也可以使用@namelookup
公式。
但是,我不会通过COM访问注释,因为它在64位上不起作用,IBM对此也不太在乎。 我有几个使用此便捷技术的excel文件,但是自从我们移至64bit以来,它们都被破坏了。 检查这个旧的kb https://www-304.ibm.com/support/docview.wss?uid=swg21454291
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.