为什么VBA编辑器会打开Outlook?

5
有时候当我在检查Excel宏的某个变量时,Outlook会自己打开。这非常烦人,因为我根本不使用Outlook也没有进行配置。这是怎么回事?
我使用的是Office 2016。
编辑:我认为这与实际宏没有关系,但无论如何,问题仍然存在。
Sub duplicateSheets()
    Dim i As Integer
    For i = 1 To 3
        ThisWorkbook.Sheets("classes").Copy _
            After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

        ThisWorkbook.Sheets("pivot").Copy _
            After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
    Next
End Sub

当我检查ThisWorkbook.Sheets("classes")时,Outlook会自动打开。


是的,非常奇怪... 我甚至创建了另一个文件来确保它与表格的内容无关,但问题仍然出现了。 - mathiasfk
就我所知,我已经尝试重新创建您的情况,但对我来说并没有出现同样的问题。这是使用Office 2010测试的结果。 - Grade 'Eh' Bacon
如果您不使用Outlook,请从计算机中卸载它。您可能还需要修复当前的Office安装。 - Iron Man
@ScottHoltzman 我的原始文件中有 Workbook_Open,它会调用不同的子程序,但正如我所说,我已经尝试了一个最小的测试案例,只有复制方法(没有工作簿事件),情况再次发生。 - mathiasfk
昨天我不知道为什么突然Outlook自己启动了。当时我正在使用Excel和VBA编辑器,我没有尝试重复这个问题。 - OldUgly
显示剩余8条评论
1个回答

1
我以前遇到过类似的情况,只不过是在Access中。我的Excel VBA代码从未与Access交互,但它仍然会打开。从未收到任何错误,但我同意,每次都要关闭它真的很烦人。
搜索后,我发现是因为我打开了“Microsoft Access 15.0 Object Library”引用。我猜测,我从Excel VBA调用的某个属性或方法会在Access库中触发某些东西,然后它就会打开应用程序。
看看你是否启用了对Outlook的任何库引用,并将其关闭,这可能会解决你遇到的问题。

1
可能你是对的,我没有明确引用Outlook,但我看到我已经有了“Microsoft Office 16.0 Object Library”。也许只有“Microsoft Excel 16.0 Object Library”就足够了。 - mathiasfk
刚刚测试了代码,实际上这个问题不再出现了(自从我第一次发布这个问题以来,我的Windows 10已经更新了几次)。但我想这是未来可能遇到此问题的人应该采取的方法。非常感谢。 - mathiasfk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接