【问题标题】:Filter all values except a specific set, remove duplicates, remove another specific value then join the result in one cell过滤除特定集合之外的所有值,删除重复项,删除另一个特定值,然后将结果加入一个单元格
【发布时间】:2019-07-11 13:08:21
【问题描述】:

尝试将随机生成的整齐独特的特定值连接在一起,同时排除重复项并忽略我已经拥有的特定值。

上图中所选单元格的结果应该是“近战或远程或SPEL”。这应该从上面的“Affixes”部分得出,并忽略“Base Scaling Type”下面的值,同时排除所有其他值

理想情况下,这应该在不添加额外行、列或值的情况下实现。

从各种帖子中,我尝试了以下公式:

=iferror(join(" Or ",(Filter(Unique(E8:J8),E8:J8<>L10,E8:J8<>"",E8:J8="Melee",E8:J8="SPEL",E8:J8="Ranged")),L10),L10)

但是,他们的问题是专门删除重复项或专门过滤一个值,我找不到将两者组合成一个公式的问题。

【问题讨论】:

    标签: google-sheets duplicates filtering google-sheets-formula


    【解决方案1】:
    =ARRAYFORMULA(JOIN(" OR ", TRANSPOSE(UNIQUE(FILTER(
     QUERY(TRANSPOSE(TO_TEXT(E7:J8)), 
     "select Col2 where Col1 contains 'Scaling'", 0), NOT(COUNTIF(L10, 
     QUERY(TRANSPOSE(TO_TEXT(E7:J8)), 
     "select Col2 where Col1 contains 'Scaling'", 0))))))))
    


    =JOIN(" OR ", UNIQUE(TRANSPOSE(FILTER(E8:J8, NOT(COUNTIF(L10, E8:J8))))))
    

    【讨论】:

    • 谢谢这完美地回答了这个问题......但是,由于我感到疲倦和沮丧,我忘记在我的问题中包含一个关键点并重写了它:不仅仅是值“近战”,“远程" 和 "SPEL" 可能出现在词缀部分,我还希望公式排除除这三个之外的所有值,同时达到相同的结果。如果您还可以将单个排除值重新添加到结果的开头,则可以加分。抱歉,感谢您的宝贵时间^^
    • @FIRE 那么究竟应该在 L10 中是什么?
    • L10 包含武器的基本缩放类型。这也是随机的,但始终是“近战”、“远程”或“SPEL”中的一个值
    • 这非常有效。感谢您如此耐心地处理我奇怪的具体问题:)
    • 完成。虽然有一个小问题,但由于某种原因,Unique 功能无法正常工作,但是如果您将其移动到 Transpose 功能的前面,它就会开始工作......出于某种原因。将使用编辑后的函数更新答案。
    猜你喜欢
    • 2020-05-29
    • 1970-01-01
    • 1970-01-01
    • 2013-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-28
    • 1970-01-01
    相关资源
    最近更新 更多