どうもどうも( *´艸`)ゲーマー
システムエンジニア2号です🎮🎮🎮
個人目標にブログ更新を入れてしまったので
出現率マシマシでございます 🙄🙄🙄
マシマシというと二郎系ですね!
野菜マシマシだー!
私のGoogleフォトでラーメンと検索すると
二郎系っぽい写真は…
2012年8月20日が最後ですね!
9年も劣化した胃袋では…
完食できる気がしないですね(笑)
無限に食べられた頃が懐かしい…!
さて本題です!
Googleフォトの話をしてましたが
全く関係ありません!
ある意味マシマシは
合っているかもしれませんが( *´艸`)
本日紹介するのは
Googleスプレッドシートの
【ARRAYFORMULA関数】になります
雑に紹介に紹介すると数式マシマシ!!
詳しくは次項で!!
ARRAYFORMULA関数とは
「配列数式から返された値を複数行または複数列に表示したり、非配列関数で配列を使用したりすることができます。」
要約すると
・別の関数や数式を
・指定した範囲に適用させる関数です
まだわかりづらいので簡単な例を挙げます
D列で次のような計算をしたとしましょう
= A1 + B1 + C1
= A2 + B2 + C2
= A3 + B3 + C3 ……以下略
これが10行ならコピペでもいいですが
もし10,000行あったら相当大変です……
また追加でデータが入るたびに
式も伸ばさないといけません……
こういう時は
ARRAYFORMULA を使いましょう!
「D1セルに」
=ARRAYFORMULA( A1:A + B1:B + C1:C ) です
大事なことなので繰り返します
「D1セルに」
=ARRAYFORMULA( A1:A + B1:B + C1:C )
たった1セルの記入で十分です
D2セル以降は記入しなくて良いですし
データが増えても勝手に計算されます
しかもこの関数
10,000回計算式入れるよりも
処理が軽いのです…!
便利さに軽さが合わさり最強に見える
書き方を教えて!
ちょっと複雑になりがちなので
不慣れなうちは普通に数式を作り、
後から型にはめる方が簡単です
【手順1】
一度普通に数式を組み立てます
[ = B3 * C3 ]
【手順2】
頭にARRAYFORMULAを付け、
以降を()で囲みます
[ = ARRAYFORMULA ( B3 * C3 ) ]
※小ネタで Ctrl + Shift + Enter がショートカットです
【手順3】
()の中を反映させたい範囲に変えます
例えば3行目 ~ 32行目にする場合だと
[ = ARRAYFORMULA ( B3:B32 * C3*C32 ) ]
3行目 ~ 最後までにする場合は
[ = ARRAYFORMULA ( B3:B * C3*C ) ]
上の例でサンプルを用意しましたので
良ければご覧ください
ARRAYFORMULA で 数式マシマシだー!
ARRAYFORMULAの注意点は?
相当便利な関数ですが
いくつか注意点もあります
【注意点1】元が配列関数だと使えない
例えば AVERAGE( A1 : C1 ) を
ARRAYFORMULA( AVERAGE( A1:A : C1:C ) ) と書いても思うように動きません
こういう場合は
ARRAYFORMULA( ( A1:A + B1:B + C1:C ) / 3 )
と書き換えましょう!
上手く書き換えて認識させるべし
【 注意点2】ソートする時は注意!
ソートする
→ 関数の場所が変わる
→ 意図せぬ値になる
このパターンがたまにあります
ソートをするシートでは範囲外に書きましょう!
(ラベルの行に関数置くのがベターです!)
サンプルファイルのF列がヒント!
【 注意点3】範囲内に手入力しない!
関数でA1~A5までデータが入る時に
A2にデータを入力してしまうと
関数はエラーを吐きます!
サンプルファイルのG列のエラーです!
【より便利に】
IF や IFERROR と併用して
空欄やエラーの場合の表示を整えると
さらに便利ですね!
ちょっと複雑ですが
使いこなすと非常に便利な関数です!
入力のショートカットがあるくらいなので
Google も力を入れている関数だと思いますよ!
ぜひいつものシートに組み込みましょう!
ご不明な点、詳しく知りたい方は
お問い合わせお待ちしております(/・ω・)/