2009年4月8日水曜日

メモ - Googleドキュメント - スプレッドシート3

配列数式について

Google のスプレッドシートには配列数式というのがあります。

まぁ細かい部分は↓のヘルプなどを参照してもらうとして、

http://docs.google.com/support/bin/answer.py?answer=71291&ctx=sibling

大まかに言うと大体 次のような感じです。

マルチセル配列数式 : 複数の値をセルから出力し、他の複数のセルに表示する
シングルセル配列数式 : 関数に配列の値を入力する。


いまいちわからないので補足。

「マルチセル配列数式」
例えば、セル A2 に
=TRANSPOSE(A1:C1)
と入力すると
セル A3, A4 にそれぞれ、=CONTINUE(A3, 2, 1), =CONTINUE(A3, 3, 1)
という風に自動で入力され、セル A2~A4 に セル A1~A3 の内容が表示されます。

そんな感じの機能です。文字で書いてもイマイチわからないですね。
Excel とかには同様の機能はない?


「シングルセル配列数式」
これは Excel にある 配列関数と同様の機能です。
なので Excel の配列関数を調べた方が詳しいサイトもたくさんあると思うのでよいかも。

で違いとしては Excel だと 数式を入力後 Ctrl+Shift+Enter で確定し配列関数にしますが
Google スプレッドシートでは

ARRAYFORMULA() という関数で式をくくってやることでそれを実現します。

例としてはこんな感じです。

=ARRAYFORMULA(SUM(IF(A1:A10>3, A1:A10, 0)))

結果としては、セル A1~A10 のうち、3より大きいセルの合計が表示されます。

Excel で同じことをやるなら

=SUM(IF(A1:A10>3, A1:A10, 0)) と入力し、Ctrl+Shift+Enter で確定します。