您当前的位置: 首页 > 办公软件教程 > Excel教程 浏览
编写Excel宏 轻松完成单元格数据互换
发布时间:2014-07-05    点击率:次    来源:www.sytcke.com    作者:电脑技术学习网

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

  打开“工具”菜单中的“宏”,选择“录制新宏”命令,在个人宏工作簿中(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宏完成单元格数据互换

发表留言
发表留言请先登录!
免责声明:本站发布的信息和评论纯属网民个人行为,并不代表本站立场,如发现有违法信息或侵权行为,请直接与本站管理员联系,我们将在收到您的信息后24小时内作出处理!