如何实现Excel表格中两个单元格区域间的数据交换

时间:2013-05-03 16:10:01  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:菜单中的“宏”,选择“录制新宏”命令,在个人宏工作簿中(Personal.xls)创建一个名为Exchange 的宏,代码如下:
  正文:

如何实现Excel(第二电脑网http://www.002pc.com)表格中两个单元格区域间的数据交换呢?通常我们使用剪切粘贴的方法来完成,但这个方法比较繁琐,如果数据区域较大还容易出错。下面我们试着来编写一个可以实现该功能的“宏”吧。

打开“工具”菜单中的“宏”,选择“录制新宏”命令,在个人宏工作簿中(Personal.xls)创建一个名为Exchange 的宏,代码如下:

 代码:

'判断用户是否选择了两个单元格或单元格区域

If Selection.Areas.Count = 2 Then

Set XR = Selection.Areas(1)

Set YR = Selection.Areas(2)

'判断选区是否重叠

If Not Intersect(XR, YR) Is Nothing Then

Result = MsgBox(" 选择区域有重叠!交换后重叠区域的数据将有部份被覆盖!" & vbCrLf & " 是否继续?", vbYesNo)

If Result = vbNo Then Exit Sub

End If

If XR.Rows.Count = YR.Rows.Count And XR.Columns.Count = YR.Columns.Count Then

'交换选区

SZ1 = XR.Formula

SZ2 = YR.Formula

XR = SZ2

YR = SZ1

Else

MsgBox "选择的两个数据区域大小不一样!请确认重新选择!"

End If

Else

MsgBox "请按住Ctrl键选择两个要交换的数据区域!"

自定义一个工具栏按钮,并将创建的宏指定给该按钮即可(如图)。如果选中的两个单元格的区域大小(单元格个数)不同或选择的数据少于2个,系统将会给出相应的出错提示。

编写Excel(第二电脑网http://www.002pc.com)宏完成单元格数据互换


"如何实现Excel表格中两个单元格区域间的数据交换"由第二电脑网原创提供,转载请注明:http://www.002pc.com/pcedu/Office/Excel/24402.html


关于《如何实现Excel表格中两个单元格区域间的数据交换》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td