繁体   English   中英

在谷歌表格中取消两列

[英]Unnest two columns in google sheet

我这里有一个这样的表格(基本上它是来自谷歌表格的数据,在 A 和 B 列中有多项选择答案,在 C 列中有非多项选择数据)我需要为每个多项选择答案单独一行。

A列 B列 Email
甲、乙 XX,YY 1@gmail.com
一、C FF,DD 2@gmail.com

我试图取消嵌套第一列并像这样保留剩余的列

在此处输入图像描述

我尝试了几种我发现的使用数组公式展平和拆分的方法,但我真的不知道从哪里开始。

任何帮助或提示将不胜感激!

您可以在 A 列上使用拆分function,然后使用索引function。考虑到该表,您可以使用:

=index(split(A2,","),1,1)

split function 使用指定的分隔符分隔文本,返回一个 1 行 2 列的数组; 索引function 将返回该数组的第一行和第一列。 要从 A 列返回第二个元素,只需更改为

=index(split(A2,","),1,2)

我认为对此没有简单的解决方案。 您要求的元素组合与已进行的多项选择一样多。 Google 表格中的任何 function 都有其潜力和限制它可以表达多少元素。 这里一个非常有用的公式是 REDUCE。 使用 REDUCE 和用 COUNTA 计数的逗号分隔的元素序列,您可以建立这个公式:

=QUERY(REDUCE({"Col A","Col B","Email"},SEQUENCE(COUNTA(A2:A)),LAMBDA(z,c,{z;LAMBDA(ax,bx,
REDUCE({"","",""},SEQUENCE(ax),LAMBDA(w,a,
{w;
REDUCE({"","",""},SEQUENCE(bx),LAMBDA(y,b,
{y;INDEX(SPLIT(INDEX(A2:A,c),","),,a),INDEX(SPLIT(INDEX(B2:B,c),","),,b),INDEX(C2:C,c)}
))})))
(COUNTA(SPLIT(INDEX(A2:A,c),",")),COUNTA(SPLIT(INDEX(B2:B,c),",")))})),
"Where Col1 is not null",1)

由于我必须在每个 REDUCE 中使用“初始值”,因此我使用 QUERY 来过滤空值:

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM