有时候,我们可能想复制工作表,保留一份工作表的副本,以免误操作打乱工作表后无法恢复。有时候,我们也可能想移动工作表,调整工作表顺序,将工作表重新排列,以方便工作表的布置。本文介绍在VBA中实现这两种操作。
在工作簿底部的工作表标签中单击右键,选择菜单中的“移动或复制工作表”,如下图1所示。 图1 在出现的对话框中选中“建立副本”,如下图2所示。 图2 单击“确定”按钮,复制得到工作表Sheet1的一份副本,Excel将其自动命名为工作表Sheet1(2),如下图3所示。 图3 技巧:选择要复制的工作表标签后,按住Ctrl键,拖动工作表即可完成复制工作表操作。
使用宏录制器录制上述操作的代码为: Sub Macro1() ' ' Macro1 Macro '由完美Excel创建
' Sheets('Sheet1').Select Sheets('Sheet1').Copy Before:=Sheets(1) End Sub
Copy方法 工作表对象的Copy方法复制指定工作表到工作簿中指定的位置。其语法为: 工作表对象.Copy(Before,After) 说明:
下面接着来看移动工作表的操作。 在上文图2所示的对话框中,我们不选取“建立副本”复选框,这样将会移动所选择的工作表在对话框中指定的某工作表之前。或者在Excel工作簿中,选择要移动的工作表标签后,直接拖动到想要放置的位置。如下图4所示,将工作表Sheet1(2)移动至工作表Sheet3之前。 图4 所录制的代码如下: Sub Macro2() ' ' Macro2 Macro ' 由完美Excel创建
' Sheets('Sheet1(2)').Select Sheets('Sheet1(2)').Move After:=Sheets(3) End Sub
Move方法 工作表对象的Move方法移动指定工作表到工作簿中指定的位置。其语法为: 工作表对象.Move(Before,After) 说明:
对比一下,Copy方法与Move方法似乎完全相同,只是Copy方法创建了工作表的一份副本,而Move方法只是移动了工作表的位置。
下面的语句将工作簿中第3个工作表放置到一个新工作簿中: Worksheets(3).Copy 或者: Worksheets(3).Move
示例1:将工作表移动到最后 下面的代码将名为“完美Excel”的工作表移动到工作簿工作表的最后。 Sub MoveWorksheets() Worksheets('完美Excel').Move_ After:=Worksheets(Worksheets.Count) End Sub 本文属原创文章,转载请联系我(xhdsxfjy@163.com)或者注明出处。 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。 |
|