合并Google表格中的多个标签,并添加一列数据的来源 示例没有新列的合并添加“面积”列有更好的方法吗?

问题描述

我有一个电子表格,其中包含具有相似布局的多个选项卡。我想使用公式将它们合并到一个选项卡中,该选项卡具有一个新列来命名其来源的标签。

示例

标签:A区

| Item | Status      |
|------|-------------|
| Foo  | Blocked     |
| Bar  | In Progress |

标签:B区

| Item   | Status    |
|--------|-----------|
| Foobar | Completed |

标签:已合并

| Area | Item   | Status      |
|------|--------|-------------|
| A    | Foo    | Blocked     |
| A    | Bar    | In Progress |
| B    | Foobar | Completed   |

没有新列的合并

我可以使用以下公式合并数据而无需附加列:

=ARRAYFORMULA(SORT({'Area A'!A2:B; 'Area B'!A2:B}))

看起来像这样:

|--------|-------------|
| Item   | Status      |
|--------|-------------|
| Foo    | Blocked     |
| Bar    | In Progress |
| Foobar | Completed   |

添加“面积”列

上面的公式缺少的是增加了area列。这可以通过使用vlookup交叉引用每个选项卡中的项目并对其进行标记来实现。但这不是非常有效,并且某些更新在本文档中重新计算已经很慢。我希望这大约有。 40个标签,总共10,000行要合并。

例如:

=IFS(NOT(ISERROR(VLOOKUP(B2,'Area A'!A$2:A,1,FALSE))),"A",NOT(ISERROR(VLOOKUP(B2,'Area B'!A$2:A,"B")

有更好的方法吗?

我想要这样的东西,但是它不起作用,因为我添加的常量与需要的行数不匹配:

=ARRAYFORMULA(SORT({{"A",'Area A'!A2:B}; {"B",'Area B'!A2:B}}))

解决方法

您可以借用空白列并执行以下操作:

=ARRAYFORMULA(SORT({{'Area A'!X2:X&"A",'Area A'!A2:B}; 
                    {'Area B'!X2:X&"B",'Area B'!A2:B}}))

或者您可以将其添加到第一列,然后拆分:

=ARRAYFORMULA(QUERY(SORT({SPLIT(
 {"A♦"&'Area A'!A2:A; 
  "B♦"&'Area B'!A2:A},"♦"),{'Area A'!B2:B; 
  'Area B'!B2:B}}),"where Col2 is not null",0))

请参阅: https://stackoverflow.com/a/63496191/5632629

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...