我们如何才能做到,在Sheet1表里面,使用鼠标选择某个单元格、选择某行或多行、选择某列或多列,甚至是拖选部分单元格,然后,被选中的单元格的内容,自动被复制,最后粘贴到Sheet2里面的位置一样的区域里面呢?
这个方法很简单,我们使用VBA来实现吧!
首先,右键点击Sheet1,在弹出的快捷菜单中,选择“查看代码”,如下图!
然后,会弹出VBA代码编写窗口!
接下来,您就把如下的代码,复制粘贴到VBA代码编写窗口就行了!
Private Sub WorkSheet_SelectionChange(ByVal Target As Range)
Application.OnKey "^{a}", ""
Dim MyRangeArddress As String
MyRangeArddress = Target.Address
Sheet2.Cells.Value = ""
'Sheet2.Range(MyRangeArddress).Value = ""
Sheet2.Range(MyRangeArddress).Value = Sheet1.Range(MyRangeArddress).Value
End Sub
最后,记得保存您的EXCEL文件,再次打开,效果就出来了!
下面,俺对代码作个简要的说明!
Application.OnKey "^{a}", "" 代码功能是:禁用CTRL+A组合键全选所有单元格,因为全选,使用如上代码,速度会很慢;
Sheet2.Cells.Value = "" 代码功能是:清空Sheet2里面的所有单元格的内容,但是不删除格式或公式!
Sheet2.Range(MyRangeArddress).Value = Sheet1.Range(MyRangeArddress).Value 代码功能是:把Sheet1中被选中的单元格的内容,粘贴到Sheet2中位置完全一样的单元格中。