我试图根据Sheet-1中的数据,在Sheet-2上的B:B中用逗号分隔的字符串连接作为套件一部分的所有序列号。
除了concatenate语句中的一堆if语句之外,这是否可行?我一直在努力想通过vlookup,索引/匹配来找到一种方法,可能需要一个Google表格附加组件,因为我在Excel中的搜索显示了一些可能有用的VBA选项。
Get the column that has the kit selections, need to create the action off of this match.
=MATCH(TO_TEXT($A2),Sheet-1!$A$1:$G$1,0)
Sheet-1在A2中有一个序列号列表:A,单元格B1:G1包含不同的套件编号,在每个单元格中B2:G100如果套件包含项目,它将具有' 1'另一方面,细胞是空的。
S/N Kit1 Kit2 ... Kit7
GF367 1 1
BW274 1 1
...
BSP23 1
Sheet-2在A2中有一个套件编号:A与Sheet-1中的一个套件相关!:B1:G1。
Kit# S/N Comma String
Kit1 GF367,BW274
Kit2 GF367,BSP23
...
Kit7 BW274
答案 0 :(得分:1)
尝试使用Sheet2!B2
=mid(arrayformula(concatenate(if(index(Sheet1!$B$2:$H$4,,match(A2,Sheet1!$B$1:$H$1,0))<>"",", "&Sheet1!$A$2:$A$4,""))),3,999)
答案 1 :(得分:1)
假设在Sheet2的A列中是源数据第一行的转置,请在Sheet2中尝试这个!B2
=ArrayFormula(transpose(substitute(trim(
QUERY(IF(Sheet5!B2:E,Sheet5!A2:A,),"select *",ROWS(A:A)))," ",",")))
解释
IF用于通过行标签替换源交叉选项卡式数据上的1,然后使用QUERY连接此值。
QUERY连接用空格字符分隔它们的行值。上面的公式使用此功能连接上一步产生的数据值,然后TRIM用于删除多余的空格,SUBSTITUTE用逗号替换剩余的空格。