Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 打开工作簿时未启动宏_Vba_Excel - Fatal编程技术网

Vba 打开工作簿时未启动宏

Vba 打开工作簿时未启动宏,vba,excel,Vba,Excel,我有一个工作簿,我一直在使用一个子自动打开宏,它很好 但是,我现在试图从另一个工作簿打开它,而auto_open宏不起作用。它只是打开,没有宏运行 如果我在“此工作簿”中添加一个Workbook\u open,以运行相同的宏,则可以正常工作。但是,如果我正常运行工作簿(在链接之外),它现在会打开,并且不会运行任何宏 最奇怪的是,如果我同时允许auto_open和workbook_open运行两次,这显然不是我想要的 Private Sub Workbook_Open() StartMac

我有一个工作簿,我一直在使用一个
子自动打开
宏,它很好

但是,我现在试图从另一个工作簿打开它,而
auto_open
宏不起作用。它只是打开,没有宏运行

如果我在“此工作簿”中添加一个
Workbook\u open
,以运行相同的宏,则可以正常工作。但是,如果我正常运行工作簿(在链接之外),它现在会打开,并且不会运行任何宏

最奇怪的是,如果我同时允许
auto_open
workbook_open
运行两次,这显然不是我想要的

Private Sub Workbook_Open()
    StartMacro
End Sub


Public Sub Auto_Open()
    StartMacro
End Sub
我的理想是在正常启动时打开,或者通过工作簿中的链接打开


知道我为什么会遇到这些问题吗?

auto\u open
subs需要位于模块中,而不是Excel对象中(例如工作表的代码,也不是此工作簿中)。下面是有关Excel的进一步参考。

子位置是否是问题所在?如果不是的话,至少会有另外两个罪犯…@Ethan-别忘了
✓ 接受一个有助于解决问题的答案…你将获得
+2
声誉,答案的作者将获得
+15
代表。当你达到15声誉时,你也可以
▲ Upvote
任何有帮助的答案,都会奖励作者以及您以投票形式提供的反馈,从而使整个社区受益!