马蒂(Marty)拥有一系列工作簿,其中一些工作簿多达50个工作表。他需要将图形(公司徽标)粘贴到每个工作表的同一位置。他试图通过选择所有工作表,然后进行粘贴来实现此目的,但是这似乎无法像常规编辑那样在多个工作表上起作用。

马蒂是对的;当您选择了多个工作表时尝试粘贴图形不起作用。当您尝试时,Excel会告诉您它无法进行粘贴,但是如果您仅选择一个工作表,则可以很好地进行粘贴。

相反,您需要使用宏进行粘贴。假设图形已经复制到剪贴板,则可以运行如下宏:

Sub InsertLogo1()

Dim shtSheet As Worksheet

Application.ScreenUpdating = False     For Each shtSheet In Worksheets         With shtSheet             .Activate             .Range("A1").Select             .Paste         End With     Next     Set shtSheet = Nothing     Application.ScreenUpdating = True End Sub

宏逐步浏览工作簿中的每个工作表,并将图形粘贴到单元格A1中。如果要使用其他单元格,则只需修改选择该单元格的行。

如果您不想提前将图形复制到剪贴板,则可以使用如下宏来直接从图像文件中插入图形:

Sub InsertLogo2()

Dim strPath As String     Dim shtSheet As Worksheet

strPath = "C:\GraphicFolder\PictureName.bmp"



For Each shtSheet In Worksheets         shtSheet.Activate         Range("A1").Select         ActiveSheet.Pictures.Insert (strPath)

Next shtSheet     Set shtSheet = Nothing End Sub

当然,您可以修改图形文件的路径以及将文件粘贴到工作表中的单元格。

注意:

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

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

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