excel中根据原有数据进行排序,排序后不影响原数据并将排序结果显示在另外的数据列,原数据修改可自动更新后.docxVIP

  • 34
  • 0
  • 约小于1千字
  • 约 2页
  • 2017-06-11 发布于北京
  • 举报

excel中根据原有数据进行排序,排序后不影响原数据并将排序结果显示在另外的数据列,原数据修改可自动更新后.docx

excel中根据原有数据进行排序,排序后不影响原数据并将排序结果显示在另外的数据列第一步:复制元数据列名到新列例如将A列和B列的列名分别复制到e列f列第二步:将原数据从大到小的排序为了便于输入,用“Name”来代替“$a$2:$a$9”这个范围区域,用“value”来代替“$B$2:$B$9”。在单元格H2中输入=INDEX(Name,MATCH(LARGE(value +ROW(value)*M%,ROW()-1),Value+ROW(value)*M%,0)),最后按CTRL+SHIFT+ENTER,自动在公式两端加上{}成为数组公式。(M的值越小越精确,测试时我采用的是0.0001)下面我们将公式的作用详细说明如下。ROW(参数)函数的作用是得到参数所代表的单元格或单元格区域的行号,如果在数组公式中输入这个公式就得到一个行号数组。ROW(Value)记录的是行号的信息,Value+ROW(Value)就是再原来工资的数目上再加上行号,这样是为了防止有相同的工资数目出现,避免因相同的工资数而出现错误的排序。ROW()-1则是给出一个从1到24的序数数组,便于从大到小对工资进行排序。LARGE(Value+ROW(Value),ROW()-1)是在Value+ROW(Value)的范围内找出一个ROW()-1大的数X(暂时用X来代替其返回值)。MATCH函数是返回在指定方式下与指定数值匹配的数组中元素的相应位置。MATCH(X,Value+ROW(Value),0)的作用是在Value范围内查找X并且返回其所在的行号M(暂时用M代替返回的行号M)。INDEX(Name,M)是在Name范围内返回第M个元素的内容。这样就完成了从大到小的排序。第三步:将排序后的省份相对应的值显示在排序后的数值列当中在f2对应框内输入=VLOOKUP(e2, $A$2:$b$9, 2, FALSE),此公式将搜索区域 A2:b10 的A列中的值与e2(江西)对应的值,然后返回该区域同一行中B列包含的值(155)。

文档评论(0)

1亿VIP精品文档

相关文档