【问题标题】:textjoin a prefiltered table in exceltextjoin excel中的预过滤表
【发布时间】:2020-01-10 14:49:16
【问题描述】:

假设我们在 excel 中有一个表格。有人使用 ui(从一列中的箭头)将过滤器应用于整个表格。

所以我想从这个过滤后的表中加入一个列(过滤后的行)。

假设我们有 table1,我想通过文本加入列 Language。

如果我使用函数

=TEXTJOIN(",";1;Table1[[#Data];[Language]])

结果加入列的所有行,如果它被过滤,则不相关,我认为小计不能在这里工作。

我该怎么做才能连接过滤表中的所有行,以便每次过滤器更改时 textjoin 的结果都会改变?

所以可以说这是我想要加入文本的列,有人过滤掉了第一行和第三行。所以我希望 textjoin 忽略这些行

【问题讨论】:

  • 您能否展示数据示例以便我们理解问题?如果您要加入文本格式的单元格,则不清楚这会对表格或设置的总和产生什么负面影响。

标签: excel excel-formula textjoin


【解决方案1】:

我认为这样做可以:

=TEXTJOIN(",";1;IF(SUBTOTAL(103;OFFSET(Table1[[#Data];[Language]];ROW(Table1[[#Data];[Language]])-MIN(ROW(Table1[[#Data];[Language]]));;1))=1;Table1[[#Data];[Language]];""))

如果隐藏某些内容,则带有偏移量的小计会按角色过滤掉角色并返回正确的字段,以便 textjoin 起作用

【讨论】:

    【解决方案2】:

    我在所有表格中添加了一个名为“可见”的列。

    Example in a table named "tabPays"

    “可见”列的公式:=AGGREGATE(3;5;[@Pays])

    那么就很容易做很多与过滤行相关的事情。当行可见时,“Visible”列包含 1,否则为 0。

    您的问题的答案是: =TEXTJOIN(", ";TRUE;FILTER(tabPays[Pays];tabPays[Visible]=1))

    【讨论】:

      猜你喜欢
      • 2018-02-01
      • 2022-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多