【问题标题】:Outlook add reference from fileOutlook 从文件中添加引用
【发布时间】:2016-11-14 16:15:46
【问题描述】:

我在 Outlook 中创建了一个需要 Word 和 Excel 引用的宏。它必须适用于不同版本的 Office(2007、2010、2013)。我有 Office 2013,所以当我在 2007 年和 2010 年“安装”宏(复制 VBAProject.otm)时,我缺少参考。我想在 Excel 中使用类似的代码手动添加引用:

ThisWorkbook.VBProject.References.AddFromFile

但我找不到类似的东西。我搜索了互联网,但我也失败了。 谁能告诉我在 Outlook VBA 中是否可以从文件中添加引用?

【问题讨论】:

    标签: excel vba outlook


    【解决方案1】:

    要使用未引用的库并避免在每个用户的计算机上设置引用,您可以通过late binding 创建对象来访问它们。这通常使用 CreateObject 方法来完成,例如,对于您将使用的脚本运行时:

    Dim fso as object
    
    Set fso = CreateObject("Microsoft.ScriptingRuntime")
    

    您可以在线搜索如何后期绑定您需要的特定参考。

    【讨论】:

    • 更具体地说,对于 Outlook,它将是 Set OLApp = CreateObject("Outlook.Application").
    • 感谢您的参考。我认为一个广泛的答案是合适的,因为如果您不了解早期/晚期绑定,这是一个很大的研究领域。
    • 不,如果 Excel 已经在运行,那就是 Set oXL = CreateObject("Excel.Application")Set oXL = GetObject(, "Excel.Application") - 代码在 Outlook 中,因此不需要 Outlook 引用。无论如何都赞成 - 这是关于需要研究的早期/晚期绑定。
    • 是的,但是当我关闭 Excel 引用时,下面的代码不起作用:xlSheet.Range("B1:I" & row).Sort Key1:=xlSheet.Range("B1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal
    • @ dexter910 您是否按照我们的建议在代码中设置了 Excel 引用?发布您当前的代码。你得到了什么错误,如果有的话?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-06
    • 2016-12-19
    • 1970-01-01
    • 1970-01-01
    • 2014-05-03
    相关资源
    最近更新 更多