【问题标题】:Splitting delimitted column using ONLY formula仅使用公式拆分分隔列
【发布时间】:2019-04-29 20:59:54
【问题描述】:

有类似的要求,但不是我所追求的。以这个示例值为例: aa;bb;cc;dd

每个分号之间的值不固定。它们的范围为 3-15 个字符。我需要从分号之间拉出子字符串。

我已经对 'aa' 和 'bb' 进行了排序,但我正在努力处理 'cc' 之后的问题。这是我的前两个公式:

=LEFT(A1,FIND(";",A1)-1)

...获取第一个分号左侧的值

=MID(A1,
    (FIND(";",A1)+1),
     FIND(";", A1, (FIND(";",A1) + 1))-(FIND(";", A1) + 1))

...获取第一个和第二个分号之间的值。卡在第三个(希望我可以使用变量.. JSON 也许?)

最终目标是将一个多选列拆分为 5 列,用于 Power BI 报告。我们希望在报告之前完成所有计算并清除它;我知道 Power BI 中有分隔符选项。

任何帮助将不胜感激,谢谢。

附:标记在 Excel 中,因为 Sharepoint 显然使用相同的公式,而这正是我目前正在测试的。

【问题讨论】:

    标签: excel formula sharepoint-online


    【解决方案1】:

    我不能保证您可以在 sharepoint 中使用它,但它可以在 excel 中使用。试试下面的公式。

    =TRIM(RIGHT(LEFT(SUBSTITUTE($A1,";",REPT(" ",100)),COLUMNS($A$1:A1)*100),100))
    

    按照下面的截图,将公式放入B1单元格中,然后根据需要向右拖动。

    【讨论】:

      【解决方案2】:

      仅使用公式就有几十种方法。无需太深奥,也无需诉诸数组公式,您可以使用以下内容:

      =TRIM(MID(SUBSTITUTE($A3,";",REPT(" ",LEN($A3))),(COLUMN(F:F)-2)*LEN($A3)+1,LEN($A3)))

      【讨论】:

        【解决方案3】:

        试试这个:

        创建一个标题行,您的字段将被拆分到其中,编号从 1 到 5(在单元格 B1 - F1 中)。这些#s 将在公式中使用。

        第二行将包含数据的开头(在单元格 A2 中)。在单元格 B2 中,输入以下公式:

        =TRIM(MID(SUBSTITUTE($A2,";",REPT(" ",LEN($A2))),(B$1-1)*LEN($A2)+1,LEN($A2)))
        

        然后您可以使用填充句柄 (+) 将其从 B2 复制到 F2。

        参考:https://exceljet.net/formula/split-text-with-delimiter


        公式的美化版:

        =TRIM(
            MID(
                SUBSTITUTE(
                    $A2,
                    ";",
                    REPT(
                        " ",
                        LEN(
                            $A2
                        )
                    )
                ),
                ( B$1 - 1 ) *
                LEN(
                    $A2
                ) + 1,
                LEN(
                    $A2
                )
            )
        )
        

        对于 1 次交互式通行证,您可以使用 Excel 的内置分隔符:转到 Data -> Text to Columns 并逐步完成向导。 p>

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-10-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-03-07
          相关资源
          最近更新 更多