Excelセミナーレポート


Excelセミナーレポート

2021年11月6日「Excelを仕事で使いこなす100の極意マスター講座」開催レポート

こんにちは、セミナーサブ講師の佐藤です。
11月に入り、冬の訪れを感じる季節になりましたね。

 

「たった1日で即戦力になるExcelマスター講座」午後の講義では、
関数をネスト(入れ子)にして少し複雑な計算をする課題があります。
今日は関数のネストが難しいと感想をいただいたので、解読方法をご紹介します。

=VLOOKUP($I12,$B:$G,MATCH(J$11,$B$11:$G$11,0),0)
こんなのとか

=DATE(LEFT(J9,4),MID(J9,5,2),RIGHT(J9,2))
こんなのとか。

関数の中に、さらに関数が入り込んでいますね。
この状態がネスト(入れ子)です。
これは講義で取り上げている関数ですが、
実務でもこうした長い関数を見かけることは多いのではないでしょうか。


「難しくしないで、一発でできる関数はないの?」
「どんな動作をするのか分からない」
「壊したら直せなくなってしまいそうで怖い」
「出来上がった関数の意味は分かるけど、自分でやるのは難しそう」

Excel初心者の方は、ネスト状態の数式を見ると、
こんな風に尻込みしてしまう方も多いのではないでしょうか。

 

そんな時は作業セル・作業列・作業行が便利です!

 

たとえばこの関数なら、
=VLOOKUP($I12,$B:$G,MATCH(J$11,$B$11:$G$11,0),0)



ネストになっているMATCH関数を、ひとまず別のセルに移してみましょう。
この別のセルこそが作業列になります。
作業列のMATCH関数で、転記先の項目セルは元表タイトルの何列目にあるかを求めています。

もとのVLOOKUP関数では、第三引数はセルを参照するだけに変えてみました。


=VLOOKUP($I12,$B:$G,MATCH(J$11,$B$11:$G$11,0),0)
この関数を、
=VLOOKUP($I12,$B:$G,J$10,$B$11:$G$11,0)
=MATCH(J$11,$B$11:$G$11,0)
この2つに分解できました。
この場合は、関数で転記先項目が元表タイトル行の何列目にあるかをMATCH関数で求め、
その値をもとにVLOOKUPで引用しているということだったのです。
MATCH関数を入力したのが作業セルになります。
MATCH関数を横に展開すれば作業行になりますね!

 

ネストだらけの関数も、同じように作業セルなどに分解していくと
とても分かりやすくなります。
作表でややこしくなりそうな時は、あらかじめ作業列を仕込んでおくのもいいでしょう。

午前中の演習も作業列をたくさん使っていますね。
これを1つの関数でやると思うと……こんなになります!!!!!

=CONCAT(VLOOKUP(C2,master!A:C,3,0),VLOOKUP(B2,master!E:F,2,0),LEFT(A2,4),VLOOKUP(VALUE(RIGHT(A2,2)),master!H:I,2,0))
大した動作をしていないのにまるで呪文!!!!!!
絶対やっちゃいけない例ですね!!!!!!

関数のネストは、64個が上限ですが、そんな長たらしい数式はおススメしません!
Microsoftの公式ヘルプでも「おススメしません」と書いてあります!

目安として、数式の長さが数式バーの半分に収まるくらいまでが読みやすくスマートだと思います。

受講者様特典の無期限サポートでは、呪文のような関数の解読のお手伝いもしています。
引き継いだExcelファイルが呪文関数だらけでお困りの方は是非ご利用ください!

*  *  *  *  *


すごい改善社長の吉田Twitter、オンライン版公式TwitterにてExcelに関する情報を配信していきますので、
よろしければフォローお願いいたします。

 

2つのセミナー、それぞれお申込み受付中です。

Excelを基礎から体系的に学びたい方はこちら↓↓↓

とにかく作業を自動化!1クリックで仕事を終わらせたい方はこちら↓↓↓

法人向けExcelオンライン研修

利用人数無制限・個別サポート付きのExcelオンライン研修です。

すごい改善のExcelセミナー

1日完結・実務直結・無期限サポートつきのExcelセミナー開催中

累計40万部突破のExcel教科書

Excel関数Tシャツ等のご購入はこちら