質問: ### 前提・実現したいこと query関数で読み込んだデータを GASを使用して条件による色分けを行おうとしています。 ### 発生している問題・エラーメッセージ query関数でデータの読み込みはうまくいきました。 selectで読み込むデータを選択し、where likeで条件による抽出も実装しました。 条件 なし E F a あ b い c あ d あ 条件 あ E F a あ c あ d あ GAS上でgetValue()などで対象データを読み込む際に、 where likeにて条件を設定していない状態であれば問題なく値を取得できましたが、条件を絞った場合にデータが取得できません。 sheet.getRange('A1').setValue(sheet.getRange('F1').getValue()); F1のデータをA1に書き込む、処理でなんどか試しましたが F1にあるデータが条件で絞っていない場合はきちんとA1にデータが表示され、条件で絞ると空白が書き込まれてしまいます。 どちらも見た目上は同じ”あ”です。 条件なし 条件ありでソート A1 あ A1 空白 どちらも F1セルは"あ" query関数でwhere likeを使った際にデータ取得ができなくなるのは仕様でしょうか? また、解決方法などあればご教授いただければ幸いです。 2017/02/02 追記 問題はクエリー関数の部分にあるようです。 =QUERY(※※※!A:CU,"select BR,B,D,AF,AG,AI,BP,AE,K,AU,AT,AZ,BA,BB,BC,BD,BE,BF,BH,BK,AD,Y,CT,AM,AN,M where B like '%"&B10&"%'"&" and K like '%"&C10&"%'"&" and AE like '%"&D10&"%'"&" and AG like '%"&E10&"%'",-1) 別シートのB列を B10セルで条件付けで読み込んでいますが、 条件を入れると、画面上ではソートされいったんデータが入りますが、 F5で更新すると1列目を残してデータが消えます。 内部的にきちんと動いてないってことですかね。 さっぱりです・・・。
回答: 以下で実行したらA1に"あ"が入りましたが、なんか質問と違いますか? Spreadsheetの内容 | | A | B | C | D | | --- | --- | --- | --- | --- | | 1 | | a | あ | =query(importrange("********************ʺ,ʺB:Cʺ),ʺselect Col1, Col2 WHERE Col2 = 'あ'ʺ) | | 2 | | b | い | | | 3 | | c | あ | | | 4 | | d | あ | | ``` var gasheet = "*********************"; function myFunction() { var ss = SpreadsheetApp.openById(gasheet); var sheet = ss.getSheetByName("シート1"); var test = sheet.getRange('E1').getValue(); sheet.getRange('A1').setValue(test); } ``` Spreadsheetの結果 | | A | B | C | D | E | | --- | --- | --- | --- | --- | --- | | 1 | あ | a | あ | a | あ | | 2 | | b | い | c | あ | | 3 | | c | あ | d | あ | | 4 | | d | あ | | | 追記: 数字で範囲指定したい場合は以下 =query(importrange(ʺ1itlwbKjcBA0rZ2JiBMRq-BxLH4TvCIuF-ragvO4C0RAʺ,ʺB:Cʺ),ʺselect Col1, Col2 WHERE (Col2<2017010030) OR (Col2>=2017010040)ʺ)