vba复制整个sheet内容

您所在的位置:网站首页 复制sheet1工作表到工作簿最后 vba复制整个sheet内容

vba复制整个sheet内容

2024-07-17 00:09| 来源: 网络整理| 查看: 265

有时候,我们可能想复制工作表,保留一份工作表的副本,以免误操作打乱工作表后无法恢复。有时候,我们也可能想移动工作表,调整工作表顺序,将工作表重新排列,以方便工作表的布置。本文介绍在VBA中实现这两种操作。

在工作簿底部的工作表标签中单击右键,选择菜单中的“移动或复制工作表”,如下图1所示。

109170655_1_20170824074430499

图1

在出现的对话框中选中“建立副本”,如下图2所示。

109170655_2_20170824074430843

图2

单击“确定”按钮,复制得到工作表Sheet1的一份副本,Excel将其自动命名为工作表Sheet1(2),如下图3所示。

109170655_3_20170824074431155

图3

技巧:选择要复制的工作表标签后,按住Ctrl键,拖动工作表即可完成复制工作表操作。

使用宏录制器录制上述操作的代码为:

Sub Macro1()

'

' Macro1 Macro

'由完美Excel创建

'

Sheets('Sheet1').Select

Sheets('Sheet1').Copy Before:=Sheets(1)

End Sub

Copy方法

工作表对象的Copy方法复制指定工作表到工作簿中指定的位置。其语法为:

工作表对象.Copy(Before,After)

说明:参数Before和参数After用于指定工作表,复制的工作表将放置在该工作表之前或者之后。二者只能同时选一。

如果没有指定参数,Excel将创建一个包含所复制工作表的新工作簿。

下面接着来看移动工作表的操作。

在上文图2所示的对话框中,我们不选取“建立副本”复选框,这样将会移动所选择的工作表在对话框中指定的某工作表之前。或者在Excel工作簿中,选择要移动的工作表标签后,直接拖动到想要放置的位置。如下图4所示,将工作表Sheet1(2)移动至工作表Sheet3之前。

109170655_4_20170824074431358 图4

所录制的代码如下:

Sub Macro2()

'

' Macro2 Macro

' 由完美Excel创建

'

Sheets('Sheet1(2)').Select

Sheets('Sheet1(2)').Move After:=Sheets(3)

End Sub

Move方法

工作表对象的Move方法移动指定工作表到工作簿中指定的位置。其语法为:

工作表对象.Move(Before,After)

说明:参数Before和参数After用于指定工作表,复制的工作表将放置在该工作表之前或者之后。二者只能同时选一。

如果没有指定参数,Excel将创建一个包含所复制工作表的新工作簿。

对比一下,Copy方法与Move方法似乎完全相同,只是Copy方法创建了工作表的一份副本,而Move方法只是移动了工作表的位置。

下面的语句将工作簿中第3个工作表放置到一个新工作簿中:

Worksheets(3).Copy

或者:

Worksheets(3).Move

示例1:将工作表移动到最后

下面的代码将名为“完美Excel”的工作表移动到工作簿工作表的最后。

Sub MoveWorksheets()

Worksheets('完美Excel').Move_

After:=Worksheets(Worksheets.Count)

End Sub

本文属原创文章,转载请联系我([email protected])或者注明出处。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3