google-sheets - 如何使该公式适用于某个范围
问题描述
我很难将我的公式应用于一个范围。
用这个公式:
={transpose(split(rept(A2&"|",9),"|")),transpose(split(rept(B2&"|",9),"|")),transpose({C1:K1}),transpose({C2:K2}),transpose(split(rept(U2&"|",9),"|")),transpose(split(rept(V2&"|",9),"|"))}
但是对于所有范围 A2:V93 我尝试这个但是(我已经省略了标题 C1:K1)我有一个错误(结果没有自动扩展,请插入更多列):
=arrayformula({transpose(split(rept(A2:A93&"|",9),"|")),transpose(split(rept(B2:B93&"|",9),"|")),transpose({C2:K93}),transpose(split(rept(U2:U93&"|",9),"|")),transpose(split(rept(V2:93&"|",9),"|"))})
最后一个问题如何做到这一点。
我试过这个公式。但是如果我添加转置,它会将所有列转置到行,这不是我想要的原因
=arrayformula(split({{rept(A2:A93&"|",3)}},"|"))
非常感谢
编辑:链接=>床单
解决方案
我认为这个带有 Flatten 的“非透视”公式应该适合你。
=ARRAYFORMULA(QUERY(SUBSTITUTE(SPLIT(FLATTEN(MK.Clean.Data!A2:A&"|"&MK.Clean.Data!B2:B&"#|"&TO_TEXT(MK.Clean.Data!U2:U)&"#|"&MK.Clean.Data!C1:T1&"|"&MK.Clean.Data!V2:V&"|"&MK.Clean.Data!C2:T),"|",0,0),"#",""),"where Col6<>'' order by Col1",0))
我应该提到 FLATTEN() 是我最近才发现的一个未记录的函数。我相信它打算在工作表编程的后端保持“隐藏”,但如果我所做的是你所追求的,那么真的没有更有效的方法来做到这一点。
推荐阅读
- javascript - 为什么我的 JavaScript API 调用返回 400 错误?
- apache-kafka - 带有内部 RocksDB 状态存储的 Kafka 流应用程序无法获取密钥的数据
- python - BleachBit 和其他程序报告 No module named 'gtk' ModuleNotFoundError:
- java - 逐渐改变 GPS 中的圆圈颜色
- python - ImportError:无法导入名称“transpose_shape”
- python - 如何将字典数据加载到 JSON 中?
- ruby-on-rails - 如何引用 json 数据集中的特定项目?
- actions-on-google - 已批准/部署的 Google 操作
- java - Android java Exoplayer 布局添加查看聊天消息
- python - Keras:设置LSTM的initial_states时由占位符引起的InvalidArgumentError