スプレッドシート1の列Jに「yes」が含まれている場合にのみ、あるGoogleスプレッドシート(1)から別の(2)にある範囲のデータをインポートしたい。
私は次の式を使用しています:
=query(ImportRange("0AgbNxxZ5QnpGdEU2R3BLVDlhd0t6VlhCbS1kQWNYT2c","Renewals!B:C"),"select Col2, Col3, Col5 where Col10='Yes' ")
(フォーラムとYouTubeを見て、ハッシュしました!)
しかし、エラーが発生し続けます:Col10は存在しません、など。
どうすれば修正できますか?
考慮に入れる必要がある2つの事柄があります。
IMPORTRANGE
関数には、2つのパラメーター(文字列)が必要です。=QUERY( // data
IMPORTRANGE(
"0AluAYY6ZHeWYdE5XampzQVl4dVpxZ3FoVW9mUkdwQkE", // spreadsheet key
"DATA!A:C" // datarange
),
"SELECT Col1 WHERE Col3=" & C2, 0) // query
)
=QUERY( // data
IMPORTRANGE(
"0AluAYY6ZHeWYdE5XampzQVl4dVpxZ3FoVW9mUkdwQkE", // spreadsheet key
"DATA!A:C" // datarange
),
"SELECT Col1 WHERE Col2=" & "'" & B2 & "'" // query
)
サンプルファイルを作成しました。
Renewals!B:C
をRenewals!A:J
に置き換えます
問題は、QUERY()関数の2番目のパラメーターが列10への参照を行っているのに対し、IMPORTRANGE()関数の範囲で指定された列には2つしか含まれていないことです。
解決策は
1。 IMPORTRANGE()の範囲パラメーターを変更して、十分な列を含めるようにします。
2。 QUERY()関数の選択パラメーターを変更して、使用可能な列のみを参照するようにします。
質問では、列Jの値がYes
である行のみを結果に含めることが必要であると言われているため、解は1です。