データ処理で使用される関数


データ処理で使用される関数

沢山のExcel関数がありますが、その中でも特にデータ処理で使用する関数を紹介します.
  1. 数学/三角関数
    1. SUM / SUMIF / SUMIFS
      指定範囲の値を(条件に合った場合)積算する関数
      一般形:
      = SUM(範囲) … 指定された[範囲]の値を積算する
      = SUMIF(範囲, 検索条件, 合計範囲) … [検索条件]に合致した[範囲]の行と同じ行にある[合計範囲]の値を積算する
      = SUMIFS(合計対象範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, …, 条件範囲n, 条件n) … 全ての条件に合致した条件範囲の行と同じ行にある[合計対象範囲]の値を積算する
      
      使用例:
      = SUM(A1:A10) … A1〜A10セルの値の合計を求める
      = SUMIF(A1:A10, "<>0", B1:B10) … A1〜A10セルで値が0でない行のB1〜B10の値の合計を求める
      = SUMIFS(C1:C10, A1:A10, "<>0", B1:B10, "B>0") … A1〜A10セルで値が0でなく、B1〜B10セルで値が正の行のC1〜C10の値の合計を求める
      
    2. ROUNDDOUN / ROUNDUP / ROUND
      値を指定された桁数で切り下げ/切り上げ/四捨五入する
      一般形:
      = ROUNDDOUN(値, 桁数) … 指定された[値]の小数点以下第[桁数+1]位の値を切り捨てる
      = ROUNDUP(値, 桁数) … 指定された[値]の小数点以下第[桁数+1]位の値を切り上げる
      = ROUND(値, 桁数) … 指定された[値]の小数点以下第[桁数+1]位の値を四捨五入する
      
      使用例:
      = ROUNDDOUN(5.98, 1) … 5.98の小数点第2位以下を切り捨てる
      = ROUNDUP(A1, 0) … セルA1の値の小数点以下を切り捨てる
      = ROUND(A1, -2) … セルA1の値の10の位を四捨五入する
      
      ※桁数が負の値の時は、整数第[桁数]位で切り捨て/切り上げ/四捨五入を行います.
    3. INT
      値の小数点以下を切り捨てる.
      一般形:
      = INT(値) … 指定された[値]の小数点以下を切り捨てる
      
      使用例:
      = INT(A1) … セルA1の値の小数点以下を切り捨てる
      
                              
      ※ROUNDDOUN関数で指定桁数を0とした時と同様の結果になります.
    4. QUOTIENT / MOD
      数値を除数で割ったときの整数商/余りを求める
      一般形:
      = QUOTIENT(値, 除数) … 指定された[値]を[除数]で割ったときの整数商を求める
      = MOD(値, 除数) … 指定された[値]を[除数]で割ったときの余りを求める
      
      使用例:
      = QUOTIENT(7, 2) … 7を2で割ったときの整数商を求める
      = MOD(A1, B1) … セルA1の値をセルB1の値で割ったときの余りを求める
      
    5. ABS
      指定された数値の絶対値を求める
      一般形:
      = ABS(値) … 指定された[値]の絶対値を求める
      
      使用例:
      = ABS(A1) … セルA1の値の絶対値を求める
      
    6. SIGH
      指定された数値の符号を調べます
      一般形:
      = SIGH(値) … 指定された[値]の符号を調べる
      
      使用例:
      = SIGH(A1) … セルA1の値の符号を調べます
      
      ※戻り値は正なら1,負なら-1,0なら0が返ります.
    7. POWER
      指定された数値を指数乗した値を求める
      一般形:
      = POWER(値, 指数) … 指定された[値]の[指数]乗した値を求める
      
      使用例:
      = POWER(A1, -2) … セルA1の値の-2乗した値を求める
      
      ※通常の式で[値]^[指数]としても同様の結果となります.
    8. SQRT
      指定された数値の平方根を求める
      一般形:
      = SQRT(値) … 指定された[値]の平方根を求める
      
      使用例:
      = SQRT(A1) … セルA1の値の平方根を求める
      
      ※POWER関数を使って[指数]を0.5とするか,通常の式で[値]^0.5としても同様の結果となります.
    9. EXP
      自然対数の底eのべき乗を求める
      一般形:
      = EXP(指数) … 自然対数の底eを[指数]乗した値を求める
      
      使用例:
      = EXP(A1) … 自然対数の底eをセルA1の値乗する
      
    10. LOG / LOG10 / LN
      指定された数値について指定された底を底とする対数を求める
      一般形:
      = LOG(値, 底) … 指定された[値]の指定された[底]を底とする対数を求める
      = LOG10(値) … 指定された[値]の常用対数を求める
      = LN(値) … 指定された[値]の自然対数を求める
      
      使用例:
      = LOG(A1, 2) … 2を底とするセルA1の値を求める
      = LOG10(3) … 3の常用対数を求める
      = LN(A1) … セルA1の値の自然対数を求める
      
    11. PI / SIN / COS / TAN / RADIANS
      三角関数の値を求める
      一般形:
      = PI() … 円周率を求めます(引数はありません)
      = RADIANS(角度) … 指定された[角度]をラジアン単位に変換する
      = SIN(値) … 指定された[値]の正弦を求める
      = COS(値) … 指定された[値]の余弦を求める
      = TAN(値) … 指定された[値]の正接を求める
      
      使用例:
      = PI() … 円周率を求める
      = RADIANS(A1) … セルA1の値をラジアン単位に変換する
      = SIN(2) … 2の正弦を求める
      = COS(2*PI()) … 2πの余弦を求める
      = TAN(RADIANS(A1)) … セルA1の値をラジアン単位に変換して正接を求める
      
      ※SIN, COS, TAN関数に角度で引数を与える時は、角度をラジアン単位に変換して与えること.
  2. 統計関数
    1. COUNT / COUNTA / COUNTBLANK / COUNTIF / COUNTIFS
      指定範囲にあるセルのデータで、条件に合ったものの個数を求める
      一般形:
      = COUNT(範囲) … [範囲]にあるデータの個数を求める(数値や日付,時刻のみで文字,文字列は含まない)
      = COUNTA(範囲) … [範囲]にあるデータの個数を求める(空欄以外)
      = COUNTBLANK(範囲) … [範囲]にある空欄の個数を求める
      = COUNTIF(範囲, 条件) … [範囲]の中で[条件]を満たすデータの個数を求める
      = COUNTIFS(範囲1, 条件1, 範囲2, 条件2, … 範囲n, 条件n) … それぞれの[範囲]の中でそれぞれの[条件]を全て満たすデータの個数を求める
      
      使用例:
      = COUNT(A1, B1, C1) … A1〜C1セルにある文字,空欄以外のデータの個数を求める
      = COUNTA(A1:A10) … A1〜A10セルにある空欄でないデータの個数を求める
      = COUNTBLANK(A1:A10) … A1〜A10セルにある空欄の個数を求める
      = COUNTIF(A1:A10, ">0") … A1〜A10セルで値が0より大きいデータの個数を求める
      = COUNTIFS(A1:A10, ">0", B1:B10, "<>0") … A1〜A10セルで値が0より大きく,B1〜B10セルで値が0以外の条件を満たすのデータの個数を求める
      
      ※COUNTIFS関数の範囲は、全ての条件で範囲(行数または列数)が同じになっていること.
    2. AVERAGE / AVERAGEIF / AVERAGEIFS
      指定範囲にあるデータの平均値を求める
      一般形:
      = AVERAGE(範囲) … [範囲]にある値の平均値を求める(文字,文字列や空欄は対象としない)
      = AVERAGEIF(範囲, 検索条件, 平均対象範囲) … [範囲]の中で[検索条件]を満たす[平均対象範囲]の値の平均値を求める(文字,文字列や空欄は対象としない)
      = AVERAGEIFS(平均対象範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, … 条件範囲n, 条件n) … それぞれの[条件範囲]の中でそれぞれの[条件]を全て満たす値の平均値を求める(文字,文字列や空欄は対象としない)
      
      使用例:
      = AVERAGE(A1, B1, C1) … A1〜C1セルにある文字,空欄以外の値の平均値を求める
      = AVERAGEIF(A1:A10, "60>=", B1:B10) … A1〜A10セルにあるのデータ中で60以上の値の行のB1〜B10セルの文字,空欄以外の値の平均値を求める
      = AVERAGEIFS(C1:C10, A1:A10, ">0", B1:B10, "<>0") … A1〜A10セルで値が0より大きく,B1〜B10セルで値が0以外の条件を満たす行のC1〜C10セルの文字,空欄以外の値の平均値を求める
      
      ※AVERAGEIF関数,AVERAGEIFS関数の条件範囲と平均対象範囲は(行数または列数)が同じになっていること.
    3. MAX / MIN
      指定範囲にある数値データの最大値/最小値を求める
      一般形:
      = MAX(範囲) … [範囲]にある数値データの最大値を求める
      = MIN(範囲) … [範囲]にある数値データの最小値を求める
      
      使用例:
      = MAX(A1, B1, C1) … A1〜C1セルにある数値データの最大値を求める
      = MIN(A1:A10) … A1〜A10セルにある数値データの最小値を求める
      
    4. FREQUENCY
      データと区間から度数分布を求める
      一般形:
      = FREQUENCY(データ配列, 区間配列) … [データ配列]と[区間配列]から度数分布を求める
      
      使用例:
      = FREQUENCY(A1:A100, B1:B10) … A1〜A100セルにある値がB1〜B10セルの区間に含まれるか度数分布を求める
      
      ※データ,区間は配列として入力する必要があります.また、データ区間は指定した区間より一つ多くなります(指定区間以上がある).
    5. MEDIAN / MODE
      データの中から中央値/最頻値を求める
      一般形:
      = MEDIAN(範囲) … [範囲]にある数値データの中央値を求める
      = MODE(範囲) … [範囲]にある数値データの最頻値を求める
      
      使用例:
      = MEDIAN(A1, B1, C1) … A1〜C1セルにある数値データの中央値を求める
      = MODE(A1:A10) … A1〜A10セルにある数値データの最頻値を求める
      
    6. RANK
      指定した値がデータ列の何番目か求める
      一般形:
      = RANK(数値, 参照, 順序) … [数値]を[参照]の範囲にあるデータ列と比較して何番目にあるかを求める([順序]は上からか下からか指定)
      
      使用例:
      = RANK(B1, A1:A10, 1) … B1セルの値がA1〜A10セルにある数値データの下から何番目かを求める
      
    7. STDEV / STDEVP
      データから標本標準偏差/母標準偏差を求める
      一般形:
      = STDEV(範囲) … [範囲]にある値の標本標準偏差を求める
      = STDEVP(範囲) … [範囲]にある値の母標準偏差を求める
      
      使用例:
      = STDEV(A1, B1, C1) … A1〜C1セルにある数値データの標本標準偏差を求める
      = STDEVP(A1:A10) … A10セルにある数値データの母標準偏差を求める
      
    8. SLOPE / INTERCEPT
      既知の[yの範囲]と[xの範囲]をもとに回帰直線の傾きと切片を求める
      一般形:
      = SLOPE(yの範囲, xの範囲) … [yの範囲]と[xの範囲]から回帰直線の傾きを求める
      = INTERCEPT(yの範囲, xの範囲) … [yの範囲]と[xの範囲]から回帰直線の切片を求める
      
      使用例:
      = SLOPE(A1:A10, B1:B10) … A1:A10セルの値とB1:B10セルの値から回帰直線の傾きを求める
      = INTERCEPT(A1:A10, B1:B10) … A1:A10セルの値とB1:B10セルの値から回帰直線の切片を求める
      
  3. 論理関数
    1. IF
      与えられた条件を判定して、戻り値を変える
      一般形:
      = IF(論理式, 真の場合, 偽の場合) … [論理式(条件)]の判定を行い、真の場合は[真の場合]の値を、偽の場合は[偽の場合]の値を返す
      
      使用例:
      = IF(A1>0, A1, 0) … セルA1の値が0より大きかったらA1の値を返し、それ以外の場合は0を返す
      
    2. AND
      与えられた複数の条件を全て満たしているか判定する
      一般形:
      = AND(論理式1, 論理式2, … 論理式n) … 全ての[論理式(条件)]の判定を行い、全て真の場合はTRUEを、それ以外の場合はFALSEを返す
      
      使用例:
      = AND(A1>0, B1>0, C1>0) … A1, B1, C1の全てのセルの値が0より大きかったらTRUEを、それ以外の場合はFALSEを返す
      
    3. OR
      与えられた複数の条件のうち1つでも満たしているものがあるか判定する
      一般形:
      = OR(論理式1, 論理式2, … 論理式n) … 全ての[論理式(条件)]の判定を行い、1つでも真の場合はTRUEを、それ以外の場合はFALSEを返す
      
      使用例:
      = OR(A1>0, B1>0, C1>0) … A1, B1, C1セルの値で1つでも0より大きい値があったらTRUEを、それ以外の場合はFALSEを返す
      
  4. 検索/行列関数
    1. VLOOKUP
      検索値を縦方向に検索し、見つかった行の指定した列番号の値を取り出す
      一般形:
      = VLOOKUP(検索値, 範囲, 列番号, 検索の型) … [検索値]を[範囲]の中で検索し、見つかった行の[列番号]の値を取り出す([検索型]をFALSEにすると完全一致,それ以外は[検索値]未満の最大値を検索)
      
      使用例:
      = VLOOKUP(A1, B1:D3, 3, FALSE) … A1セルの値をB1:D3の範囲で完全一致で検索し、見つかったら検索範囲の3列目(今回はD列が該当)の値を取り出す
      
    2. HLOOKUP
      検索値を横方向に検索し、見つかった列の指定した行番号の値を取り出す
      一般形:
      = HLOOKUP(検索値, 範囲, 行番号, 検索の型) … [検索値]を[範囲]の中で検索し、見つかった列の[行番号]の値を取り出す([検索型]をFALSEにすると完全一致,それ以外は[検索値]未満の最大値を検索)
      
      使用例:
      = HLOOKUP(A1, B1:D3, 3, FALSE) … A1の値をB1:D3の範囲で完全一致で検索し、見つかったら検索範囲の3行目(今回は3行目が該当)の値を取り出す
      
    3. MATCH
      指定した値が検索範囲の何番目のセルにあるかを調べる
      一般形:
      = MATCH(検索値, 検査範囲, 照合の種類) … [検索値]を[検査範囲]の中で検索し、見つかった行の[列番号]の値を取り出す([検索型]をFALSEにすると完全一致)
      
      使用例:
      = MATCH(A1, B3:F3, FALSE) … A1セルの値をB3:F3の範囲で完全一致で検索し、列番号を求める
      
      ※MATCH関数では検索範囲は1行または1列で指定します.
※全ての関数を丸暗記する必要はありません.必要に応じて使えるように(うっすら)覚えておく程度で構いません.


トップページに戻る