附件用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盘的新建文件夹

CloudCone(20美元/年)大硬盘VPS云服务器,KVM虚拟架构,1核心1G内存1Gbps带宽

近日CloudCone商家对旗下的大硬盘VPS云服务器进行了少量库存补货,也是悄悄推送了一批便宜VPS云服务器产品,此前较受欢迎的特价20美元/年、1核心1G内存1Gbps带宽的VPS云服务器也有少量库存,有需要美国便宜大硬盘VPS云服务器的朋友可以关注一下。CloudCone怎么样?CloudCone服务器好不好?CloudCone值不值得购买?CloudCone是一家成立于2017年的美国服务...

3G流量免费高防CDN 50-200G防御

简介酷盾安全怎么样?酷盾安全,隶属于云南酷番云计算有限公司,主要提供高防CDN服务,高防服务器等,分为中国境内CDN,和境外CDN和二个产品,均支持SSL。目前CDN处于内测阶段,目前是免费的,套餐包0.01一个。3G流量(高防CDN)用完了继续续费或者购买升级包即可。有兴趣的可以看看,需要实名的。官方网站: :点击进入官网云南酷番云计算有限公司优惠方案流量3G,用完了不够再次购买或者升级套餐流量...

香港最便宜的vps要多少钱?最便宜的香港vps能用吗?

香港最便宜的vps要多少钱?最便宜的香港vps能用吗?香港vps无需备案,整体性能好,而且租用价格便宜,使用灵活,因为备受站长喜爱。无论是个人还是企业建站,都比较倾向于选择香港VPS。最便宜的香港vps能用吗?正因为有着诸多租用优势,香港VPS在业内颇受欢迎,租用需求量也在日益攀升。那么,对于新手用户来说,香港最便宜的vps租用有四大要点是务必要注意的,还有易探云香港vps租用最便宜的月付仅18元...

lotus notes为你推荐
316不锈钢和304哪个好304跟316的不锈钢材质有什么区别视频剪辑软件哪个好有哪些好用的手机剪辑视频软件电脑管家和360哪个好电脑管家和360安全卫士哪个好机械表和石英表哪个好手表中,石英表和机械表的区别和优缺点绝地求生加速器哪个好绝地求生用什么加速器比较好?无纺布和熔喷布口罩哪个好大雾天气带什么样的口罩最好手机管家哪个好手机管理软件哪个好用清理手机垃圾软件哪个好清理手机垃圾的软件哪个好牡丹江教育云空间登录云空间怎么登入qq空间登录器QQ空间校友网页自动登陆器
域名买卖 电信服务器租用 mach5 美国php主机 php探针 ubuntu更新源 css样式大全 12306抢票助手 dropbox网盘 北京主机 租空间 彩虹ip qq数据库下载 ca4249 100x100头像 数字域名 圣诞促销 gspeed lol台服官网 广州服务器 更多