如何用VB实现:在EXCEL文档指定区域单元格选中后,自动把这些单元格数据粘贴到另一个页面?
举例:请高手研究,用VB代码实现:EXCEL文档,只要在Sheet1中框选A1:C10(数据区域)后,就自动将这些单元格的数据拷贝到Sheet2A:C单元格中。VB详细要...
举例:
请高手研究,用VB代码实现:
EXCEL文档,只要在Sheet1中框选A1:C10(数据区域)后,就自动将这些单元格的数据拷贝到Sheet2 A:C单元格中。
VB详细要求:
1.)首次框选Sheet1数据区域A1:C10,需要判断Sheet2 A:C是否为空,
如果为空,则自动复制到Sheet2 A1:C10单元格,如果不为空,则空一行,从下一行开始粘贴;
2.)第二次框选Sheet1数据区域A1:C10后,与第一次数据之间空一行,避免覆盖,
即:复制到Sheet2 A12:C21单元格;
3.)第三次框选Sheet1数据区域A1:C10后,与上一次数据之间空一行,
亦即:复制到Sheet2 A23:C32单元格;
.....以此类推.....
4.)当Sheet2 A:C中的数据清空后,则循环利用单元格(如1~3)
谢谢高手赐码! 展开
请高手研究,用VB代码实现:
EXCEL文档,只要在Sheet1中框选A1:C10(数据区域)后,就自动将这些单元格的数据拷贝到Sheet2 A:C单元格中。
VB详细要求:
1.)首次框选Sheet1数据区域A1:C10,需要判断Sheet2 A:C是否为空,
如果为空,则自动复制到Sheet2 A1:C10单元格,如果不为空,则空一行,从下一行开始粘贴;
2.)第二次框选Sheet1数据区域A1:C10后,与第一次数据之间空一行,避免覆盖,
即:复制到Sheet2 A12:C21单元格;
3.)第三次框选Sheet1数据区域A1:C10后,与上一次数据之间空一行,
亦即:复制到Sheet2 A23:C32单元格;
.....以此类推.....
4.)当Sheet2 A:C中的数据清空后,则循环利用单元格(如1~3)
谢谢高手赐码! 展开
2个回答
展开全部
单击 A1:C10任何一个地方,就执行,否则不执行。无需设置 按钮
Sub 自动复制()
arr = Range("A1:C10")
Sheets(2).Cells(Sheets(2).Range("a65536").End(xlUp).Row + 2, 1).Resize(10, 3) = arr
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim tr, tc
tr = Target.Row
tc = Target.Column
If tr >= 1 And tr <= 10 And tc <= 3 Then
自动复制
End If
End Sub
Sub 自动复制()
arr = Range("A1:C10")
Sheets(2).Cells(Sheets(2).Range("a65536").End(xlUp).Row + 2, 1).Resize(10, 3) = arr
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim tr, tc
tr = Target.Row
tc = Target.Column
If tr >= 1 And tr <= 10 And tc <= 3 Then
自动复制
End If
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询