エクセルの使い方
エクセルの使い方を覚えよう




マクロ集目次に戻る


エクセルVBAで自作関数の作成

[an error occurred while processing this directive]

if関数の限界

if関数は2通りの場合分けしかできない

エクセルのif関数は非常に便利ですが、大きな欠点も持っています。それは、if関数では2通りにしか場合分けかできない、という点です。

ただ、エクセルを使っている場合では3通り、4通り等の場合分けをする必要がある場合も多いのですが、このようなことをif関数を用いて行うのは結構大変です。

5通りの場合分けの例

例えば、以下のような例を考えてみましょう。

A2セルの値B2セルに表示させたい内容
在庫数量が 0  以下のとき在庫切れ
在庫数量が 1〜 5  のとき在庫僅少
在庫数量が 6〜 20  のときそこそこ在庫あり
在庫数量が 21〜100  のとき結構在庫あり
在庫数量が101〜500  のときかなり在庫あり
在庫数量が501〜   のとき在庫豊富

このときに、B2セルにどのような関数を入力しますか?

if関数を使用する場合

さて、if関数を使用する場合には、if関数の入れ子を利用して実現することになります。具体的には、B2セルには次のように入力します。


式の入力例
=if(A2<=0,"在庫切れ",if(A2<=5,"在庫僅少",if(A2<=20,"そこそこ在庫あり",if(A2<=100,"結構在庫あり",if(A2<=500,"かなり在庫あり","在庫豊富")))))

スポンサード リンク

これで、確かに正しく動くのですが、括弧の数が多くて見づらいですよね?

if関数では2通りの条件分岐しかできないため、今回のように6通りの条件分岐をさせたい場合には、if関数を(6−1)=5回使用する必要があります。

これを、ひとつのセルで処理をしようとすると、if関数の入れ子が5重に発生することになります。その結果、式の最後を見てみると、括弧が5つ続いていますよね?


ということで、今回は、if関数の入れ子を排除するために自作関数を作ってみました。ぜひ、お試し下さい。




if関数の拡張版−mif関数の説明

書式
=mif(条件1,表示内容1,条件2,表示内容2,・・・,条件n,表示内容n,表示内容n+1)
引数内容
条件1条件を入力します。
表示内容1条件1が成り立つ場合に表示すべき内容(文字列、セル、あるいは別の関数)を入力します。
条件2条件を入力します。
表示内容2条件2が成り立つ場合に表示すべき内容(文字列、セル、あるいは別の関数)を入力します。
・・・
条件n条件を入力します。
表示内容n条件nが成り立つ場合に表示すべき内容(文字列、セル、あるいは別の関数)を入力します。
表示内容n+1条件1から条件nが全て成り立たなかった場合に表示すべき内容(文字列、セル、あるいは別の関数)を入力します。



mif関数の使用例

さて、それでは、上の例を、実際にmif関数を使って書いてみましょう。

書式
=mif(A2<=0 ,"在庫なし" ,A2<=5 ,"在庫僅少" ,A2<=20 ,"そこそこ在庫あり",A2<=100 ,"結構在庫あり" ,A2<=500 ,"かなり在庫あり" ,"在庫豊富")


上の式は最初から2つずつ区切って読んでいくと、わかりやすいと思うので、式に色を付けてみます。

=mif(A2<=0 ,"在庫なし" ,A2<=5 ,"在庫僅少" ,A2<=20 ,"そこそこ在庫あり",A2<=100 ,"結構在庫あり" ,A2<=500 ,"かなり在庫あり" ,"在庫豊富")

色をつけると、A2が0以下ならば「在庫なし」と表示し、A2が5以下ならば「在庫僅少」と表示し、・・・、どの条件にもあてはまらなければ「在庫豊富」と表示する、という意味が一目瞭然になりますね。

if関数を使って表現するときと比べるとすっきりしています。




if関数の拡張版−mif関数のエクセルマクロ

mif関数のダウンロード

スポンサード リンク

mif関数の入力されたエクセルシートのダウンロードはこちらからどうぞ




mif関数の使い方

  • ダウンロードしたエクセルファイルを開きます。
  • マクロを実行してもよいかどうかを聞くウィンドウが表示されますので、「はい」をえらびます。
  • あとは、本文中の説明に従い、エクセルシート上で関数を入力してください。



免責事項

このプログラムを実行したことによる一切の損害について責任は負いかねます。ご自身の責任でご利用ください。

マクロ集目次に戻る


「経理事務のためのエクセル基礎講座(初級編)」(動画マニュアル 総収録時間162分)を無料プレゼント中です!

このマニュアルで解説していることを一通り学べば、経理事務を行う上で最低限必要となる知識が得られます。

ご登録者の方には、合わせて、公認会計士が実体験を通して身に付けたエクセルを使う技をメールにてお伝えしていきます!

↓ 登録はこちら ↓
名字
名前
メールアドレス


 





姉妹サイト:
情報処理技術者試験対策   逆ポーランド記法  

[an error occurred while processing this directive]