附件用VBA操纵Lotus-notes发邮件

lotus notes  时间:2021-02-01  阅读:()

第一种方法

Sub SendWithLotus()

Dim noSession As Object,noDatabase As Object

Dim noDocument As Object,noAttachment As Object

Dim Fi leSelf As String

Dimi As Long

Co nst EM BED_ATTACHMENT= 1454

Const stSubject As String="For Lotus VBA Programming Test only"

D i m stMsg As Stri ng

Fi leSelf=ThisWorkbook Path+"\"+ThisWorkbook NamestMsg="Bst&Rgds"&vbCrLf&_

Application UserName&vbCrLf&_

"**********************

"(This's an automated e-mai l notification,please do not reply this message)"

DimvaRecipient As VariantvaRecipient=VBA Array("huangfeng8211@163 com")

'Insert Lotus Notes COM object

Set noSession=CreateObject("Notes NotesSession")

Set noDatabase=noSession GETDATABASE("","D:\notes\data\mai l3\tonyhf nsf")

If noDatabase IsOpen= False Then noDatabase OPENMAIL

Set noDocument=noDatabase CREATEDOCUMENT

Set noAttachment= noDocument CREATERICHTEXTITEM("Body")noAttachment EMBED OBJECT EMBED_ATTACHMENT,"" ,Fi leSelf

With noDocument

Fo rm="Memo"

SendTo=vaRecipient

Subject= stSubject

Body= stMsg

SAVEMESSAGEONSEND=True

PostedDate=Now()

SEND 0,vaRecipient

End With

Set noDocument=Nothing

Set noDatabase=Nothing

Set noSession=Nothing

AppActivate"Microsoft Excel"

MsgBox"This fi le be sent" ,vbInformation

EndSub

第二种方法

Sub SendWithLotus()

Dim noSession As Object,noDatabase As Object

Dim noDocument As Object,noAttachment As Object

Dim vaFi les As Variant

Dimi As Long

Co nst EM BED_ATTACHMENT= 1454

Const stSubject As String="For Lotus VBA Programming Test only"

Const stMsg As Stri ng="This fi le is for you!j ust for reference"&vbCrLf&"I am StanleyPan"

DimvaRecipient As VariantvaReci pi ent=VBA Array("stan leypan2000@hotmai l com" ,"stanley pan@Iso laAg com")vaFi les = ApplicationGetOpenFi lename(Fi leFi lter:="Excel Fi ler (*xls),*xls" , Title:="Attach fi les for outgoing E_Mai l" ,MultiSelect:=True)

If Not IsArray(vaFi les)Then Exit Sub

'Insert Lotus Notes COM object

Set noSession=CreateObject("Notes NotesSession")

Set noDatabase=noSession GETDATABASE("","D:\notes\data\mai l3\tonyhf nsf")

If noDatabase IsOpen= False Then noDatabase OPENMAIL

Set noDocument=noDatabase CREATEDOCUMENT

Set noAttachment= noDocument CREATERICHTEXTITEM("Body")

With noAttachment

For i =1 To UBound(vaFi les)

EMBED OBJECT EMBED_ATTACHMENT,"",vaFi les(i)

Next i

End With

With noDocument

Fo rm="Memo"

SendTo=vaRecipient

Subject= stSubject

Body= stMsg

SAVEMESSAGEONSEND=True

PostedDate=Now()

SEND 0,vaRecipient

End With

Set noDocument=Nothing

Set noDatabase=Nothing

Set noSession=Nothing

AppActivate"Microsoft Excel"

MsgBox"Thisfi le is send OK" ,vbInformation

EndSub

a,返回当前数据库的名称

结果

b,返回当前数据库的文件名

c,返回当前数据库的文件路径

Sub aaaaaa()

Dimno AsObject

Dim db As Object

Dim doc As Object

Dim fields As Object

Dim nofields As Object

Dimatt As Variantatt=ApplicationGetOpenFi lename(Fi leFi lter:="Excel Fi ler(*xls),*xls" ,_

Title:="Attach fi les for outgoing E_Mai l" ,MultiSelect:=True) '添加附件

Set no=CreateObj ect("notes notessession")'建立和邮件的连接

Set db=no CURRENTDATABASE'建立和邮件数据库的连接

Set doc=db CREATEDOCUMENT'创建一个新的邮件

Set fields=doc CREATERICHTEXTITEM("body") '设置新邮件的正文附件对象With fields'设置邮件的正文和附件

