代码之家  ›  专栏  ›  技术社区  ›  Fxp

如何将数字或日期格式应用于Excel中TEXTSPLIT之后的列

  •  1
  • Fxp  · 技术社区  · 1 年前

    我使用 TEXTSPLIT 剪切由多个部分组成的文本,例如:国家、日期和值:

    “USA-01/01/2023-1000”

    =TEXTSPLIT(A1,"-")
    

    不幸的是,结果是一个溢出公式(动态数组),其中日期和值是“text”(这在text函数之后是正常的)。如果我想排序,这会带来一个大问题,因为排序是作为TEXT而不是日期应用的。

    有没有一种方法可以将日期和数字列识别为数字,而不必枚举每一列来应用格式?

    我当前的解决方案 以下为:

    现在我用let来命名textsplit部分,并对每列使用choosecols,然后将数字1乘以1。。。在使用SORT之前:

    =LET(a,TEXTSPLIT(A1,"-"),HSTACK(CHOOSECOLS(a,1),CHOOSECOLS(a,2)*1,CHOOSECOLS(a,3)*1))
    

    但这似乎过于复杂了。。。尤其是当GoogleSheet中的等效SPLIT数组公式立即将正确的日期和数字格式应用于每个部分时。

    1 回复  |  直到 1 年前
        1
  •  5
  •   Rory    1 年前

    您可以使用:

    =LET(d,TEXTSPLIT(A1,"-"),IFERROR(d+0,d))
    

    但您必须手动将任何数字/日期格式应用于相关单元格。