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 で確定します。


2009年3月15日日曜日

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

ImprotRange() などで日付形式のエリアを取り込むと時刻が消えてしまう。
元データの表示形式を文字列に変換しておくとうまく取り込める。

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

ImportRange(), ImportData() などの関数について

[データの更新]

初期挿入時、またはデータ更新の操作をしたときにのみ
データが更新される。

公開設定には元のスプレッドシートを更新しない限り反映されない。
(ような気がする)

※これは間違いっぽいですね。
適当な間隔、タイミングでデータを更新している。
ドキュメントを編集中でないくてもファイルの取得はしようとしている。
混んでる時間帯は更新間隔が長い?

[手動更新]
ImportXXXX() を記述したセルの上で
Ctrl+R を押すことで、データが更新される。

データはヘルプに載っていない Continue() という関数で展開されるので
ほかのシートに値のみ貼り付けたい場合は注意。

この辺の情報って余りないですね。
少しぐぐっただけでは見つからない。