【问题标题】:Normalize column with multiline values to single value per cell将具有多行值的列标准化为每个单元格的单个值
【发布时间】:2018-09-03 18:09:50
【问题描述】:

在 Google 电子表格中,我有一行如下所示

A   A1
B   "b1
     B1"
C   C1

其中 b1 和 B1 在同一个单元格中,但位于两行。 (您可以通过按 ctrl-enter 来实现)如何将其转换为第二列中的每个项目都在自己的行中,例如:

A   A1
B   b1
B   B1
C   C1

我正在寻找某种可以将 enmass 应用于大型电子表格的函数,因此手动执行它不起作用。

【问题讨论】:

    标签: google-sheets


    【解决方案1】:
    =transpose(
       split(
         concatenate(
           arrayformula(
             split(A1:A3, char(10)) & "|")
         ),
       "|")
     )
    

    解释:从内部展开,首先将char(10)(换行符)拆分到每个源单元格。这会产生一个二维数组,需要将其序列化回一维。这是通过 concatenate() 与另一个 split() 的组合完成的,最后是 transpose() 将其恢复为垂直状态。

    【讨论】:

    • 多么天才的答案。太棒了。
    • 这仅适用于一列,但它有多个列,只有影响列是移位的,因此会丢弃不同的行。
    • 好吧,您在问题中没有提到有多个列,并且在您的示例和措辞中,您只谈到了一个列。同时对于多列,有几种可能的解决方案,具体取决于您的需要(例如,您是否需要维护同一行中的多行值之间的关系?)自定义脚本函数可能是您的最佳解决方案。如果您仍然需要帮助,请尝试自己开发一些内容,并使用更准确的措辞和示例发布另一个问题。
    猜你喜欢
    • 2017-01-24
    • 2015-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 1970-01-01
    相关资源
    最近更新 更多