関数の中に関数!関数の入れ子
- Excel 2019, 2016, 2013, 2010
- Office 365
(nested-functions.xlsx 10.5KB)
スポンサーリンク
1つのセルで1つの関数を使うのは、おなじみの一般的な関数の使い方。
でも、「平均を出しつつ四捨五入」のように、1つのセルで複数の関数を使いたいことも。
そんなときには、関数の中に関数を入れて「入れ子」にします。
その、関数の中に関数を入れて「入れ子」にすることを、「関数のネスト」とも言います。
関数の入れ子を覚えるのに、ROUND関数の中にAVERAGE関数を入れる操作は、もってこい!
これを覚えておけば、他の関数の入れ子もスムーズにできるようになります。
ですが、ROUND関数とAVERAGE関数を、単独で使うのも不安だなぁという方は、これ以上進んでも苦行でしかないので、まずは下記のページをご覧ください。
それでは、「関数の中に関数を入れる」を、具体的にスタートします!
【 目次 】
スポンサーリンク
どんな時に関数の中に関数を入れるの?
このような表で、
第1回から第3回までの平均を、小数第1位になるよう四捨五入した結果を知りたい
といった場合、
と、役割に合わせた関数を使うことになります。
「平均」を表示させるセル、さらにその平均を「四捨五入」した結果を表示させるセルがそれぞれある表なら、
D3番地の「平均」を表示させるセルには、A3からC3番地の平均を表示させるべく、
AVERAGE関数をこのように設定すれば良いことになります。
そして、D3番地で求めた「平均」を、さらに小数第1位になるよう「四捨五入」して表示させるE3番地には、
ROUND関数をこのように設定することになります。
でも、今回の場合は、そもそも「平均」を「四捨五入」した結果だけが必要なので、その途中経過である「平均」だけの状態が見えるのは、余分な印象。
だったら、2つ目の表のように、途中経過の「平均」を表示させるセルはあえて作らず、D8番地のようなセル1つで、平均を計算しつつ四捨五入した方が、見やすい表に。
「平均を計算しつつ四捨五入」という、関数を2つ使わなければいけない処理を1つのセルで行うので、関数の中に関数を入れるわけです。
関数の中に関数を入れる操作手順
それでは早速、関数の中に関数を入れる操作をしてみましょう!
ここからは、クリックする場所であったり、[OK]ボタンを押すタイミングがめちゃめちゃ大切になります!
よいですか・・・余計なことをしてはいけません・・・解説のとおりに操作するのです・・・
余計なことをしてしまったときの対処法も解説するので、それができるようになるまでは、解説のとおりに操作するのです・・・
関数の入れ子を使って結果を表示させたいD8番地を選択し、[関数の挿入]ボタンをクリックします。
関数を指定するためのダイアログボックスが表示されます。
[関数の分類]で「すべて表示」を選択すると、すべての関数が[関数名]欄にABC順で表示されます。
今回はROUND関数を使いたいので、一覧から「ROUND」をクリックで選択し、[OK]ボタンをクリックします。
なぜ最初にAVERAGE関数ではなく、ROUND関数を選んでいるかについては、後の「どっちの関数を先に選ぶか問題」の章で解説していますので、まずは操作だけマスターしてしまいましょう!
更に表示されたダイアログボックスで設定をしていきます。
まずは[数値]欄。
ここには、どの数字を四捨五入したいのか指定しますが、いきなり重要ポイント!
四捨五入したいのは、第1回から第3回までの「平均」。
でも、その「平均」自体がまだ計算されていないわけです!
というわけで、四捨五入したい数字を指定する[数値]欄に、「平均」を計算するAVERAGE関数を入れ込んで、この場で平均を計算しちゃいます!
[数値]欄に文字カーソルがあることを確認し、数式バーの左側にある関数名の[▼]をクリックすると、
最近使った関数の一覧が表示されます。
この一覧に[AVERAGE]が表示されている方は、[AVERAGE]をクリックすれば、即AVERAGE関数の設定に進めますが、今後のためにこのまま読み進めてください。
この一覧に[AVERAGE]が無い方は、[その他の関数]をクリックします。
前の手順で[その他の関数]をクリックした場合には、関数を選択するダイアログボックスが表示されます。
[関数の分類]で「すべて表示」を選択すると、すべての関数が[関数名]欄にABC順で表示されます。
関数の一覧から「AVERAGE」をクリックで選択し、[OK]ボタンをクリックします。
ダイアログボックスがAVERAGE関数のものに切り替わりました!
数式バーを見ても、ROUND関数の中にAVERAGE関数が入ったことが分かります。
AVERAGE関数で設定するのは、平均したい数字が入っているセル。
今回はA8からC8番地を平均したいので、本来はA8からC8番地を範囲選択して[数値1]欄に「A8:C8」と指定しますが、既にExcelが気を利かせて勝手に指定してくれています。
今回はExcelが勝手に指定してくれたもので良いですが、もし、勝手に指定されているものが違う場合のことも練習しておきましょう。
自分で指定し直したいときは、勝手に指定されている範囲の表記が、図のように選択されて反転していることを確認します。
反転していなければ、図のように反転させるべく、範囲の表記をドラッグでなぞって選択します。
選択して反転した状態にしておくことで、設定のし直しをしたときに、それを上書きできます。
設定のし直しをします。
実際のセルで範囲を選択し直すと、[数値1]欄に、その範囲が設定されます。
これで平均の設定は終わりですが、ここで再び重要ポイント!
平均を出すAVERAGE関数の設定が終わったので、[OK]ボタンを押してしまいがちですが、[OK]ボタンを押していいのは、使用する関数すべての設定が終わったとき。
この時点でAVERAGE関数の設定は終わっているけれど、ROUND関数の設定はまだ全て終わっていないので、[OK]ボタンは押しちゃダメなんです!
途中で[OK]ボタンを押しちゃったら
まだ、他の関数の設定が残っているのに[OK]ボタンを押してしまったときのために、対処法も覚えておきましょう!
誤って[OK]ボタンを押してしまうと、
【Excel 2019・2016 / Office365】
このようなメッセージが表示されるので、一旦[OK]ボタンを押します。
【Excel 2013・2010】
このようなメッセージが表示されるので、一旦[OK]ボタンを押します。
数式バーに文字カーソルが入るので、そのままの状態で[関数の挿入]ボタンをクリックすると、
元の関数のダイアログボックスが表示されます。
ちなみに、今回表示されたエラーメッセージは、
Excel 2019・2016 / Office365ではこれ、
Excel 2013・2010ではこれでしたが、
関数によっては、
Excel 2019・2016・2013 / Office365ではこのような、
Excel 2010ではこのような、エラーメッセージが出る場合もあります。
でも、対処法は同じなので、この章でご紹介している対処ができれば解決します。
それでは続きの操作を見ていきましょう。
スポンサーリンク
設定したい関数のダイアログボックスに切り替える
さて、関数の中に関数を入れているときには、今、どの関数の操作をしているのか、常に意識している必要があります。
今、どの関数の設定をしているのかは、ダイアログボックス左上に表示されている関数名で判断します。
「AVERAGE」とあれば、AVERAGE関数の設定用のダイアログボックスになっている、ということです。
もし、ROUND関数のダイアログボックスに切り替えたいのなら、数式バーに表示されている数式のうち、「ROUND」の文字のところでクリックすると、ダイアログボックスがROUND関数用のものに切り替わります!
もちろん、数式の「AVERAGE」の文字のところでクリックすれば、AVERAGE関数用のダイアログボックスに切り替わります!
現在、AVERAGE関数に必要な指定はすべて終わっているわけですから、再びROUND関数のダイアログボックスに切り替えましょう。
数式バーに表示されている数式のうち、「ROUND」の文字のところでクリックすると、ROUND関数用のダイアログボックスに切り替わりました。
どの数字を四捨五入するかを指定する[数値]欄には、ここまでの操作で「A8からC8番地までの平均」と指定できたわけですから、
設定が残っているのは[桁数]。
[桁数]欄でクリックして文字カーソルを入れ、どの桁数にしたいのかを指定します。
さぁ、これでROUND関数側の設定も完了。
AVERAGE関数側も、ROUND関数側も、すべての設定が終わったので、ここで初めて[OK]ボタンを押せるのですが、「あれ?全部設定終わったっけ?」と不安に思うことだってあると思うんです。
そんな時には、[OK]ボタンを押す前に、
また、数式の「AVERAGE」の文字のところでクリックしてダイアログボックスを切り替え、「あぁ、設定終わってるな」と確認し、その上で[OK]ボタンを押してもいいですし、
「念のため、もう一度ROUND関数を確認しておこう」と、数式の「ROUND」の文字のところでクリックしてダイアログボックスを切り替えてもいいわけです。
双方気が済むまで確認してから[OK]ボタンを押します。
使用している関数の設定が、すべて終わってさえいれば、ダイアログボックスはどちらの関数が表示されている状態で[OK]ボタンを押しても問題ありません。
ROUND関数の中にAVERAGE関数を入れることができました!
数式バーを見ても、ROUND関数の中にAVERAGE関数が入っていることが分かります!
この数式の意味は、
「A8からC8の平均を、小数第1位になるように四捨五入してね」
です。
スポンサーリンク
切り替える必要が無いパターンもある
今回ご紹介したパターンは、ROUND関数の[数値]欄にAVERAGE関数を入れたので、AVERAGE関数を設定し終わった後、まだ設定が終わっていないROUND関数の[桁数]を指定するために、ROUND関数のダイアログボックスに戻る必要がありました。
でもですよ、この[桁数]を指定するためにダイアログボックスを切り替えてROUND関数の設定に戻ってくるのなら、[数値]欄にAVERAGE関数を入れる前に、あらかじめ[桁数]を指定してしまえば、後々ダイアログボックスを切り替える必要がなくなってきます。
早速操作してみましょう!
練習用データを操作しながらご覧いただいている方は、画面左下のシート見出しで、Sheet2に切り替えます。
関数の入れ子を使って結果を表示させたいD3番地を選択し、[関数の挿入]ボタンをクリックします。
「ROUND」を選択し、[OK]ボタンをクリックします。
先ほどROUND関数を使ったばかりなので、[関数の分類]は「最近使った関数」にすると、選びやすいです。
ROUND関数のダイアログボックスが表示されたら、最初にROUND関数の[桁数]を設定してしまいます。
そして、[数値]欄でクリックして文字カーソルを入れたら、ここにAVERAGE関数を入れていきましょう!
数式バーの左側にある関数名の[▼]をクリックします。
最近使った関数の一覧が表示されるので、[AVERAGE]をクリックします。
ダイアログボックスがAVERAGE関数のものに切り替わりました!
数式バーを見ても、ROUND関数の中にAVERAGE関数が入ったことが分かります。
AVERAGE関数で設定するのは、平均したい数字が入っているセル。
今回はA3からC3番地を平均したいので、本来はA3からC3番地を範囲選択して[数値1]欄に「A3:C3」と指定しますが、既にExcelが気を利かせて勝手に指定してくれています。
というわけで、AVERAGE関数の設定はこれでいいことになります。
この操作方法の場合は、AVERAGE関数の設定が終わった時点で、ROUND関数の[数値]も[桁数]も設定が終わっていることになるので、ROUND関数のダイアログボックスに切り替える必要はありません。
双方の関数に必要な設定はすべて終わっているので、そのまま[OK]ボタンを押していいです。
もちろん、心配であれば、本当にすべての設定が終わっているか確認することはいいことなので、数式の「ROUND」の文字のところでクリックして、ROUND関数のダイアログボックスに切り替え、「あぁ、ちゃんとすべての設定が終わっているなぁ」と確認してから[OK]ボタンを押せば安心。
親の関数のダイアログボックスに切り替える必要がないときは、速攻[OK]ボタンを押してもいいし、切り替えて確認して安心してから[OK]ボタンを押してもいい、ということなんです。
もちろん、親の関数の設定がすべて終わっていなければ、必ずダイアログボックスを切り替えて、親の関数のダイアログボックスに戻ってくる必要はありますヨ。
というわけで、IF関数の引数[値が偽の場合]の中に、IF関数を入れ込んでいく、「IF関数で複数条件のどれに合うかで3パターン以上に振り分け[全Ver.可]」でご紹介している例なら、子のIF関数の設定が終わった時点で、親のIF関数の設定は終わっているので、ダイアログボックスを切り替えて親の設定に戻ることなく[OK]ボタンを押しています。
どっちの関数を先に選ぶか問題
さて、今回はROUND関数の中にAVERAGE関数を入れ込みましたが、何でROUND関数を先に選んだの?AVERAGE関数を先に選んではいけないの?と疑問に思った方もいらっしゃるでしょう。
どちらの関数を最初に選ぶのか、それはこの考え方を覚えておけばOK。
結果として表示させたい関数を先に選ぶ
今回の例では、結果として表示させたいのは、「ただの平均」ではなく、それを「四捨五入した結果」です。
なので、四捨五入を処理するROUND関数を先に選んだ、というわけです。
関数の中に関数を入れる まとめ
- 結果として表示させたい関数を先に選ぶ
- 設定中は、数式の関数名をクリックすると、ダイアログボックスを切り替えられる
- 使用している全ての関数の設定を終えるまで、ダイアログボックスの[OK]ボタンは押さない。
スポンサーリンク