VBA Lotus Notes发件人电子邮件地址为CC
我在excel中创build了一个makro,把所有的TODO发送给负责人。 现在我想将发件人地址添加到CC中。 我知道如何设置CC,但我不知道如何获得当前的发件人地址。
Set session = CreateObject("Notes.NotesSession") Set db = session.GETDATABASE("", "") Call db.OPENMAIL Set doc = db.CREATEDOCUMENT Call doc.REPLACEITEMVALUE("CopyTo", strEmail)
我认为它应该与笔记会议,但我没有find任何方法。
你可以使用NotesSession.UserName()
。 这是您正在发送的Notes邮件。 您不需要具有@和DNS域名的完整SMTP样式的地址。 您可以将用户的Notes用户名放置在寻址字段中,Domino路由器将执行查找,并且它将正常工作。
只要(a)与您build立会话的服务器是用户的主邮件服务器,同一个Notes域的成员(与DNS域不同)或成员包括用户的Notes域作为其目录服务的一部分(或者它的级联地址簿列表,如果它使用了20年的configuration),(b)用户名在上述范围内是唯一的。
另一个build议,从上次发送的邮件复制发件人,进行testing
Set view = db.GetView("(($Sent))") Set sentdoc = View.GetLastDocument sender=sentdoc.getItemValue("From")
我自动化Lotus Notes和发送电子邮件的方式是使用下面的这个网站:
使用Lotus Notes发送文件
您要注意的地方是在底部,它采取“无文档”,并添加相关标题“主题”,“到”,“发送”等。
'将值添加到创build的电子邮件主要属性。
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文件,但是自从我们移动到64位后,它们全部被破坏了。 检查这个旧版本的https://www-304.ibm.com/support/docview.wss?uid=swg21454291