EXCEL 怎么实现对某区域整体进行排序?
如图,我想把三个员工“张三”“李二”“赵一”的数据按照他们的名字进行排序,这里只是举个例子,实际上员工有几百个。(每个员工的家属数量不一定一样)不知道有什么简便的方法?...
如图,我想把三个员工“张三”“李二”“赵一”的数据按照他们的名字进行排序,这里只是举个例子,实际上员工有几百个。(每个员工的家属数量不一定一样)不知道有什么简便的方法?
展开
3个回答
展开全部
因为表组不同, 如果要排序,需要每 组单独选择排序,手工操作很麻烦。如果组数少还行,组数多就很麻烦。可以使用VBA,自动判断每个表格的区域进行排序。如果有合并单元格也是个问题。用VBA是个很好的解决方法。这个代码写起来可能要费点工夫。所以不免费。可私信。
如果手工的话,可以考虑先把员工姓名给拿出来,然后用MATCH函数定位,再依据MATCH定位到的位置,用INDEX函数,与MATCH到的数据结合,偏移其周边的数据,到什么地方。到位置之后把格式给设置过来,然后再处理下一个。这样可能能更好一些。也可以把姓名提取出来先排序,用CTRL+F搜索,搜索到就把其所在的区域给复制出来。
VBA的思路是将姓名自动全部搜索出来,然后对姓名进行排序,做成数组,然后再依次找到其所在的数据区域,界定后按照顺序排列起来。这个是自动的。按照规则处理就行。写完代码,几百个人,差不多分钟内就可以完成。顶天一两分钟了。
如果手工的话,可以考虑先把员工姓名给拿出来,然后用MATCH函数定位,再依据MATCH定位到的位置,用INDEX函数,与MATCH到的数据结合,偏移其周边的数据,到什么地方。到位置之后把格式给设置过来,然后再处理下一个。这样可能能更好一些。也可以把姓名提取出来先排序,用CTRL+F搜索,搜索到就把其所在的区域给复制出来。
VBA的思路是将姓名自动全部搜索出来,然后对姓名进行排序,做成数组,然后再依次找到其所在的数据区域,界定后按照顺序排列起来。这个是自动的。按照规则处理就行。写完代码,几百个人,差不多分钟内就可以完成。顶天一两分钟了。
展开全部
如果有合并单元格,直接建议用代码。
否则,可以考虑用辅助列操作,1、在数据的第一行得到对应的员工的序号,用VlookUp之类的即可。2、用if函数将刚才的序号填满。3、转成数值。4、排序。5、删除辅助列。
否则,可以考虑用辅助列操作,1、在数据的第一行得到对应的员工的序号,用VlookUp之类的即可。2、用if函数将刚才的序号填满。3、转成数值。4、排序。5、删除辅助列。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
需要有一个员工信息数据表。
然后引用员工信息数据表生成你需要的这个表。
排序员工信息数据表。
你要的这个表自动生成排序后的数据。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询