2

QUERYの「select」句では、列名の代わりに「year(A)」などのスカラー関数を使用できると記載されています。

また、ドキュメントの別の部分では、セルに「= function_name(...)」をコーディングすることでスクリプト関数を呼び出すことができると記載されています。

私の質問は、QUERYステートメントでスクリプト関数を「スカラー関数」として使用できるかどうかです。

可能であれば、コードを大幅に簡素化し、パフォーマンスを向上させる可能性があります。たとえば、「あるシートから別のシートにデータをコピーする」場合などです。

これが私の例です

Assume "test" is a function that issues a "return" statement that modifies
its input parameter.  

私はコードを試しました

=test(A1)

セル内で動作します。

しかし、私がこのQUERYを試してみると

=QUERY(A1:A10, "select test(A)" )

失敗します。私の推測では、「test(A)」の値は好きではありません。これを行う方法はありますか?

4

1 に答える 1

3

私の質問は、QUERYステートメントでスクリプト関数を「スカラー関数」として使用できるかどうかです。

いいえ、残念ながらできません。

行間を読んで、あなたがする必要があるのは、引数として配列を受け入れるようにスクリプトを変更し、その配列に対して必要なことを実行し、結果の配列を返すことだと思います。次に、次のようなものを呼び出すことができます。

=test(A1:A10)

または、それをQUERYステートメントの最初の引数として含めることができます。

=QUERY(test(A1:A10);"select Col1 where Col1 contains 'x'")
于 2012-06-26T03:40:11.873 に答える