您可能需要定期将工作簿复制到系统上的多个位置。例如,可能需要将打开的工作簿复制到本地硬盘驱动器以及办公室网络中实际存在的多个映射驱动器。

Excel没有内置功能来执行此操作,但是如果各个位置都定义正确,则可以创建一个宏来为您进行保存。以下宏是此类工具的示例:

Sub SaveToLocations()

Dim OrigName As String

OrigName = ActiveWorkbook.FullName     ActiveWorkbook.SaveAs "G:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs "L:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs "K:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs "S:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs OrigName End Sub

宏的特定示例将活动工作簿保存到五个不同的位置,所有位置均使用相同的工作簿名称。宏确定工作簿的当前位置,以便它可以最后保存到当前位置。这样做的原因是,您可以继续使用常规的“保存”工具并获得预期的结果。

如果要在自己的系统上使用此宏,您要做的就是确保更改每个工作簿的保存驱动器号。如果您指定的驱动器之一用于使用可移动介质的位置,并且驱动器中没有介质,则宏将生成错误并停止。然后,您必须找出工作簿的原始保存位置,以便可以手动将其保存(使用“另存为”)。

宏的另一个特殊之处在于,由于它使用SaveAs方法,因此,如果每个目标位置都已经存在一个与当前工作簿同名的工作簿,Excel将询问您是否要覆盖该工作簿的现有版本。最后一次保存到原始位置总是如此。

注意:

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

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

本技巧(2774)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: