如何实现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
更改多个Excel工作表数据合并计算
更改多个Excel工作表数据合并计算 对来自多个Excel工作表中的数据进行合并计算后,可能需要更改对数据进行合并计算的方式。例如,可能要添加新的地区办事处的工作表,或删除不再存在的部门的工作表,或更改带有三维引用 (三维引用:对跨越工作簿中两个或多个工作表的区域的引用。)的公式。 更改按位置或分类进行的合并计算 注释 只有当您以前未在“合并计算”对话框内选中“创建连至源数据的链接”复选框的情况下,才能更改合并计算。如果选中该复选框,请单击“关闭”,然后重新创建合并计算。 1、单击合并计算数据的左上角单元
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工作表中提高工作效率的妙招
在Excel工作表中提高工作效率的妙招 1.如果你经常打开某些文档,而且又在意工作效率,在Excel的操作中,若用户使用相同的工作簿,那么可以将这些工作簿都保存在<驱动器>:Program FilesMicrosoft officeofficeXlstart文件夹内。以后每次启动Excel,保存在Xlstart文件夹内的工作簿都会自动打开。 2.如果你使用office的快捷方式栏,你可以通过将文档直接拖放至“office快捷方式栏”创建工具栏按钮的方式来提供效率。


