在Excel中sorting文本和数字

我得到了创build的范围列表。 我想要做的是按照它们所指的单元格号码升序排列它们。 我尝试使用sorting选项,但我想出的是创build我自己的sorting列表…

范围列表:

Column 1 Column 2 pp2dni2007 =szkolenia!$B$2:$E$33 pp2dni2010 =szkolenia!$B$273:$E$500 pp3dni2008 =szkolenia!$B$34:$E$83 pp3dni2009 =szkolenia!$B$84:$E$272 

期望的输出:

 Column 1 Column 2 pp2dni2007 =szkolenia!$B$2:$E$33 pp3dni2008 =szkolenia!$B$34:$E$83 pp3dni2009 =szkolenia!$B$84:$E$272 pp2dni2010 =szkolenia!$B$273:$E$500 

这是一个方法(虽然有点难看)。 假设一个这样的设置:

在这里输入图像说明

步骤1:

将光标移到C1并转到公式 – >定义名称。 定义以下名称: 在这里输入图像说明

我们需要用这个函数来得到B列中每个单元格的公式,因为我们将根据这个公式进行sorting。

第2步:

C1单元格中input并填写:

 =LEFT(SUBSTITUTE(GET_FORMULA,"=szkolenia!R",""),FIND("C",SUBSTITUTE(GET_FORMULA,"=szkolenia!R",""))-1) 

方便分解:

 =LEFT(SUBSTITUTE(GET_FORMULA,"=szkolenia!R",""), FIND("C",SUBSTITUTE(GET_FORMULA,"=szkolenia!R",""))-1) 

这基本上返回存储在GET_FORMULA中的引用的行号。

第3步:

select列ABC并根据列Csorting:

在这里输入图像说明

结果:

在这里输入图像说明

或者与公式:

在这里输入图像说明

笔记:

  • 该文件必须保存为启用macros,以使GET_FORMULA名称工作。
  • 我真的不喜欢帮手列(如上面的列C ),但在这种情况下,事情会过度复杂,没有它。

我希望这有助于,虽然这是一个非常丑陋的解决scheme..

当我读到loannis解决scheme时,我想出了另一个解决scheme来解决我的问题;)忘了告诉:列2数据不是重要的数据,但它是如何sorting提示。

好吧,看起来像这样:

 Column 1 Column 2 pp2dni2007 =szkolenia!$B$2:$E$33 pp2dni2010 =szkolenia!$B$273:$E$500 pp3dni2008 =szkolenia!$B$34:$E$83 pp3dni2009 =szkolenia!$B$84:$E$272 

我们得到了这些数据,所以这里的痛苦是这个硬数据“= szkoleni …”。

为了整理出来,所有需要的是摆脱它。
使用查找和replace我删除“= szkolenia!$ B $”的一部分,然后再次使用它,我删除了它的其余部分“:*”。

现在专栏看起来像这样:

 Column 1 Column 2 pp2dni2007 2 pp2dni2010 273 pp3dni2008 34 pp3dni2009 84 

现在只是一个简单的sorting,瞧! 它也可以很容易地通过macros使用;)

感谢loannis,你是我的灵感;)