我如何根据数字中间的某些字符对一串数字进行排序?

我如何根据数字中间的某些字符对一串数字进行排序?

因此,在我的工作中,我们希望根据注册编号来划分检查某些物品的工作。以下是这些编号的示例:

0022499-80.2017

0200781-98.2016

0021322-13.2016

以 结尾的项目奇奇破折号前的数字,从右到左,应该由 A 组检查。以奇偶数字应由 B 组检查。以甚至数字属于 C 组。因此,上面的列表应该是这样的:

0022499-80.2017 -> 一个

0200781-98.2016 -> B

0021322-13.2016 -> C

我如何创建过滤器(最好在 libreoffice calc 或 Google docs 上),以使排序更容易?

答案1

0022499-80.2017A2 中,将其放在右侧未使用的列中并向下填充。

=CHAR(ISEVEN(--MID(A2,FIND("-",A2)-2,1))+ISEVEN(--MID(A2,FIND("-",A2)-1,1))+65)

答案2

以下是@Jeeped 为 LibreOffice 翻译的答案:

=CHAR(ISEVEN(VALUE(MID(A2;FIND("-";A2)-2;1)))+ISEVEN(VALUE(MID(A2;FIND("-";A2)-1;1)))+65)

翻译说明:

  • 逗号,可能在 LibreOffice 中起作用,具体取决于语言环境,但;建议使用分号,因为无论在什么语言环境中它们都能起作用。
  • ISEVEN需要数字参数,因此VALUE转换为数字。也许这就是--Excel 中的作用?如果是这样,那么这种语法对我来说似乎很奇怪。

相关内容