【エクセル】配列数式を使って複数の計算を一度に実行する
おはようございます。こんにちは。いたをです。
本格的に雨の季節がやってきましたね。雨に打たれた紫陽花がとかくモノトーンになりがちな景色の中に鮮やかです。
タイトルにもある「配列数式」コレってなんでしょうね?
複数の計算をまとめて実行したいって?
例えば下のような集計表を作成したとき、総合計を求めるために、通常だったら商品ごとに「単価✕数量」の結果を「小計(金額)」として求めた後に合計する必要があります。
でも! 考えるわけです。
いちいち小計を求めなくても、一度に合計金額を求めることは出来ないのでしょうか?
下のように数式やシートが簡潔にできますしね。
それができるんです!
それでは、D10セルに次のような数式を入力してみましょう。
=SUM(単価のセル範囲 * 数量のセル範囲)
具体的には、
なお二つのセル範囲は大きさが一致している必要がありますので注意が必要です。
この状態で「Ctrl」+「Shift」+「Enter」を押します。
ここでも注意が必要です。いつもの「Enter」キーではありませんよ。
数式バーを見てください。
数式が{}(大かっこ)で囲まれています。
この数式を確定する操作(単価のセル範囲 と 数量のセル範囲をかけ合わせることを配列の指定、また「Ctrl」+「Shift」+「Enter」で決定することを配列数式の入力といいます。配列とは「列」と「行」からなるいくつかのデータのことです。
今回の場合は、「単価」と「個数」の列が配列として扱われ、それぞれの要素が順に計算される(①最初に配列の先頭の要素の計算(C2*D2)を実行 し、②次に2番目の要素の計算(C3*D3)を実行する...」という具合にすべての要素の計算をして、③その結果の配列をSUM関数で合計します)ので、いちいち小計を求めなくても一度に総合計が求められるんです。
配列数式を入力(「Ctrl」+「Shift」+「Enter」で決定)すると数式が自動的に「{ }」で囲まれて表示されます。自分で「{ }」を入力してはいけませんので注意してください。
不要なセルを作らずに合計金額を出せるということで、数式やシートが簡潔にできますよね。
デメリットは「あまり知られていないこと」
配列数式は便利な割に知られていない機能なので、「Ctrl」+「Shift」+「Enter」を押す必要があるという情報が見逃され、シート作成者以外の人が見ると何をしているのか分からずに、結果として数式を壊してしまう恐れがあります。
他にも二つのセル範囲は大きさが一致している必要があったり、配列数式の範囲が変わるような列や行の追加・削除が出来ない、など配列数式を使うにはいくつかの制約があります。
実は最新のエクセル(2019、Office365以降)では、配列数式の使いにくさを解消し、更に便利にしたスピル(動的配列数式)というものが登場しています。
マイクロソフトも配列数式からスピルへ移行の方針を出していますので、今後登場してくる場面が増えてくると思われます。
これから配列関数を勉強しようと思っている方は、頭の中に入れておくといいでしょう。
まとめ
いかがでしたでしょうか。
今日は「配列数式を使って複数の計算を一度に実行する」テクニックをご紹介しました。
最後の方にちょっとだけ登場しましたスピル(動的配列数式)。
実は、今日の記事。このスピルを取り上げる前に、今まではこんな風に計算していたんだよ~というご紹介の記事として書いた意図もあります。
エクセルは進化しています。
強力なアイテムが搭載されて、実務の場面でいろいろなことが簡単にできることが期待されています。
今後の記事では、新しいエクセルのことについても少しずつ触れていきたいと思っています。
それではまた。
***