「合計を出したいけど、どの関数を使えばいいんだろう?」「条件に合うデータだけ数えたいけど、関数名が思い出せない…」。Excelの関数は400個以上あるので、やりたいことがあっても関数名がわからないと探しようがないですよね。
この記事では、Excel関数を機能別に14カテゴリに分類した一覧表としてまとめました。「論理」「日付・時刻」「統計」「文字列操作」「検索・参照」など、やりたいことのカテゴリから目的の関数を逆引きできます。関数名がリンクになっているものは、クリックすると解説記事にジャンプできますよ。
関数名から探したい場合はExcel関数一覧(アルファベット順)、読み方が知りたい場合はExcel関数の読み方一覧もあわせて使ってみてください。Power BIの関数を探している方はDAX関数一覧【機能別】をどうぞ。
このページの使い方
目的別に表から探す逆引きリファレンスなので、必要な場面によって以下の使い分けがおすすめです。
| やりたいこと | 使い方 |
|---|---|
| やりたい機能から関数を探す | 下の目次からカテゴリを選んでジャンプ |
| 関数名はわかっているけど使い方を知りたい | アルファベット順一覧 でCtrl+F検索 |
| 関数名の読み方を調べたい | 読み方一覧 でカタカナ読みを確認 |
| まず何から覚えるか知りたい | この記事のまず覚えるべき10関数へ |
まず覚えるべきExcel関数10選
Excel関数は400以上ありますが、実務でよく使うのは一部だけです。まずこの10個を覚えれば、日常業務の8割はカバーできますよ。
| 順位 | 関数 | できること | 優先度 |
|---|---|---|---|
| 1 | SUMIFS | 複数条件に合う数値を合計する | 最優先 |
| 2 | VLOOKUP / XLOOKUP | 別表から対応する値を引く | 最優先 |
| 3 | IF | 条件分岐させる | 最優先 |
| 4 | COUNTIF / COUNTIFS | 条件に合うセル数を数える | 高 |
| 5 | SUM / AVERAGE | 合計・平均を出す | 高 |
| 6 | IFERROR | エラー値を別の値に置き換える | 高 |
| 7 | MATCH / INDEX | 柔軟な検索・参照 | 中 |
| 8 | TEXT | 数値や日付の表示形式を整える | 中 |
| 9 | CONCAT / TEXTJOIN | 文字列を結合する | 中 |
| 10 | TODAY / DATEDIF | 日付計算をする | 中 |
まずはこの10個を押さえてから、必要に応じて専門的な関数に広げていくのが効率的です。
tip
Excel 2021 / Microsoft 365を使っている方へ。VLOOKUPよりも使いやすい XLOOKUP関数 が追加されています。新しく覚えるならXLOOKUPがおすすめです。
これらの関数を体系的に習得したうえで、MOS(Microsoft Office Specialist)試験の取得を目指すのもおすすめです。MOS試験はExcelをはじめWord・PowerPointなどのスキルを客観的に証明できる資格で、就職・転職の際に実力をアピールしやすくなります。
オンラインで自宅から取り組める対策講座として、ハロー!パソコン教室のMOS対策講座があります。全国一位のMOS試験会場数を誇り、20年以上の指導ノウハウを凝縮したオリジナル教材で受講者の合格率97.3%を実現。テキスト・映像教材・練習問題がセットになっていて、独学が不安な方でも安心して進められます。
論理関数
条件分岐・真偽判定など、IF文を中心とした関数が並ぶカテゴリです。Excelで「もし〜なら」を表現するときに使います。
| 関数 | 説明 |
|---|---|
| AND | すべての引数がTRUEのときにTRUEを取得する |
| FALSE | 論理値FALSEを取得する |
| IF | 条件に応じて異なる結果を取得する |
| IFERROR | エラーの場合に指定した値を、それ以外は数式の結果を取得する |
| IFNA | #N/Aエラーの場合に指定した値を、それ以外は数式の結果を取得する |
| IFS | 複数の条件をチェックし、最初にTRUEとなる条件に対応する値を取得する |
| NOT | 引数の論理値を逆にして取得する |
| OR | いずれかの引数がTRUEのときにTRUEを取得する |
| SWITCH | 値の一覧と照合し、最初に一致した値に対応する結果を取得する |
| TRUE | 論理値TRUEを取得する |
| XOR | すべての引数の論理排他ORを取得する |
日付・時刻関数
日付計算や時刻の抽出・変換を行うカテゴリです。期間の計算、営業日の算出、シリアル値と日付の変換などに使います。
| 関数 | 説明 |
|---|---|
| DATE | 年・月・日からシリアル値を取得する |
| DATEDIF | 2つの日付の間の日数・月数・年数を取得する |
| DATEVALUE | 日付文字列をシリアル値に変換する |
| DAY | シリアル値から日を取得する |
| DAYS | 2つの日付間の日数を取得する |
| DAYS360 | 1年を360日として、2つの日付間の日数を取得する |
| EDATE | 指定した月数だけ前後の日付のシリアル値を取得する |
| EOMONTH | 指定した月数だけ前後の月末のシリアル値を取得する |
| HOUR | シリアル値から時を取得する |
| ISOWEEKNUM | 指定した日付のその年におけるISO週番号を取得する |
| MINUTE | シリアル値から分を取得する |
| MONTH | シリアル値から月を取得する |
| NETWORKDAYS | 2つの日付間の稼働日数を取得する |
| NETWORKDAYS.INTL | 週末指定可能な稼働日数を取得する |
| NOW | 現在の日付と時刻のシリアル値を取得する |
| SECOND | シリアル値から秒を取得する |
| TIME | 時・分・秒からシリアル値を取得する |
| TIMEVALUE | 時刻文字列をシリアル値に変換する |
| TODAY | 現在の日付のシリアル値を取得する |
| WEEKDAY | シリアル値から曜日を取得する |
| WEEKNUM | その年の何週目に当たるかを取得する |
| WORKDAY | 指定した稼働日数後の日付のシリアル値を取得する |
| WORKDAY.INTL | 週末指定可能な稼働日数後の日付を取得する |
| YEAR | シリアル値から年を取得する |
| YEARFRAC | 指定期間が1年に対して占める割合を取得する |
統計関数
平均・分散・標準偏差など、データ分析で使う関数が集まるカテゴリです。AVERAGE・COUNT・MAXなど日常業務で頻出する関数から、統計学の検定に使う専門的な関数まで揃っています。
| 関数 | 説明 |
|---|---|
| AVEDEV | データ全体の平均値に対する絶対偏差の平均を取得する |
| AVERAGE | 引数の平均値を取得する |
| AVERAGEA | 文字列・論理値を含む引数の平均値を取得する |
| AVERAGEIF | 条件に一致するセルの平均値を取得する |
| AVERAGEIFS | 複数条件に一致するセルの平均値を取得する |
| BETA.DIST | β分布の累積分布関数の値を取得する |
| BETA.INV | 指定されたβ分布の累積分布関数の逆関数値を取得する |
| BINOM.DIST | 二項分布の確率関数の値を取得する |
| BINOM.DIST.RANGE | 二項分布を使用した試行結果の確率を取得する |
| BINOM.INV | 累積二項分布の値が基準値以下になるような最小の値を取得する |
| CHISQ.DIST | 累積β確率密度関数の値を取得する |
| CHISQ.DIST.RT | カイ2乗分布の片側確率の値を取得する |
| CHISQ.INV | 累積β確率密度関数の値を取得する |
| CHISQ.INV.RT | カイ2乗分布の片側確率の逆関数値を取得する |
| CHISQ.TEST | 独立性検定を行う |
| CONFIDENCE.NORM | 母集団の平均に対する信頼区間を取得する |
| CONFIDENCE.T | スチューデントのt分布を使って母集団の平均に対する信頼区間を取得する |
| CORREL | 2つの配列データの相関係数を取得する |
| COUNT | 引数リストに含まれる数値の個数をカウントする |
| COUNTA | 引数リストに含まれる値の個数をカウントする |
| COUNTBLANK | 指定された範囲に含まれる空白セルの個数をカウントする |
| COUNTIF | 条件に一致するセルの個数をカウントする |
| COUNTIFS | 複数条件に一致するセルの個数をカウントする |
| COVARIANCE.P | 母共分散を取得する |
| COVARIANCE.S | 標本の共分散を取得する |
| DEVSQ | 偏差の平方和を取得する |
| EXPON.DIST | 指数分布を取得する |
| F.DIST | F分布の確率関数の値を取得する |
| F.DIST.RT | F分布の確率関数の値を取得する |
| F.INV | F分布の確率関数の逆関数の値を取得する |
| F.INV.RT | F分布の確率関数の逆関数の値を取得する |
| FISHER | フィッシャー変換の値を取得する |
| FISHERINV | フィッシャー変換の逆関数値を取得する |
| FORECAST | 線形トレンドに沿った値を取得する |
| FORECAST.ETS | 指数平滑化アルゴリズムで既存値から将来値を取得する |
| FORECAST.ETS.CONFINT | 予測値に対する信頼区間を取得する |
| FORECAST.ETS.SEASONALITY | 時系列に関する繰り返しパターンの長さを取得する |
| FORECAST.ETS.STAT | 時系列予測の統計値を取得する |
| FORECAST.LINEAR | 既存の値に基づいて将来値を取得する |
| FREQUENCY | 頻度分布を計算して垂直配列として取得する |
| F.TEST | F検定の結果を取得する |
| GAMMA | ガンマ関数値を取得する |
| GAMMA.DIST | ガンマ分布の値を取得する |
| GAMMA.INV | ガンマの累積分布の逆関数値を取得する |
| GAMMALN | ガンマ関数Γ(x)の値の自然対数を取得する |
| GAMMALN.PRECISE | ガンマ関数Γ(x)の値の自然対数を取得する |
| GAUSS | 標準正規分布の累積分布関数より0.5小さい値を取得する |
| GEOMEAN | 相乗平均を取得する |
| GROWTH | 指数曲線から予測される値を取得する |
| HARMEAN | 調和平均を取得する |
| HYPGEOM.DIST | 超幾何分布を取得する |
| INTERCEPT | 線形回帰直線の切片を取得する |
| KURT | データセットの尖度を取得する |
| LARGE | k番目に大きな値を取得する |
| LINEST | 線形トレンドのパラメーターを取得する |
| LOGEST | 回帰指数曲線の係数の値を取得する |
| LOGNORM.DIST | 対数の累積分布の値を取得する |
| LOGNORM.INV | 対数の累積分布の逆関数値を取得する |
| MAX | 引数リストに含まれる最大値を取得する |
| MAXA | 文字列・論理値を含む引数リストから最大値を取得する |
| MAXIFS | 条件に合うセルの最大値を取得する |
| MEDIAN | 中央値を取得する |
| MIN | 引数リストに含まれる最小値を取得する |
| MINIFS | 条件に合うセルの最小値を取得する |
| MINA | 文字列・論理値を含む引数リストから最小値を取得する |
| MODE.MULT | 最頻値を縦方向の配列として取得する |
| MODE.SNGL | 最頻値を取得する |
| NEGBINOM.DIST | 負の二項分布を取得する |
| NORM.DIST | 正規分布の累積分布の値を取得する |
| NORMINV | 正規分布の累積分布の逆関数値を取得する |
| NORM.S.DIST | 標準正規分布の累積分布の値を取得する |
| NORM.S.INV | 標準正規分布の累積分布の逆関数値を取得する |
| PEARSON | ピアソンの積率相関係数rの値を取得する |
| PERCENTILE.EXC | 第k百分位数を取得する(0と1を除外) |
| PERCENTILE.INC | 第k百分位数を取得する(0と1を含む) |
| PERCENTRANK.EXC | 値の順位を百分率で取得する(0と1を除外) |
| PERCENTRANK.INC | 値の順位を百分率で取得する(0と1を含む) |
| PERMUT | 順列の数を取得する |
| PERMUTATIONA | 反復を含む順列の数を取得する |
| PHI | 標準正規分布の密度関数の値を取得する |
| POISSON.DIST | ポワソン分布の値を取得する |
| PROB | 値が上限と下限の間に収まる確率を取得する |
| QUARTILE.EXC | 四分位数を取得する(0と1を除外) |
| QUARTILE.INC | 四分位数を取得する(0と1を含む) |
| RANK.AVG | 数値の順位を取得する(同順位は平均) |
| RANK.EQ | 数値の順位を取得する(同順位は同じ順位) |
| RSQ | 相関係数の2乗値を取得する |
| SKEW | 分布の歪度を取得する |
| SKEW.P | 母集団に基づく分布の歪度を取得する |
| SLOPE | 回帰直線の傾きを取得する |
| SMALL | k番目に小さな値を取得する |
| STANDARDIZE | 正規化された値を取得する |
| STDEV.P | 母集団全体に基づく標準偏差を取得する |
| STDEV.S | 標本に基づく標準偏差の推定値を取得する |
| STDEVA | 文字列・論理値を含む標本に基づく標準偏差の推定値を取得する |
| STDEVPA | 文字列・論理値を含む母集団全体に基づく標準偏差を取得する |
| STEYX | 回帰直線上の予測値の標準誤差を取得する |
| T.DIST | スチューデントのt分布のパーセンテージを取得する |
| T.DIST.2T | スチューデントのt分布のパーセンテージを取得する |
| T.DIST.RT | スチューデントのt分布の値を取得する |
| T.INV | スチューデントのt分布のt値を取得する |
| T.INV.2T | スチューデントのt分布の逆関数値を取得する |
| TREND | 回帰直線による予測値を配列で取得する |
| TRIMMEAN | データセットの中間項の平均を取得する |
| T.TEST | スチューデントのt検定における確率を取得する |
| VAR.P | 母集団全体に基づく分散を取得する |
| VAR.S | 標本に基づく分散の推定値を取得する |
| VARA | 文字列・論理値を含む標本に基づく分散の推定値を取得する |
| VARPA | 文字列・論理値を含む母集団全体に基づく分散を取得する |
| WEIBULL.DIST | ワイブル分布の値を取得する |
| Z.TEST | Z検定の片側確率の値を取得する |
数学・三角関数
合計・切り上げ・四捨五入・三角関数など、数学計算を担うカテゴリです。SUM・ROUND・ABSなど実務で最もよく使う関数が揃っています。
| 関数 | 説明 |
|---|---|
| ABS | 数値の絶対値を取得する |
| ACOS | 数値の逆余弦(アークコサイン)を取得する |
| ACOSH | 数値の逆双曲線余弦を取得する |
| ACOT | 数値の逆余接(アークコタンジェント)を取得する |
| ACOTH | 数値の逆双曲線余接を取得する |
| AGGREGATE | リストやデータベースの総計を取得する |
| ARABIC | ローマ数字をアラビア数字に変換する |
| ASIN | 数値の逆正弦(アークサイン)を取得する |
| ASINH | 数値の逆双曲線正弦を取得する |
| ATAN | 数値の逆正接(アークタンジェント)を取得する |
| ATAN2 | 指定されたx-y座標の逆正接を取得する |
| ATANH | 数値の逆双曲線正接を取得する |
| BASE | 数値を指定された基数のテキスト表現に変換する |
| CEILING.MATH | 数値を基準値の倍数に切り上げる |
| CEILING.PRECISE | 符号に関係なく基準値の倍数に切り上げる |
| COMBIN | 組み合わせの数を取得する |
| COMBINA | 反復を含む組み合わせの数を取得する |
| COS | 数値の余弦(コサイン)を取得する |
| COSH | 数値の双曲線余弦を取得する |
| COT | 数値の余接を取得する |
| COTH | 角度のコタンジェントを取得する |
| CSC | 角度の余割(コセカント)を取得する |
| CSCH | 角度の双曲線余割を取得する |
| DECIMAL | 指定された底の数値のテキスト表現を10進数に変換する |
| DEGREES | ラジアンを度に変換する |
| EVEN | 最も近い偶数に切り上げる |
| EXP | eを底とする数値のべき乗を取得する |
| FACT | 数値の階乗を取得する |
| FACTDOUBLE | 数値の二重階乗を取得する |
| FLOOR.MATH | 基準値の倍数に切り下げる |
| FLOOR.PRECISE | 符号に関係なく基準値の倍数に切り下げる |
| GCD | 最大公約数を取得する |
| INT | 最も近い整数に切り捨てる |
| ISO.CEILING | 最も近い整数、または基準値の倍数に切り上げる |
| LCM | 最小公倍数を取得する |
| LET | 計算結果に名前を割り当てる |
| LN | 数値の自然対数を取得する |
| LOG | 指定された底とする数値の対数を取得する |
| LOG10 | 10を底とする数値の対数を取得する |
| MDETERM | 配列の行列式を取得する |
| MINVERSE | 配列の逆行列を取得する |
| MMULT | 2つの配列の行列積を取得する |
| MOD | 除算の剰余を取得する |
| MROUND | 指定された値の倍数になるように四捨五入する |
| MULTINOMIAL | 指定された複数の数値の多項係数を取得する |
| MUNIT | 指定された次元の単位行列を取得する |
| ODD | 最も近い奇数に切り上げる |
| PI | 円周率πを取得する |
| POWER | 数値のべき乗を取得する |
| PRODUCT | 引数を乗算する |
| QUOTIENT | 除算の商の整数部を取得する |
| RADIANS | 度をラジアンに変換する |
| RAND | 0から1の乱数を取得する |
| RANDARRAY | 0から1までのランダムな数値の配列を取得する |
| RANDBETWEEN | 指定された範囲内の乱数を取得する |
| ROMAN | アラビア数字をローマ数字の文字列に変換する |
| ROUND | 数値を四捨五入して指定された桁数にする |
| ROUNDDOWN | 数値を指定された桁数で切り捨てる |
| ROUNDUP | 数値を指定された桁数で切り上げる |
| SEC | 角度の正割(セカント)を取得する |
| SECH | 角度の双曲線正割を取得する |
| SEQUENCE | 配列内の連続した数値の一覧を生成する |
| SERIESSUM | 数式で定義されるべき級数の和を取得する |
| SIGN | 数値の符号を取得する |
| SIN | 指定された角度のサインを取得する |
| SINH | 数値の双曲線正弦を取得する |
| SQRT | 正の平方根を取得する |
| SQRTPI | (数値×π)の平方根を取得する |
| SUBTOTAL | リストやデータベースの集計値を取得する |
| SUM | 引数を合計する |
| SUMIF | 条件に一致するセルの値を合計する |
| SUMIFS | 複数条件に合うセルの値を合計する |
| SUMPRODUCT | 対応する配列要素の積を合計する |
| SUMSQ | 引数の2乗の和(平方和)を取得する |
| SUMX2MY2 | 2つの配列で対応する要素の平方差を合計する |
| SUMX2PY2 | 2つの配列で対応する要素の平方和を合計する |
| SUMXMY2 | 2つの配列の対応要素の差を2乗して合計する |
| TAN | 数値の正接(タンジェント)を取得する |
| TANH | 数値の双曲線正接を取得する |
| TRUNC | 数値の小数部を切り捨てて整数にする |
情報関数
セルやデータの属性を調べる関数カテゴリです。ISBLANK・ISNUMBERなどの「IS系」関数は、IF関数と組み合わせて条件分岐させるときによく使います。
| 関数 | 説明 |
|---|---|
| CELL | セルの書式・位置・内容についての情報を取得する |
| ERROR.TYPE | エラーの種類に対応する数値を取得する |
| INFO | 現在の操作環境についての情報を取得する |
| ISBLANK | 対象が空白セルのときにTRUEを取得する |
| ISERR | 対象が#N/A以外のエラー値のときにTRUEを取得する |
| ISERROR | 対象が任意のエラー値のときにTRUEを取得する |
| ISEVEN | 数値が偶数のときにTRUEを取得する |
| ISFORMULA | 参照先に数式が含まれるときにTRUEを取得する |
| ISLOGICAL | 対象が論理値のときにTRUEを取得する |
| ISNA | 対象が#N/AのときにTRUEを取得する |
| ISNONTEXT | 対象が文字列以外のときにTRUEを取得する |
| ISNUMBER | 対象が数値のときにTRUEを取得する |
| ISODD | 数値が奇数のときにTRUEを取得する |
| ISREF | 対象が参照のときにTRUEを取得する |
| ISTEXT | 対象がテキストのときにTRUEを取得する |
| N | 値を数値に変換する |
| NA | エラー値#N/Aを取得する |
| SHEET | 参照先のシート番号を取得する |
| SHEETS | 参照内のシート数を取得する |
| TYPE | 値のデータ型を表す数値を取得する |
互換性関数
古いバージョンのExcelとの互換性のために残されているカテゴリです。新規に数式を作る場合は、代わりに同じ機能を持つ新しい関数(統計関数カテゴリ)を使うのがMicrosoft推奨です。
| 関数 | 説明 | 代替関数 |
|---|---|---|
| BETADIST | β分布の累積分布関数の値を取得する | BETA.DIST |
| BETAINV | 指定されたβ分布の累積分布関数の逆関数値を取得する | BETA.INV |
| BINOMDIST | 二項分布の確率関数の値を取得する | BINOM.DIST |
| CEILING | 基準値の倍数に切り上げる | CEILING.MATH |
| CHIDIST | カイ2乗分布の片側確率の値を取得する | CHISQ.DIST.RT |
| CHIINV | カイ2乗分布の片側確率の逆関数値を取得する | CHISQ.INV.RT |
| CHITEST | 独立性検定を行う | CHISQ.TEST |
| CONFIDENCE | 母集団の平均に対する信頼区間を取得する | CONFIDENCE.NORM |
| COVAR | 共分散を取得する | COVARIANCE.P |
| CRITBINOM | 累積二項分布の値が基準値以下になるような最小値を取得する | BINOM.INV |
| EXPONDIST | 指数分布を取得する | EXPON.DIST |
| FDIST | F分布の確率関数の値を取得する | F.DIST.RT |
| FINV | F分布の確率関数の逆関数の値を取得する | F.INV.RT |
| FLOOR | 基準値の倍数に切り下げる | FLOOR.MATH |
| FTEST | F検定の結果を取得する | F.TEST |
| GAMMADIST | ガンマ分布の値を取得する | GAMMA.DIST |
| GAMMAINV | ガンマの累積分布の逆関数値を取得する | GAMMA.INV |
| HYPGEOMDIST | 超幾何分布を取得する | HYPGEOM.DIST |
| LOGINV | 対数の累積分布の逆関数値を取得する | LOGNORM.INV |
| LOGNORMDIST | 対数の累積分布の値を取得する | LOGNORM.DIST |
| MODE | 最頻値を取得する | MODE.SNGL |
| NEGBINOMDIST | 負の二項分布を取得する | NEGBINOM.DIST |
| NORMDIST | 正規分布の累積分布の値を取得する | NORM.DIST |
| NORM.INV | 正規分布の累積分布の逆関数値を取得する | NORM.INV(新関数と同名) |
| NORMSDIST | 標準正規分布の累積分布の値を取得する | NORM.S.DIST |
| NORMSINV | 標準正規分布の累積分布の逆関数値を取得する | NORM.S.INV |
| PERCENTILE | 第k百分位数を取得する | PERCENTILE.INC |
| PERCENTRANK | 値の順位を百分率で取得する | PERCENTRANK.INC |
| POISSON | ポワソン分布の値を取得する | POISSON.DIST |
| QUARTILE | 四分位数を取得する | QUARTILE.INC |
| RANK | 数値の順位を取得する | RANK.EQ |
| STDEV | 標本に基づく標準偏差の推定値を取得する | STDEV.S |
| STDEVP | 母集団全体に基づく標準偏差を取得する | STDEV.P |
| TDIST | スチューデントのt分布の値を取得する | T.DIST.RT |
| TINV | スチューデントのt分布の逆関数値を取得する | T.INV.2T |
| TTEST | スチューデントのt検定における確率を取得する | T.TEST |
| VAR | 標本に基づく分散の推定値を取得する | VAR.S |
| VARP | 母集団全体に基づく分散を取得する | VAR.P |
| WEIBULL | ワイブル分布の値を取得する | WEIBULL.DIST |
| ZTEST | Z検定の片側確率の値を取得する | Z.TEST |
検索・参照関数
VLOOKUPやXLOOKUPなど、別表から値を引くときに使うカテゴリです。実務で最も使用頻度が高いカテゴリのひとつで、表結合やデータ抽出の要になります。
| 関数 | 説明 |
|---|---|
| ADDRESS | ワークシート上のセル参照をテキストとして取得する |
| AREAS | 指定の範囲に含まれる領域の個数を取得する |
| CHOOSE | 値のリストから値を選択する |
| CHOOSECOLS | 配列から指定された列を取得する |
| CHOOSEROWS | 配列から指定された行を取得する |
| COLUMN | セル参照の列番号を取得する |
| COLUMNS | 指定の範囲に含まれる列数を取得する |
| FILTER | 条件に基づいたデータ範囲を取得する |
| FORMULATEXT | 指定された参照の数式をテキストとして取得する |
| GETPIVOTDATA | ピボットテーブルのデータを取得する |
| HLOOKUP | 配列の上端行で検索し対応するセルの値を取得する |
| HYPERLINK | ジャンプ用のショートカットまたはリンクを作成する |
| INDEX | セル参照または配列から指定位置の値を取得する |
| INDIRECT | テキスト値で指定されたセル参照を取得する |
| LOOKUP | ベクトルまたは配列を検索して対応する値を取得する |
| MATCH | 参照または配列で値を検索する |
| OFFSET | 指定行数・列数だけシフトしたセル参照を取得する |
| ROW | セル参照の行番号を取得する |
| ROWS | 指定の範囲に含まれる行数を取得する |
| RTD | COMオートメーション対応プログラムからリアルタイムデータを取得する |
| SORT | 範囲または配列の内容を並べ替える |
| SORTBY | 対応する範囲または配列の値に基づいて並べ替える |
| TRANSPOSE | セル範囲の行と列を入れ替えた配列を取得する |
| UNIQUE | 範囲内から重複を除いたデータを取得する |
| VLOOKUP | 配列の左端列で検索し対応するセルの値を取得する |
| XLOOKUP | 範囲または配列を検索し一致する項目を取得する |
| XMATCH | セル配列または範囲内で指定項目の相対位置を取得する |
| WRAPCOLS | 値の1次元配列を列ごとに折り返して2次元配列にする |
| WRAPROWS | 値の1次元配列を行ごとに折り返して2次元配列にする |
金融関数
ローン・投資・債券・減価償却など、金融計算に使うカテゴリです。PMT(ローン返済額)、FV(将来価値)、NPV(正味現在価値)などが代表的な関数です。
| 関数 | 説明 |
|---|---|
| ACCRINT | 定期的に利息が支払われる証券の未収利息額を取得する |
| ACCRINTM | 満期日に利息が支払われる証券の未収利息額を取得する |
| AMORDEGRC | 減価償却係数を使用した各会計期の減価償却費を取得する |
| AMORLINC | 各会計期における減価償却費を取得する |
| COUPDAYBS | 利払期間の第1日目から受渡日までの日数を取得する |
| COUPDAYS | 受渡日を含む利払期間内の日数を取得する |
| COUPDAYSNC | 受渡日から次の利払日までの日数を取得する |
| COUPNCD | 受渡日後の次の利払日を取得する |
| COUPNUM | 受渡日と満期日の間の利払回数を取得する |
| COUPPCD | 受渡日の直前の利払日を取得する |
| CUMIPMT | 指定期間に支払われる利息の累計を取得する |
| CUMPRINC | 指定期間に支払われる元金の累計を取得する |
| DB | 定率法による特定の期の減価償却費を取得する |
| DDB | 倍額定率法などによる特定の期の減価償却費を取得する |
| DISC | 証券に対する割引率を取得する |
| DOLLARDE | 分数表記のドル価格を小数表示に変換する |
| DOLLARFR | 小数表記のドル価格を分数表示に変換する |
| DURATION | 定期的に利子が支払われる証券の年間マコーレーデュレーションを取得する |
| EFFECT | 実効年利率を取得する |
| FV | 投資の将来価値を取得する |
| FVSCHEDULE | 一連の金利を複利計算した初期投資の将来価値を取得する |
| INTRATE | 全額投資された証券の利率を取得する |
| IPMT | 投資の指定された期に支払われる金利を取得する |
| IRR | 一連のキャッシュフローに対する内部利益率を取得する |
| ISPMT | 投資の指定された期に支払われる金利を計算する |
| MDURATION | 証券に対する修正マコーレーデュレーションを取得する |
| MIRR | 支払いと収益のキャッシュフローがさまざまな率で行われる場合の修正内部利益率を取得する |
| NOMINAL | 名目年利率を取得する |
| NPER | 投資に必要な期間を取得する |
| NPV | 定期的に発生するキャッシュフローと割引率に基づく正味現在価値を取得する |
| ODDFPRICE | 1期目の日数が半端な証券の額面$100あたりの価格を取得する |
| ODDFYIELD | 1期目の日数が半端な証券の利回りを取得する |
| ODDLPRICE | 最終期の日数が半端な証券の額面$100あたりの価格を取得する |
| ODDLYIELD | 最終期の日数が半端な証券の利回りを取得する |
| PDURATION | 投資が指定した価値に達するまでの投資期間を取得する |
| PMT | 年間の定期支払額を算出する |
| PPMT | 指定した期に支払われる投資元金を取得する |
| PRICE | 定期的に利息が支払われる証券の額面$100あたりの価格を取得する |
| PRICEDISC | 割引証券の額面$100あたりの価格を取得する |
| PRICEMAT | 満期日に利息が支払われる証券の額面$100あたりの価格を取得する |
| PV | 投資の現在価値を取得する |
| RATE | 年間の投資金利を取得する |
| RECEIVED | 全額投資された証券の満期日の支払額を取得する |
| RRI | 投資の成長に対する等価利率を取得する |
| SLN | 定額法による資産の1期あたりの減価償却費を取得する |
| STOCKHISTORY | 金融商品に関する履歴データを取得する |
| SYD | 級数法による特定の期の減価償却費を取得する |
| TBILLEQ | 米国財務省短期証券の債券換算利回りを取得する |
| TBILLPRICE | 米国財務省短期証券の額面$100あたりの価格を取得する |
| TBILLYIELD | 米国財務省短期証券の利回りを取得する |
| VDB | 定率法による特定の期の減価償却費を取得する |
| XIRR | 定期的でないキャッシュフローに対する内部利益率を取得する |
| XNPV | 定期的でないキャッシュフローに対する正味現在価値を取得する |
| YIELD | 利息が定期的に支払われる証券の利回りを取得する |
| YIELDDISC | 割引債の年利回りを取得する |
| YIELDMAT | 満期日に利息が支払われる証券の利回りを取得する |
文字列操作関数
文字列の抽出・結合・置換・変換を行うカテゴリです。LEFT・RIGHT・MID・CONCATなどの基本関数に加え、TEXTJOIN・TEXTなどの整形系関数も含まれます。
| 関数 | 説明 |
|---|---|
| ARRAYTOTEXT | 指定範囲のテキスト値の配列を取得する |
| ASC | 全角の英数カナ文字を半角に変換する |
| BAHTTEXT | バーツ通貨書式で数値を文字列に変換する |
| CHAR | コード番号で指定された文字を取得する |
| CLEAN | 印刷できない文字を削除する |
| CODE | テキスト文字列内の先頭文字の数値コードを取得する |
| CONCAT | 複数の範囲や文字列を結合する |
| CONCATENATE | 複数の文字列を1つに結合する(旧型式) |
| DBCS | 半角の英数カナ文字を全角に変換する |
| DOLLAR | ドル通貨書式で数値を文字列に変換する |
| EXACT | 2つのテキスト値が等しいかを判定する |
| FIND、FINDB | 指定されたテキスト値を他のテキスト値の中で検索する |
| FIXED | 数値を一定の桁数のテキストに書式設定する |
| JIS | 半角の文字を全角に変換する |
| LEFT、LEFTB | 文字列の先頭から指定文字数を取得する |
| LEN、LENB | 文字列に含まれる文字数を取得する |
| LOWER | テキストを小文字に変換する |
| MID、MIDB | 文字列の任意の位置から指定文字数を取得する |
| NUMBERVALUE | 文字列をロケールに依存しない方法で数値に変換する |
| PHONETIC | 文字列からふりがなを抽出する |
| PROPER | 英単語の先頭文字だけを大文字に変換する |
| REPLACE、REPLACEB | テキスト内の文字を置き換える |
| REPT | テキストを指定回数だけ繰り返して取得する |
| RIGHT、RIGHTB | 文字列の末尾から指定文字数を取得する |
| SEARCH、SEARCHB | 指定文字列を他の文字列で検索し位置を取得する |
| SUBSTITUTE | 文字列中の指定文字を他の文字に置き換える |
| T | 引数をテキストに変換する |
| TEXT | 数値を書式設定したテキストに変換する |
| TEXTJOIN | 区切り記号付きで複数のテキストを結合する |
| TRIM | テキストからスペースを削除する |
| UNICHAR | 指定された数値により参照されるUnicode文字を取得する |
| UNICODE | 文字列の最初の文字に対応する番号を取得する |
| UPPER | 文字列に含まれる英字をすべて大文字に変換する |
| VALUE | テキスト引数を数値に変換する |
| VALUETOTEXT | 指定した値からテキストを取得する |
データベース関数
テーブル状のデータから条件に合うレコードを抽出・集計するカテゴリです。「D」で始まる関数群で、SUMIFSなどのワークシート関数と似た使い方ができます。
| 関数 | 説明 |
|---|---|
| DAVERAGE | 選択したデータベースレコードの平均値を取得する |
| DCOUNT | データベース内の数値を含むセルをカウントする |
| DCOUNTA | データベース内の空白でないセルをカウントする |
| DGET | 条件に一致する1つのレコードを抽出する |
| DMAX | 選択したデータベースレコードの最大値を取得する |
| DMIN | 選択したデータベースレコードの最小値を取得する |
| DPRODUCT | 条件に一致するレコードのフィールド値を乗算する |
| DSTDEV | 標本に基づく標準偏差の推定値を取得する |
| DSTDEVP | 母集団全体に基づく標準偏差を取得する |
| DSUM | 条件に一致するレコードのフィールド列の合計を取得する |
| DVAR | 標本に基づく分散の推定値を取得する |
| DVARP | 母集団全体に基づく分散を取得する |
キューブ関数
SQL Server Analysis ServicesなどのOLAPキューブからデータを取得するカテゴリです。データモデル(パワーピボット)で分析するときに使います。
| 関数 | 説明 |
|---|---|
| CUBEKPIMEMBER | KPIの名前・プロパティ・メジャーを取得する |
| CUBEMEMBER | キューブ階層のメンバーまたは組を取得する |
| CUBEMEMBERPROPERTY | キューブ内のメンバープロパティの値を取得する |
| CUBERANKEDMEMBER | セット内のn番目のメンバーを取得する |
| CUBESET | セット式をキューブに送信して計算されたセットを定義する |
| CUBESETCOUNT | セット内のアイテムの数を取得する |
| CUBEVALUE | キューブの総計値を取得する |
エンジニアリング関数
進数変換・複素数・ベッセル関数など、理工系の計算に使うカテゴリです。2進数・8進数・16進数の相互変換、単位換算、ビット演算などはIT・エンジニアリング業務で重宝します。
| 関数 | 説明 |
|---|---|
| BESSELI | 修正ベッセル関数In(x)を取得する |
| BESSELJ | ベッセル関数Jn(x)を取得する |
| BESSELK | 修正ベッセル関数Kn(x)を取得する |
| BESSELY | ベッセル関数Yn(x)を取得する |
| BIN2DEC | 2進数を10進数に変換する |
| BIN2HEX | 2進数を16進数に変換する |
| BIN2OCT | 2進数を8進数に変換する |
| BITAND | 2つの数値のビット演算ANDを取得する |
| BITLSHIFT | 左にビットシフトした数値を取得する |
| BITOR | 2つの数値のビット演算ORを取得する |
| BITRSHIFT | 右にビットシフトした数値を取得する |
| BITXOR | 2つの数値のビット演算XORを取得する |
| COMPLEX | 実数係数と虚数係数を複素数に変換する |
| CONVERT | 数値の単位を変換する |
| DEC2BIN | 10進数を2進数に変換する |
| DEC2HEX | 10進数を16進数に変換する |
| DEC2OCT | 10進数を8進数に変換する |
| DELTA | 2つの値が等しいかをテストする |
| ERF | 誤差関数の値を取得する |
| ERF.PRECISE | 誤差関数の値を取得する |
| ERFC | 相補誤差関数の値を取得する |
| ERFC.PRECISE | xから無限大の範囲の相補誤差関数の積分値を取得する |
| GESTEP | 数値がしきい値以上であるかをテストする |
| HEX2BIN | 16進数を2進数に変換する |
| HEX2DEC | 16進数を10進数に変換する |
| HEX2OCT | 16進数を8進数に変換する |
| IMABS | 複素数の絶対値を取得する |
| IMAGINARY | 複素数の虚数係数を取得する |
| IMARGUMENT | 偏角シータをラジアンで取得する |
| IMCONJUGATE | 複素数の複素共役を取得する |
| IMCOS | 複素数のコサインを取得する |
| IMCOSH | 複素数の双曲線余弦を取得する |
| IMCOT | 複素数の余接を取得する |
| IMCSC | 複素数の余割を取得する |
| IMCSCH | 複素数の双曲線余割を取得する |
| IMDIV | 2つの複素数の商を取得する |
| IMEXP | 複素数のべき乗を取得する |
| IMLN | 複素数の自然対数を取得する |
| IMLOG10 | 複素数の10を底とする対数を取得する |
| IMLOG2 | 複素数の2を底とする対数を取得する |
| IMPOWER | 複素数の整数乗を取得する |
| IMPRODUCT | 複素数の積を取得する |
| IMREAL | 複素数の実数係数を取得する |
| IMSEC | 複素数の正割を取得する |
| IMSECH | 複素数の双曲線正割を取得する |
| IMSIN | 複素数の正弦を取得する |
| IMSINH | 複素数の双曲線正弦を取得する |
| IMSQRT | 複素数の平方根を取得する |
| IMSUB | 2つの複素数の差を取得する |
| IMSUM | 複素数の和を取得する |
| IMTAN | 複素数の正接を取得する |
| OCT2BIN | 8進数を2進数に変換する |
| OCT2DEC | 8進数を10進数に変換する |
| OCT2HEX | 8進数を16進数に変換する |
Web関数
Web APIやURLを扱うカテゴリです。ENCODEURL・FILTERXMLなど、外部サービス連携の簡易スクリプトとして使えます。
| 関数 | 説明 |
|---|---|
| ENCODEURL | URL形式でエンコードされた文字列を取得する |
| FILTERXML | 指定されたXPathに基づいてXMLコンテンツの特定データを取得する |
| WEBSERVICE | Webサービスからデータを取得する |
アドイン・オートメーション関数
外部プログラムやダイナミックリンクライブラリを呼び出すカテゴリです。特殊な用途のため、日常業務ではほぼ使いません。
| 関数 | 説明 |
|---|---|
| CALL | ダイナミックリンクライブラリのプロシージャを呼び出す |
| EUROCONVERT | ユーロ通貨と参加国通貨の換算を行う |
| REGISTER.ID | 登録されたダイナミックリンクライブラリのレジスタIDを取得する |
Excel関数の学習ロードマップ
400以上ある関数をすべて覚える必要はありません。次の順で段階的にマスターするのが効率的ですよ。
STEP1: 四則演算と基本集計(初日)
まずはExcelの四則演算と、基礎中の基礎となる4関数を押さえます。
STEP2: 条件付き集計と条件分岐(1〜3日目)
条件で絞り込む関数が使えると、業務の幅が一気に広がります。
- IF – 条件分岐
- IFERROR – エラー処理
- COUNTIF / COUNTIFS – 条件カウント
- SUMIF / SUMIFS – 条件付き合計
- AVERAGEIF / AVERAGEIFS – 条件付き平均
STEP3: 検索・参照(1週間目)
別表からデータを引く関数を使えるようになると、Excelで本格的にデータを扱えるようになります。
STEP4: 日付・文字列処理(2週間目)
日付計算や文字列の整形は、レポート作成で必須になります。
STEP5: 配列関数・ダイナミック関数(1ヶ月目以降)
Microsoft 365やExcel 2021で使える新しい関数群です。慣れると劇的に数式が短くなります。
ここまで一通り使えれば、日常業務の関数スキルとしては十分です。統計関数や金融関数は、業務で必要になったタイミングで該当カテゴリから逆引きすればOKですよ。
よくある質問(FAQ)
Excel関数の一覧を使う方からよく受ける質問をまとめました。
Q1. Excelの関数はぜんぶで何個あるの?
Microsoftの公式ドキュメントによると、Excel関数は約500個(互換性関数・アドイン関数含む)あります。ただし日常業務で実際に使うのは30〜50個くらいで、400以上の関数はほとんど使われません。まずは上記の10関数から始めて、業務で必要になった関数を順次覚えていくのが効率的です。
Q2. VLOOKUPとXLOOKUPはどちらを覚えればいい?
これから学ぶならXLOOKUP推奨です。XLOOKUPは検索方向の制限がなく、デフォルトで完全一致検索、エラー時の処理も引数で指定できるため、VLOOKUPの欠点を解消しています。ただしExcel 2019以前では使えません。職場のExcelバージョンによってはVLOOKUPも覚えておきましょう。詳しくはXLOOKUP関数の解説をどうぞ。
Q3. 関数名がわかっているけど、使い方を知りたいときは?
Excel関数一覧(アルファベット順)で関数名を探してください。「Ctrl + F」で関数名を検索すれば一瞬で見つかります。読み方がわからない関数の場合は読み方一覧もどうぞ。
Q4. 統計関数がたくさんあるけど、どれを使えばいいの?
「.P」がつく関数は母集団全体、「.S」がつく関数は標本(サンプル)に基づく計算です。実務データ(一部の調査データから全体を推定する場合)では「.S」系、全件揃ったデータ(クラス全員のテスト点数など)では「.P」系を使います。迷ったらSUMIFS関数やCOUNTIFS関数など、条件付き集計系で済む場合も多いです。
Q5. 「互換性関数」って使っていいの?
Excel 2007以前で作られたファイルとの互換性のために残されています。新規に数式を作る場合は、同じ機能の新関数(統計関数カテゴリ)を使うのがMicrosoft推奨です。互換性関数の表に「代替関数」の列を載せているので、そちらを参照してください。既存ファイルの関数はそのままでも動作します。
Q6. Googleスプレッドシートでも同じ関数が使える?
ほとんどの基本関数は互換性があります。ただしExcel独自の関数(キューブ関数・PHONETIC・BAHTTEXTなど)はスプレッドシートでは使えません。逆にスプレッドシート独自のQUERY・GOOGLEFINANCEなどはExcelにはありません。スプレッドシートでの関数の使い方は、当サイトの「Googleスプレッドシート」カテゴリをどうぞ。
まとめ
この記事では、Excelの全関数を機能別14カテゴリに分類した逆引き一覧としてまとめました。やりたいことが決まっているときは、該当するカテゴリの表から関数を探してみてください。
関数名のクリックで個別の解説記事に飛べるので、気になる関数はそのまま使い方を確認できますよ。
関連記事も活用してみてくださいね。
- 関数名から探す: Excel関数一覧(アルファベット順)
- 読み方を調べる: Excel関数の読み方一覧
- DAX関数(Power BI)を探す: DAX関数一覧【機能別】
- まず覚えるべき関数から学ぶ: VLOOKUP関数・SUMIFS関数・IF関数
