Excel的图形功能使您可以向工作簿中添加许多预定义的形状。这些形状称为自选图形,可以满足广泛的需求。但是,如果要向“自选图形”功能添加形状,则很不走运。这些形状显然已硬编码到Excel中,无法修改。

但是,您可以将形状添加到“剪辑库”。如果将形状设置为WMF文件格式,则很容易添加形状并将其放置在工作表中。例如,如果要在Excel中使用许多不同的流程图符号,您要做的就是将每个符号保存为WMF格式,然后将其导入到“剪辑库”中。 (要以WMF格式保存图形,您将需要使用专用的图形程序,例如Paint Shop Pro或Corel Draw。)

如果由于某种原因不想使用剪辑库,则可以通过在隐藏的工作表中组合宏和图形来模拟自己的自选图形。以下一般步骤详细说明了如何针对一系列二十个流程图符号执行此操作。这些步骤假定您相当舒服地编写宏和自定义工具栏。

。打开模板工作簿,并确保它只有一个工作表。

。将所有流程图图形放在工作表上。

。创建一个新的工具栏,将其命名为MyShapes,并确保它与模板工作簿关联。

。在工具栏上添加二十个按钮,每个流程图图形一个。这个想法是,单击按钮会将关联的流程图形状添加到活动工作表中。

。编辑每个按钮表面以尽可能紧密地显示每个流程图图形。 (这是这些步骤中最困难的部分)。

。根据需要更改每个按钮的工具提示文本。这很有用,因此用户可以了解每个流程图图形的目的。

。依次选择并命名每个流程图图形。 (通过选择图形并在“公式”栏左侧的“名称”框中输入名称来命名图形。)出于这些步骤的目的,假定您使用诸如FlowObj1,FlowObj2之类的名称。

。编写以下类型的二十个宏(每个流程图图形一个):

Sub AddFlowObj1()

ThisWorkbook.Sheets(1).Shapes("FlowObj1").Copy     ActiveSheet.Paste End Sub

。将每个宏分配给相应的工具栏按钮。

。在模板的工作簿模块中,添加以下过程:

Private Sub Workbook_Open()

Application.CommandBars("MyShapes").Visible = True End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)

Application.CommandBars("MyShapes").Delete End Sub

。将模板另存为Excel加载项。

。重新启动Excel并使用“工具”。加载项可激活您的新加载项。

注意:

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

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

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