从其他应用程序导出到Excel时未选择默认Excel模板

时间:2013-03-12 10:58:39

标签: excel excel-vba templates export vba

我制作了一个Excel模板,默认情况下让用户可以使用一些宏 当我打开一个新的Excel工作簿时,everithing顺利,宏显示在宏列表中,我可以正确使用它。

当我从另一个应用程序生成工作簿(例如,将数据从MS Access导出到Excel)时,生成的工作簿中没有该宏,因此我认为该模板不会被选中。< / p>

我的模板是MS Excel 2010 Macro-Enabled template (.xltm) 我把它命名为Book.xltm 我把它放在我个人资料中的XLStart文件夹中。

1 个答案:

答案 0 :(得分:1)

默认模板仅在从Excel中创建新工作簿时使用,而不是从其他应用程序中使用。

要将宏添加到在VBA中创建的工作表,请首先将宏表保存为XLAM类型(或XLA,以便与Excel 2003兼容)。

假设宏保存为 MyMacro.xlam ,并且您的工作簿由变量 MyWb

引用
Set MyAddin = MyWb.Application.Addins.Add("MyMacro.xlam")
MyAddin.Installed=True

您现在可以在新工作簿中引用该宏。