首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将MailItem传递给函数

将MailItem传递给函数
EN

Stack Overflow用户
提问于 2017-03-20 04:09:01
回答 2查看 1K关注 0票数 1

我正在搜索如何通过函数传递MailItem。

例如:我想调用一个提取MailItem主题的函数。

代码语言:javascript
复制
Function testpassing(myMail As Outlook.MailItem) As Actions
    MsgBox (myMail.Subject)
End Function

Sub passing()
    Dim myItem As Outlook.MailItem
    Set myItem = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Items(1)

    MsgBox (myItem.Subject) '<~ Work correctly
    testpassing (Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Items(1))   '<~ Run-time error 438 Object doesn't support this property or method
    testpassing (myItem)      '<~ Run-time error 438 Object doesn't support this property or method
End Sub

我对VBA的看法很陌生。请帮帮忙。谢谢:)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-20 06:30:36

叫它testpassing myItemtestpassing Application.GetNamespace("MAPI").GetDefaultFolder(olFolderIn‌​box).Items(1)

还可以查看https://msdn.microsoft.com/en-us/library/ddck1z30.aspx

您可以通过引用或值将参数传递给过程(函数或子)。

如往常一样快乐编码:-)

票数 2
EN

Stack Overflow用户

发布于 2017-03-20 06:32:57

文件夹可能包含不同的项类型。我建议先检查项目类型(或消息类):

代码语言:javascript
复制
 If Item(1).Class = OlObjectClass.olMail Then 
    '
 End If

有关详细信息,请参阅如何:以编程方式确定当前Outlook项

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42895704

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档