我的原型在這里: 公式放置在單元格 B2 中的作業表
我有這個查詢作業,但如果可能的話,陣列不會優化“where”子句。
=IFERROR(QUERY(F:N, "SELECT F WHERE G CONTAINS '"&A2&"' OR H CONTAINS '"&A2&"' OR I CONTAINS '"&A2&"' OR J CONTAINS '"&A2&"' OR K CONTAINS '"&A2&"' OR L CONTAINS '"&A2&"' OR M CONTAINS '"&A2&"' OR N CONTAINS '"&A2&"'"),"")
是否有一個公式可以通過陣列洗掉所有 OR 子句?
我試過沒有成功:
SELECT ArrayFormula(textjoin(", ",TRUE,("Col"&row(indirect("A"&F1&":A"&O1)))))
uj5u.com熱心網友回復:
而不是使用OR類似:
=IFERROR(QUERY(F:N,
"SELECT F
WHERE G CONTAINS '"&A2&"'
OR H CONTAINS '"&A2&"'
OR I CONTAINS '"&A2&"'
OR J CONTAINS '"&A2&"'
OR K CONTAINS '"&A2&"'
OR L CONTAINS '"&A2&"'
OR M CONTAINS '"&A2&"'
OR N CONTAINS '"&A2&"'"))
你可以做:
=IFERROR(QUERY({F:N, FLATTEN(QUERY(TRANSPOSE(F:N),,9^9))},
"select Col1
where Col10 contains '"&A2&"'", ))
uj5u.com熱心網友回復:
如果情況很簡單,它不一定更有效,但如果它是復雜或長代碼,您可以設計類似于某些情況的標志,并將所需結果的陣列與您實際獲得的陣列進行比較。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/493961.html
上一篇:從谷歌表格中的單元格獲取特定字串
下一篇:谷歌作業表自動填充行腳本
