【问题标题】:Google Sheets split words then sort Alphabetically, Using arrayformula谷歌表格拆分单词,然后按字母顺序排序,使用数组公式
【发布时间】:2020-06-20 08:15:36
【问题描述】:

我有多行,包含不同数量的单元格,并且在每个单元格中我有一个或多个单词。

我正在寻找一种逐行的方法:

  • 将多个单词拆分为单个单词部分(以空格 (" ") 作为分隔符)
  • 按字母顺序对部分进行排序
  • 将部分放回多个单词单元格中
  • 删除行中的重复项

第一个看似简单的部分已经给我带来了问题。即使我只是试图看一行,我得到的最接近的是下面的代码,并且为一个单词单元格插入了奇怪的“”,并且也未能排序

=iferror(arrayformula(transpose(sort(transpose(SPLIT(transpose(B3:3)," "))))),"")

1

我还尝试使用 Query Header 技巧对上述输出进行剪切、排序和连接,但它拒绝对除第一行以外的任何内容进行排序

=arrayformula(trim(transpose(query(SORT(transpose(B12:D)),,COLUMNS(B12:D))))) 

2

考虑到我的史诗在上面失败了,我什至没有尝试将这两件事结合在一起。

最终的输入文档将有更多的行和列,所以我还需要确保它可以在没有任何行号或列号的硬编码的情况下工作。

我们将不胜感激任何和所有的帮助。

【问题讨论】:

  • 您是否考虑过使用 Apps 脚本执行此操作?

标签: sorting join google-sheets array-formulas alphabetical-sort


【解决方案1】:

我可能有东西给你。这样做有点奇怪,但我认为它可以工作。

Take a look at this sheet

原始数据位于单元格 B3:J 的“原始”选项卡中,一直向下。

转换器选项卡将所有内容放在一列中,然后有一个“下拉公式”,需要根据您的数据集的大小将其下拉很长一段距离。好消息是,您可以事先对数千行执行此操作,并且它将保持空白。

“新数据”选项卡只有一个公式,它将按照原来的方式重新填充您的数据,但会使用已使用的单词。

尽可能多地处理原始数据选项卡上的数据。看看新数据是否反映了你想要的。

【讨论】:

    猜你喜欢
    • 2013-09-24
    • 1970-01-01
    • 2020-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多