エクセル入門
関数のネスト

Excelの初心者向け入門解説
最終更新日:2013-09-04

数式.関数のネスト


エクセル入門 > 数式 > 関数のネスト


関数の引数に、さらに関数を入れる事をネスト(入れ子)と言います。


関数のネストは、

Excel2003までは、最大7

Excel2007以降では、最大64

となっています。

しかし、複雑なネストは関数を難解なものとしてしまい、後々の変更や、他人が見た時に解らなくなってしまいます。

ネストは概ね3段階までとして、それ以上になる場合は、個々の要素となっている関数を別のセルに入れて、そのセルを参照するようにします。

(このようなセルの事を作業セルとか計算セルと呼んだりします)


使用例

A1セルからA10セルに数値が入っているとして、

その合計が、800以上なら"A"、600以上なら"B"、それ以下なら"C"

とする場合、

=IF(SUM(A1:A10)>=800,"A",IF(SUM(A1:A10)>=600,"B","C"))


考え方として、

=IF(800以上,"A",800未満なら"B"か"C")

=IF(800以上,"A",IF(600以上,"B","C"))

このように外側の関数の組み立てを考えてから、

内側の関数である、

800以上は、SUM(A1:A10)>=800

600以上は、SUM(A1:A10)>=600

これを組み込んで完成させます。

ここで、IF(600以上,"B","C")の時、

800以上も含まれてしまうのではないかと考えがちですが、

=IF(800以上,"A",この部分は800未満の時にしか処理されない)

つまり、800以上の偽の部分では、800未満が前提となっている為、考慮する必要がありません。


ワークシート関数一覧
Excelワークシート関数の一覧と解説です詳細解説ページへのリンクもあります。Excel2007までの関数です。2010以降追加の関数一覧 ワークシート関数の一覧(2010以降) 引数関数構文については Excelシートの複雑な計算式を解析するVBAの関数構文 文字列関数…27 日付と時刻の関数…21 情報関数…17 論理関数…7 検索/行列関数…18 …




同じテーマ「エクセル入門」の記事

絶対参照と相対参照

数式において、セル参照を使用すると、C5 のように、列記号の後ろに行番号が付いた形になります。ただし、これは、C5セル(C列5行目のセル)に特定しているわけではありません。あくまで、数式を入力したセル位置からの位置関係を表しています。
SUM関数(引数を合計)
引数に指定された数値を全て合計します。引数には、セル参照(単一セル、セル範囲)、数値定数、関数が指定できます。書式 SUM(数値1[,数値2,…]) ※[]で囲まれている部分は省略可能です。使用例 =SUM(A1:A5)…A1セルからA5セルを合計します。
IF関数(条件を満たしているかどうかを判定)
指定された条件を判定し、条件が満たされている場合(正しい場合、真の場合、TRUEの場合)と、条件が満たされていない場合(正しくない場合、偽の場合、FALSEの場合)、それぞれ別の値を返します。書式 IF(論理式,真の場合,偽の場合) 論理式 真または偽のどちらかに評価できる式を指定します。
関数のネスト
SUMIF関数(検索条件に一致するセルの合計)
範囲の中で、指定した条件を満たすセルの値を合計します。または、範囲の中で、指定した条件を満たすセルに対応する合計範囲のセルの値を合計します。書式 SUMIF(範囲,検索条件[,合計範囲]) ※[]で囲まれている部分は省略可能です。
COUNT関数(セル値が数値の個数)
セル範囲に含まれる、数値が入っているのセルの個数を数えます。引数には、セル参照、またはセル範囲が指定できます。書式 COUNT(値1[,値2,…]) ※[]で囲まれている部分は省略可能です。数値の個数のみ数えます。
COUNTA関数(空白以外のセルの個数)
セル範囲に含まれる、空白ではないセルの個数を数えます。引数には、セル参照、またはセル範囲が指定できます。書式 COUNTA(値1[,値2,…]) ※[]で囲まれている部分は省略可能です。エラー値や空の文字列("")を含め、すべての種類のデータを含むセルが計算の対象となります。
COUNTIF関数(検索条件に一致するセルの個数)
範囲の中で、指定した条件を満たすセルの個数を数えます。書式 COUNTIF(範囲,検索条件) ※[]で囲まれている部分は省略可能です。, 範囲 条件によって評価するセル範囲を指定します。検索条件 計算の対象となるセルを定義する条件を、数値、式、セル範囲、文字列、または関数で指定します。
VLOOKUP関数(範囲の左端列で値検索し対応セル値)
検索値で、セル範囲の最初の列を検索し、その範囲の同じ行にある任意のセルから値を返します。Vは縦方向(vertical)の意味です、つまり縦方向の表に対して使用します。書式 =VLOOKUP(検索値,範囲,列番号,検索方法) 検索値 表または範囲の左端の列で検索する値を指定します。
HLOOKUP関数(範囲の上端行で値検索し対応セル値)
検索値で、セル範囲の最初の行を検索し、その範囲の同じ列にある任意のセルから値を返します。Vは横方向(horizontal)の意味です、つまり横方向の表に対して使用します。書式 =HLOOKUP(検索値,範囲,行番号,検索方法) 検索値 表または範囲の上端の行で検索する値を指定します。
AND関数(すべての引数がTRUEのときにTRUE)
すべての引数がTRUE(真)と評価された場合はTRUE(真)を返します。引数のうち一つでもFALSE(偽)と評価された場合はFALSE(偽)を返します。書式 AND(論理式1[,論理式2],...) 論理式1 TRUEまたはFALSEに評価できるテスト対象の1つ目の条件。


新着記事NEW ・・・新着記事一覧を見る

Byte配列と文字コード関数について|VBA技術解説(8月20日)
PowerQueryの強力な機能をVBAから利用する方法|VBA技術解説(8月4日)
練習問題31(セル結合を解除して値を埋める)|VBA練習問題(7月30日)
練習問題30(マトリックス→リスト形式)|VBA練習問題(7月25日)
Applicationを省略できるApplicationのメソッド・プロパティ一覧|VBA技術解説(7月22日)
コレクション(Collection)の並べ替え(Sort)に対応するクラス|VBA技術解説(7月20日)
CSVの読み込み方法(ジャグ配列)|VBAサンプル集(7月15日)
その他のExcel機能(グループ化、重複の削除、オートフィル等)|VBA入門(7月14日)
オートフィルタ退避回復クラスを複数シート対応させるVBAクラス|VBA技術解説(7月6日)
オートフィルタを退避回復するVBAクラス|VBA技術解説(7月6日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.変数とデータ型(Dim)|ExcelマクロVBA入門
6.繰り返し処理(For Next)|ExcelマクロVBA入門
7.マクロって何?VBAって何?|ExcelマクロVBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.ひらがな⇔カタカナの変換|エクセル基本操作
10.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説



  • >
  • >
  • >
  • 関数のネスト

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。




    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
    本文下部へ