凯(Kay)写信来描述她在使用模板,宏和工具栏按钮时遇到的问题。凯似乎创建了一个宏,将其保存在工作簿中,并将该宏分配给工具栏按钮。当她以后将工作簿另存为模板时,如果删除了原始工作簿,则工具栏按钮将不再正常工作。

创建宏时,您将有机会确切指定应将宏存储在何处。如果将其存储在工作簿中,然后再将其保存为模板,则该宏仍然存在,因为该工作簿已转换为包含该工作簿存储的所有原始宏的模板。

问题出在工具栏按钮上。创建工具栏按钮并为其分配宏时,Excel会记住该宏的存储位置。

最初创建工作簿时,宏存储在工作簿中。这意味着工具栏按钮“指向”工作簿中的宏。即使在工作簿另存为模板之后,工具栏按钮仍指向工作簿中的宏,而不是模板中的宏。

要纠正这种情况,您需要做的就是-在将工作簿另存为模板之后-确保打开模板并将宏重新分配给工具栏按钮。这些宏应该是模板本身中的宏,而不是您当时打开的任何其他工作簿中的宏。然后,您可以保存模板,一切正常。

您可以按照以下步骤重新分配宏:

。打开新的模板文件。 (确保您打开了实际的XLT文件,并且没有基于该模板创建新的XLS文件。)

。右键单击运行宏的工具栏按钮。

。从出现的上下文菜单中选择自定义。 Excel将显示“自定义”对话框。 (请参见图1。)

。再次右键单击运行宏的工具栏按钮。

。从出现的上下文菜单中选择分配宏。 Excel将显示“分配宏”对话框。

。在“宏名称”框中,您将看到分配给按钮的宏的名称。它应该由工作表名称(XLS)和宏名称组成,并用感叹号分隔。将工作表名称更改为模板名称。 (这可能就像将字母XLS更改为XLT一样简单。)

。单击确定。

。点击关闭。重新保存您的模板。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(2717)适用于Microsoft Excel 97、2000、2002和2003。