我必须处理一个格式怪异的数据集。
我有一张纸,线条代表一个模型(自行车)的不同部分。
第一列是复选框,用于指示部件所在的巫婆模型。所以我的车把是用在两辆自行车上的,但是每个型号都有自己的轮子
因此:
我如何才能获得一个数据集,该数据集将接受相同的数据,但为我需要订购的每个部分添加一行:
我尝试过过滤我的数据集,或者使用查询或逻辑来获得多行,但我得到了如下内容:
我正在寻找一种在添加过滤器列(model1,model2.)时进行筛选或查询的方法。在新数据集的第一列中。
谢谢你的帮助。
发布于 2021-11-09 17:44:44
让我们假设您的原始数据在A:E中(标头位于A1:E1)。将以下内容放置在该区域右侧的一个开放范围内:
=ArrayFormula({"model", "part", "price";QUERY(SPLIT(FLATTEN(FILTER(IF(A2:C="","##",A1:C1)&"~"&D2:D&"~"&E2:E,D2:D<>"")),"~"),"Select * WHERE NOT Col1 CONTAINS '##' ")})
更好的是,在公式中的每个范围前面添加原始数据表名称引用,并将公式放在新的空白工作表的单元格A1中。
这个公式将产生所有的头和结果。
标题首先在包含在花括号{ }中的虚拟数组中创建。在此下面(如分号所示),将放置结果。
在主网格中存在"x“的情况下,它只是将左边的标签与带有数量的部分的模型标头连接起来,在每个标题栏之间使用一个划界符(倾斜符号)。在主网格为空白的情况下,"##“的占位符被替换为左侧标签。
这些结果被FLATTEN编辑成一列。
QUERY清除"##“存在的所有行。
最后,剩下的结果是SPLIT在倾斜处形成列。
https://webapps.stackexchange.com/questions/160086
复制相似问题