APPENDTEXT" this e-mai l is generated by an automated processjust for a test"ADDNEWLINE 1 '增加第一行

APPENDTEXT" please do not reply"

ADDNEWLINE 2 '增加第二行

For i = 1 To UBound(att) '添加附件

E MB ED OB J E CT 1454,"" ,att(i)

Next i

EndWith

With doc '设置新邮件的除正文和附件外的其他信息form= "Memo" '新邮件sendto=VBA Array("huangfeng8211@163 com" ,"tonyhf@cn i bm com") '发送给Subject= "this mai l isjust for testing" '主题

SAVEMESSAGEONSEND=True'是否保存发送的邮件到发件箱postdate=DateAdd("d" ,1,Date) '发送日期等于当天

SEND0'发送

EndWith

MsgBox"successfully sent out the mai l!"

Set no=Nothing'释放内存

Set db=Nothing

Set doc=Nothing

Set fields=Nothing

EndSub

在添加附件的时候如果只是想将当前的活动工作薄作为附件的话如下

注意一下,如果是1452的话,效果如下,

会出现一个提示,询问文档包含外部对象链接,是否要更新链接,如果确定的话,效果如下,会将EX CEL文件中的内容以图片形式打开,同时文件是只读格式的,

如果是1453,效果如下,

不会有提示,但是文件为只读,

如果为1454,则为正常的EX CEL文件格式,

3,提取邮件的一些信息

以上的发件人发送时间主题等信息还可以如下表示

运行结果

a,收件箱等邮箱本身就存在的

b,如果是自己创建的文件夹及子文件夹

比如在我的邮箱中有自定义的文件夹 fo lders,如果要想获取其下面的子文件夹之一的相关资料则应如下书写4,用上面的方法提取出来的发件人是有公司名称的anotes CREATENAME(adocumentGETITEMVALUE("from")(0))ABBREVIATED

如果不使用abbreviated,则结果为

如果想要输出的发件人只有名字没有公司名的话可以做如下更改

结果为

排版之后的效果如下所示

以上代码是将发件箱中的附件保存到D盘的新建文件夹

妮妮云(100元/月)阿里云香港BGP专线 2核 4G

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...

腾讯云新用户省钱秘笈购买云服务器

目前国内云计算市场竞争异常激烈,尤其是国内的腾讯云、阿里云、景安等商家促销活动一波接一波的进行,对于有需要的用户确实得到不小的实惠。但是这样给予国内的主机商确实是比较大的打击,毕竟这些商家的背景和实例强劲,即便是贴本补贴优惠,也是不怕的。前两年阿里一家各种活动促销,确实在国内市场占据主要的市场地位,腾讯云开始两年没有较大的吸引用户,不过这两年的发展还是比较稳健的。我们很多网友在之前肯定也享受到一些...

Sharktech鲨鱼服务器商提供洛杉矶独立服务器促销 不限流量月99美元

Sharktech(鲨鱼服务器商)我们还是比较懂的,有提供独立服务器和高防服务器,而且性价比都还算是不错,而且我们看到有一些主机商的服务器也是走这个商家渠道分销的。这不看到鲨鱼服务器商家洛杉矶独立服务器纷纷促销,不限制流量的独立服务器起步99美元,这个还未曾有过。第一、鲨鱼机房服务器方案洛杉矶机房,默认1Gbps带宽,不限流量,自带5个IPv4,免费60Gbps / 48Mpps DDoS防御。C...

lotus notes为你推荐
316不锈钢和304哪个好保温杯不锈钢316和304哪个好租车平台哪个好想租车,什么平台好炒股软件哪个好用玩股票哪个软件好?手机杀毒哪个好手机杀毒软件哪个最好用网络机顶盒哪个好哪个品牌的网络机顶盒好用?qq空间登录网页版网页版QQ怎么登陆群空间登录为什么QQ群空间登陆不了360云盘企业版360云盘转企业版我的数据该怎么办月抛隐形眼镜月抛型的隐形眼镜怎么样便宜好用的手机想买个便宜但实用的手机,该买哪种
php虚拟空间 免费试用vps 如何申请免费域名 linode代购 宕机监控 申请个人网页 福建天翼加速 dux 圣诞促销 softbank邮箱 亚马逊香港官网 能外链的相册 美国独立日 双线空间 双11促销 贵州电信 聚惠网 japanese50m咸熟 .htaccess qq空间打开很慢 更多