2017-03-22 54 views
0

我試圖做這拉基於從包含由是由谷歌表單創建逗號分隔的多個名稱的單元格的名稱日期查詢apostophes。使用通配符和轉義在谷歌表查詢

這使用通配符將拉動所有這一切在B除了在名稱包含撇號給出一個錯誤的任何名稱的日期:

=QUERY("SOURCE", "select max(D) where (B like '%"&$A$7&"%') Label max(D) ''", 0) 

另外,很多時候,B只有一個名字,所以我可以運行以下查詢並提取我需要的日期,如果B僅具有單個名稱即使帶有撇號。

=QUERY("SOURCE", "select max(D) where (B like """&$A$7&""") Label max(D) ''", 0) 

我無法弄清楚的是如何使用通配符並在同一時間跳過撇號。

+0

請添加數據樣本和所需的結果樣本。 –

+0

[這是示例電子表格的工作鏈接](https://docs.google.com/spreadsheets/d/1K7_E15ktJKo1Q02xx3yG67mVBqecNitxiVGz8MZybiM/edit?usp=sharing) – jamiraquizzical

回答

0

也許濾波器()更容易在這種情況下使用?假設名稱用逗號(和空格)分隔,請嘗試

=if(len(G4)*len(F6), max(filter(B3:B, regexmatch(A3:A, G6), regexmatch(C3:C, F6))),) 

更改適合的範圍。 如果這沒有幫助,請分享一個示例電子表格。

+0

[我在此處添加了示例電子表格](https:// docs .google.com /電子表格/ d/1K7_E15ktJKo1Q02xx3yG67mVBqecNitxiVGz8MZybiM /編輯?USP =共享)。該查詢比我上面提到的要複雜一點,因爲有另一個類似的聲明,它試圖找到一種培訓類別。我對此並不熟悉,對所有這些功能都不熟悉,所以我會做一些閱讀。 – jamiraquizzical

+0

我更新了公式。看看是否有效? – JPV

+0

我在列L中工作。我不得不將第一個正則表達式切換到數據驗證名稱單元格。你能解釋爲什麼你有If函數嗎?如果列不完整,是否留下空白?沒有它,它似乎運行良好。 – jamiraquizzical