以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  outlook引用问题请教  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=76464)

--  作者:ljh29206
--  发布时间:2015/10/29 17:10:00
--  outlook引用问题请教

excel在vba 里面 有这个引用Microsoft Office 14.0 Object Library

 

如何在foxtable 里面引用??

 

求指导

 

看到 foxtable 里面 有excel  word 的命名空间

 

outlook 该怎么搞呢?

[此贴子已经被作者于2015/10/29 17:10:34编辑过]

--  作者:大红袍
--  发布时间:2015/10/29 17:16:00
--  
如果想操作,就调用 Microsoft.Office.Interop.Outlook

 

 http://www.baidu.com/baidu?wd=c%23+outlook+dll&tn=monline_4_dg

 


--  作者:ljh29206
--  发布时间:2015/10/30 9:06:00
--  

袍哥,已经在 百度找到 相关的dll,请看附件

 

是否引用了就行,需要命名空间吗?

 

百度找到 一下代码 在 excel vba 里面是可行的。

 

请问 放在  foxtable 里面应该怎么改?

 


Dim ol As Outlook.Application
Set ol = CreateObject("Outlook.Application")
Dim t As AppointmentItem
For r = 2 To Range("b65536").End(xlUp).Row
Set t = ol.CreateItem(olAppointmentItem)
With t
.Subject = Cells(r, 1) \'事件名称
.Start = Cells(r, 2) \'开始时间
.Duration = 30 \'持续时间
.ReminderMinutesBeforeStart = 45 \'提前N分钟提醒
.Body = "Excel日程提醒" \'事件内容
.Save
\'.Display
End With
Next

 

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:policy.11.0.microsoft.office.interop.outlook.zip

[此贴子已经被作者于2015/10/30 9:08:02编辑过]

--  作者:大红袍
--  发布时间:2015/10/30 9:13:00
--  

参考

 

Dim ol = CreateObject("Outlook.Application")
Dim t = ol.CreateItem(1)
With t
    .Subject = "123456"
    .Start = Date.now
    .Duration = 30 \'持续时间
    .ReminderMinutesBeforeStart = 45 \'提前N分钟提醒
    .Body = "Excel日程提醒" \'事件内容
    .Save
    \'.Display
End With

 


--  作者:ljh29206
--  发布时间:2015/10/30 9:19:00
--  

老师 ,可行!

 

授之以鱼不如授之以渔。

 

以前学的 都是 dim 定义变量

 

Dim ol = CreateObject("Outlook.Application")
Dim t = ol.CreateItem(1)


为什么能这么写呢? 

 

还有这个 AppointmentItem 与 1是什么区别 ?

为什么 vba 要 dim 再 set

 

能简单说明一下 这样写的意思么, 好让后边能自己搞,不用老提问

[此贴子已经被作者于2015/10/30 9:21:08编辑过]

--  作者:大红袍
--  发布时间:2015/10/30 10:29:00
--  

1、vba的语法是vb的语法,vb.net 已经没有 set 的语句了

 

2、因为没有引用dll文件,不能直接写 Outlook.Application、AppointmentItem 等类型,都必须写成object; olAppointmentItem 是枚举类型,就是0、1、2这样的,不直接支持,要写错对应的数字


--  作者:ljh29206
--  发布时间:2015/10/30 11:34:00
--  

哦 ,  没引用Microsoft.Office.Interop.Outlook.dll

 

这个dll

 

以上代码都可以执行!

 

都可以直接添加内容到 outlook 

 

就是可以不用引用了????

 

可以吧 vba 的代码 直接在 foxtable 里面执行?


--  作者:大红袍
--  发布时间:2015/10/30 11:36:00
--  

CreateObject("Outlook.Application") 代替了引用dll

 

引用dll,是为了更简单明了的血代码而已,不然就不能用类型等东西。


--  作者:ljh29206
--  发布时间:2015/11/6 11:26:00
--  
老师 如何判断 当前的邮件 是什么类型   olAppointmentItem 是枚举类型,就是0、1、2这样的 

判断是 是否是1 就行?

该怎么写?

--  作者:大红袍
--  发布时间:2015/11/6 11:28:00
--  
你msgbox弹出一下其值不就行?