VBA 选择区域排序

有个问题想请教下精通VBA的朋友:我希望我设计的宏能实现如下功能:用户在EXCEL表格中选定一块区域,然后运行我编写的宏,EXCEL能自行对区域内的数据进行排序。而我在设... 有个问题想请教下精通VBA的朋友: 我希望我设计的宏能实现如下功能:用户在EXCEL表格中选定一块区域,然后运行我编写的宏,EXCEL能自行对区域内的数据进行排序。而我在设计宏的时候是不知道用户会选择哪快区域的。请问下各位大侠应该如何用VBA来实现这个功能 PS:其实这个只是我设计的宏的一部分,如果说要排序的话还是用“数据”里的排序来的方便多了。我之前有试过录制宏然后看代码,但是不知道怎么的,录制好的代码放到我自己的宏的代码中间总会有问题。所以无奈之下,只好求助大家了!谢谢! 展开
 我来答
厦门侯
高粉答主

2016-01-21 · 信息管理员
厦门侯
采纳数:30618 获赞数:90296

向TA提问 私信TA
展开全部

  用usedrange可以实现要求,具体代码如下:

  activesheet.usedrange.select


关于usedrange的详细知识:

  如果想知道当前工作表中所有已使用的单元格区域的大小,或者想引用当前工作表中已使用的区域,那么可能就要想到UsedRange属性了。

  UsedRange属性应用于Worksheet对象,返回指定工作表中已使用区域的Range对象,即返回工作表中已使用的单元格区域。因此,该属性也可以用于选取单元格区域。
  下面用一个简单的例子来说明UsedRange属性的功能。
        如下图1所示的工作表:

然后,在VBE编辑器中输入如下代码:
Sub Sample01()
  Worksheets("Sheet1").UsedRange.Select
End Sub
代码运行后,上面的工作表显示如下图2所示:

即在指定工作表中(本例为工作表Sheet1)已使用范围被全部选中。可以看出,UsedRange属性返回工作表中所有已使用范围的单元格区域,而不管该区域数据间是否有空行或空格。

特别注意:UsedRange属性返回工作表中所有已使用范围的单元格区域是指:单元格中有数值、公式、单元格格式化设置(例如:单元格字体设置、边框设置等等)

匿名用户
2013-07-17
展开全部
选中区域第一行排序如果想另外别行,请在代码中+1或多个数 Selection.Sort Key1:=ActiveCell, OrderCustom:=ActiveCell.Row Selection.Sort Key1:=ActiveCell, OrderCustom:=ActiveCell.Row+1
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式