手机版

我们试着写一个可以实现这个功能的宏

时间:2021-11-16 来源:互联网 编辑:宝哥软件园 浏览:

如何实现Excel表格中两个单元格区域之间的数据交换?我们通常使用剪切粘贴的方法,但是这种方法比较繁琐,数据面积大的话容易出错。我们试着写一个可以实现这个功能的“宏”。

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

代码:

如果选择,判断用户是否选择了两个单元格或单元格区域。区域。count=2theset xr=selection。areas (1) setyr=selection。区域(2)‘判断选择区域是否重叠如果不相交(XR,YR)为无则结果=MsgBox’(选择区域重叠!交换后重叠区域的数据将被部分覆盖!' VbCrLf '继续吗?vbyesno)如果result=vbnotthen exit sub ifif XR . rows . count=yr . rows . count和XR . columns . count=yr . columns . count那么' exchange选区SZ1=XR。公式SZ2=Y R .公式xr=sz2yr=sz1else msgbox '所选的两个数据区大小不同!请确认您的重新选择!请按住Ctrl键选择两个要交换的数据区域!'

自定义工具栏按钮,并将创建的宏分配给它(如图所示)。如果两个选中单元格的面积大小(单元格数)不同或者选中数据小于2,系统会给出相应的错误提示。

编写Excel宏完成单元格数据互换

版权声明:我们试着写一个可以实现这个功能的宏是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。