Excelの関数とは?
Excelの関数は、Excelソフトウェア内で使用される事前定義された操作または計算のルールです。これらの関数は、データの処理や計算を自動化し、複雑なタスクを簡単に実行するために使用されます。
関数は、特定の操作を実行するために関連する引数(値やセル参照など)を受け取り、その結果を返します。関数はセルに入力され、セルの値や他のセルの値に基づいて計算をおこなうほか、関数は単体で使用するだけでなく、他の関数や数式と組み合わせて使用することもできます。
Excelの関数でできること
Excelの関数は非常に多機能であり、さまざまな目的に使用することができます。
たとえば、数値の合計や平均を計算したり、条件に基づいて値を返したり、文字列を操作したり、日付や時刻を処理するなど多岐にわたる活用が可能です。
関数は数百種類以上存在し、数値処理や統計、テキスト操作、論理演算、日付と時刻、金融計算などのさまざまな領域をカバーしています。
【関連記事】RPAとマクロ、どう違う?【業務効率化・業務自動化】
【関連記事】仕事で役に立つExcelショートカット一覧!【30選】
仕事で役に立つExcelの関数30選!
Excelの関数は、データの分析、集計、レポート作成、予測、予算管理など、さまざまな作業に役立つことからビジネスでは不可欠な存在となっています。
関数を正しく使用することで、手動での計算や操作の手間を省き、正確性と作業効率を向上させることができます。
①四則演算
Excelは基本的な算術演算子(+、-、*、/)をサポートしています。数値データの計算や合計を簡単に行うことができます。
- SUM関数:
指定した範囲のセルの値を合計します。例えば、A1からA3までのセルの合計を計算する場合、以下のように入力します。=SUM(A1:A3)
- AVERAGE関数:
指定した範囲のセルの平均値を計算します。例えば、A1からA3までのセルの平均値を計算する場合、以下のように入力します。=AVERAGE(A1:A3)
- MAX関数:
指定した範囲のセルの最大値を返します。例えば、A1からA3までのセルの最大値を取得する場合、以下のように入力します。=MAX(A1:A3)
- MIN関数:
指定した範囲のセルの最小値を返します。例えば、A1からA3までのセルの最小値を取得する場合、以下のように入力します。=MIN(A1:A3)
- PRODUCT関数:
指定した範囲のセルの値を掛け合わせた結果を返します。例えば、A1からA3までのセルの値を掛け合わせる場合、以下のように入力します。=PRODUCT(A1:A3)
- QUOTIENT関数:
2つの数値の整数除算の結果を返します。例えば、A1をA2で割った商を計算する場合、以下のように入力します。=QUOTIENT(A1, A2)
- MOD関数:
2つの数値の割り算の余りを返します。例えば、A1をA2で割った余りを計算する場合、以下のように入力します。=MOD(A1, A2)
②統計関数
平均値、中央値、最大値、最小値、標準偏差など、データの統計的な解析に使用される関数が提供されています。
- AVERAGE関数:
指定した範囲のセルの平均値を計算します。例えば、A1からA3までのセルの平均値を計算する場合、以下のように入力します。=AVERAGE(A1:A3)
- MEDIAN関数:
指定した範囲のセルの中央値を計算します。例えば、A1からA5までのセルの中央値を計算する場合、以下のように入力します。=MEDIAN(A1:A5)
- MODE関数:
指定した範囲のセルの最頻値(最も頻繁に現れる値)を計算します。例えば、A1からA10までのセルの最頻値を計算する場合、以下のように入力します。=MODE(A1:A10)
- STDEV関数:
指定した範囲のセルの標本標準偏差を計算します。例えば、A1からA5までのセルの標本標準偏差を計算する場合、以下のように入力します。=STDEV(A1:A5)
- STDEVP関数:
指定した範囲のセルの母集団標準偏差を計算します。例えば、A1からA5までのセルの母集団標準偏差を計算する場合、以下のように入力します。=STDEVP(A1:A5)
- VAR関数:
指定した範囲のセルの標本分散を計算します。例えば、A1からA5までのセルの標本分散を計算する場合、以下のように入力します。=VAR(A1:A5)
- VARP関数:
指定した範囲のセルの母集団分散を計算します。例えば、A1からA5までのセルの母集団分散を計算する場合、以下のように入力します。=VARP(A1:A5)
- COUNT関数:
指定した範囲のセルの数をカウントします。例えば、A1からA10までのセルの数をカウントする場合、以下のように入力します。=COUNT(A1:A10)
③条件付き関数
IF関数を使って、特定の条件に基づいて値を返すことができます。これにより、データのフィルタリングや条件に基づく計算が可能になります。
- IF関数:
指定した条件に基づいて結果を返します。条件が真の場合には一つの値を返し、条件が偽の場合には別の値を返します。例えば、A1の値が10以上の場合には「OK」と表示し、それ以外の場合には「NG」と表示する場合、以下のように入力します。=IF(A1>=10, "OK", "NG")
- SUMIF関数:
指定した条件に一致するセルの値の合計を計算します。例えば、A1からA5までのセルの中で、値が10以上のセルの合計を計算する場合、以下のように入力します。=SUMIF(A1:A5, ">=10")
- COUNTIF関数:
指定した条件に一致するセルの数をカウントします。例えば、A1からA10までのセルの中で、値が「Apple」と一致するセルの数をカウントする場合、以下のように入力します。=COUNTIF(A1:A10, "Apple")
- AVERAGEIF関数:
指定した条件に一致するセルの平均値を計算します。例えば、A1からA5までのセルの中で、値が「Red」に一致するセルの平均値を計算する場合、以下のように入力します。=AVERAGEIF(A1:A5, "Red")
- IFERROR関数:
他の関数の結果がエラーを返した場合に代替の値を表示します。例えば、A1とB1の値の割り算の結果を表示しますが、エラーが発生した場合には「Error」と表示する場合、以下のように入力します。=IFERROR(A1/B1, "Error")
④テキスト関数
文字列データを操作するための関数があります。例えば、文字列の連結、抽出、検索、置換などが可能です。
- CONCATENATE関数:
複数のセルやテキストを結合します。例えば、A1セルとB1セルの内容を結合する場合、以下のように入力します。=CONCATENATE(A1, B1)
または短縮形として=A1 & B1
を使用することもできます。 - LEN関数:
指定したセルまたはテキストの文字数をカウントします。例えば、A1セルの文字数を取得する場合、以下のように入力します。=LEN(A1)
- LEFT関数:
指定したセルまたはテキストの左側から指定した文字数の部分を抽出します。例えば、A1セルの最初の3文字を抽出する場合、以下のように入力します。=LEFT(A1, 3)
- RIGHT関数:
指定したセルまたはテキストの右側から指定した文字数の部分を抽出します。例えば、A1セルの最後の4文字を抽出する場合、以下のように入力します。=RIGHT(A1, 4)
- MID関数:
指定したセルまたはテキストの中から、指定した位置から指定した文字数の部分を抽出します。例えば、A1セルの2番目から5文字を抽出する場合、以下のように入力します。=MID(A1, 2, 5)
- UPPER関数:
指定したセルまたはテキストをすべて大文字に変換します。例えば、A1セルの内容を大文字に変換する場合、以下のように入力します。=UPPER(A1)
- LOWER関数:
指定したセルまたはテキストをすべて小文字に変換します。例えば、A1セルの内容を小文字に変換する場合、以下のように入力します。=LOWER(A1)
- PROPER関数:
指定したセルまたはテキストの最初の文字と各単語の先頭文字を大文字に変換します。例えば、A1セルの内容をタイトルケースに変換する場合、以下のように入力します。=PROPER(A1)
⑤日付と時刻関数
日付や時刻に関する操作ができます。例えば、日付の加算、差分の計算、曜日の取得などが行えます。
- TODAY関数:
現在の日付を取得します。例えば、現在の日付を表示する場合、以下のように入力します。=TODAY()
- NOW関数:
現在の日時を取得します。例えば、現在の日時を表示する場合、以下のように入力します。=NOW()
- DATE関数:
指定した年、月、日から日付を作成します。例えば、2022年5月1日を表す日付を作成する場合、以下のように入力します。=DATE(2022, 5, 1)
- TIME関数:
指定した時、分、秒から時刻を作成します。例えば、午後1時30分を表す時刻を作成する場合、以下のように入力します。=TIME(13, 30, 0)
- YEAR関数:
指定した日付から年を取得します。例えば、A1セルに入力された日付の年を取得する場合、以下のように入力します。=YEAR(A1)
- MONTH関数:
指定した日付から月を取得します。例えば、A1セルに入力された日付の月を取得する場合、以下のように入力します。=MONTH(A1)
- DAY関数:
指定した日付から日を取得します。例えば、A1セルに入力された日付の日を取得する場合、以下のように入力します。=DAY(A1)
- HOUR関数:
指定した時刻から時を取得します。例えば、A1セルに入力された時刻の時を取得する場合、以下のように入力します。=HOUR(A1)
- MINUTE関数:
指定した時刻から分を取得します。例えば、A1セルに入力された時刻の分を取得する場合、以下のように入力します。=MINUTE(A1)
- SECOND関数:
指定した時刻から秒を取得します。例えば、A1セルに入力された時刻の秒を取得する場合、以下のように入力します。=SECOND(A1)
⑥ロジカル関数
ロジカル関数では、AND、OR、NOTなどの論理演算子を使用して条件を評価し、結果を返すことができます。
- IF関数:
指定した条件に基づいて結果を返します。条件が真の場合には一つの値を返し、条件が偽の場合には別の値を返します。例えば、A1の値が10以上の場合には「OK」と表示し、それ以外の場合には「NG」と表示する場合、以下のように入力します。=IF(A1>=10, "OK", "NG")
- AND関数:
複数の条件がすべて真の場合に真を返します。例えば、A1セルが10以上かつB1セルが20以上の場合に真を返す場合、以下のように入力します。=AND(A1>=10, B1>=20)
- OR関数:
複数の条件のうちいずれかが真の場合に真を返します。例えば、A1セルが10以上またはB1セルが20以上の場合に真を返す場合、以下のように入力します。=OR(A1>=10, B1>=20)
- NOT関数:
条件の結果を反転させます。真の場合は偽を、偽の場合は真を返します。例えば、A1セルの値が10以上でない場合に真を返す場合、以下のように入力します。=NOT(A1>=10)
- IFERROR関数:
他の関数の結果がエラーを返した場合に代替の値を表示します。例えば、A1とB1の値の割り算の結果を表示しますが、エラーが発生した場合には「Error」と表示する場合、以下のように入力します。=IFERROR(A1/B1, "Error")
- IFNA関数:
他の関数の結果が#N/Aエラーを返した場合に代替の値を表示します。例えば、VLOOKUP関数で値を検索しますが、見つからなかった場合には「Not Found」と表示する場合、以下のように入力します。=IFNA(VLOOKUP(A1, range, 2, False), "Not Found")
⑦フィルタ関数
特定の条件に基づいてデータをフィルタリングする関数があります。例えば、特定の値以上のデータを抽出するためのフィルタリングが可能です。
- FILTER関数:
指定された範囲から、特定の条件に一致するデータをフィルタリングします。例えば、A列のデータが”Red”と一致する行を抽出する場合、以下のように入力します。=FILTER(A:A, A:A="Red")
- SORT関数:
指定された範囲のデータを特定の基準でソートします。例えば、A列のデータを昇順にソートする場合、以下のように入力します。=SORT(A:A)
- UNIQUE関数:
指定された範囲のデータから重複を削除し、一意の値のみを取得します。例えば、A列のデータから重複を削除する場合、以下のように入力します。=UNIQUE(A:A)
- SORTBY関数:
指定された範囲のデータを別の範囲の基準に基づいてソートします。例えば、A列のデータをB列の値でソートする場合、以下のように入力します。=SORTBY(A:B, B:B, 1)
- FILTERXML関数:
XML形式のデータから特定の要素を抽出します。例えば、XMLデータから”price”要素の値を抽出する場合、以下のように入力します。=FILTERXML(xml_data, "//price")
これらはExcelの一部のフィルタ関数の例です。フィルタ関数はデータの抽出や絞り込み、並べ替えなど、データ操作に幅広く活用できます。
⑧金融関数
複利計算、現在価値、将来価値、利子計算など、金融に関連する計算に使用される関数が提供されています。金融関数はキャッシュフローの評価や投資収益率の計算などに役立ちます。
- PMT関数:
固定利率と定期的な支払い回数が与えられた場合に、ローンや投資の支払い額を計算します。例えば、年利率5%のローンの毎月の支払い額を計算する場合、以下のように入力します。=PMT(0.05/12, 12*5, -100000)
- FV関数:
投資の将来価値を計算します。例えば、毎月5000円を年利率3%で10年間投資した場合の将来価値を計算する場合、以下のように入力します。=FV(0.03/12, 12*10, -5000)
- PV関数:
投資の現在価値を計算します。例えば、将来500,000円を年利率4%で5年後に受け取る場合の現在価値を計算する場合、以下のように入力します。=PV(0.04, 5, 0, 500000)
- RATE関数:
ローンや投資の利率を計算します。例えば、毎月の支払いが10,000円で借入額が100万円のローンの年利率を計算する場合、以下のように入力します。=RATE(12*5, -10000, 1000000)
- NPER関数:
支払い額や利率が与えられた場合に、ローンや投資の期間(支払い回数)を計算します。例えば、年利率6%で月々の支払いが20,000円のローンの期間を計算する場合、以下のように入力します。=NPER(0.06/12, -20000, 0, 1000000)
⑨VLOOKUPおよびHLOOKUP関数
表形式のデータから特定の値を検索し、関連する値を取得するために使用されます。
- VLOOKUP関数(縦方向の検索)
VLOOKUP関数は、縦方向にデータを検索し、一致する値を取得します。
VLOOKUP関数の基本構文:VLOOKUP(検索キー, テーブル範囲, 列インデックス, 精度)
- 検索キー: 検索する値やキーを指定します。
- テーブル範囲: 検索対象となる範囲(テーブル)を指定します。一般的にはデータの範囲やテーブルの範囲を指定します。
- 列インデックス: 検索結果を返す範囲内の列の位置(インデックス)を指定します。検索範囲の最左列を1として数えます。
- 精度(オプション): 検索キーの一致条件を指定します。真偽値(
TRUE
またはFALSE
)を指定できます。FALSE
を指定すると、完全一致の検索が行われます。デフォルトはTRUE
で近似一致の検索が行われます。
- HLOOKUP関数(横方向の検索)
HLOOKUP関数は、横方向にデータを検索し、一致する値を取得します。
HLOOKUP関数の基本構文:HLOOKUP(検索キー, テーブル範囲, 行インデックス, 精度)
- 検索キー: 検索する値やキーを指定します。
- テーブル範囲: 検索対象となる範囲(テーブル)を指定します。一般的にはデータの範囲やテーブルの範囲を指定します。
- 行インデックス: 検索結果を返す範囲内の行の位置(インデックス)を指定します。検索範囲の最上行を1として数えます。
- 精度(オプション): 検索キーの一致条件を指定します。真偽値(
TRUE
またはFALSE
)を指定できます。FALSE
を指定すると、完全一致の検索が行われます。
VLOOKUP関数とHLOOKUP関数は、特定の条件に基づいてデータを検索し、関連するデータを取得する場合に非常に便利です。データベースのような形式で情報を格納している場合や、データの参照や結合を行う際によく使用されます。
また、VLOOKUP関数やHLOOKUP関数には、他の関数と組み合わせてさまざまな操作が可能です。例えば、IF関数やINDEX関数と組み合わせることで、より高度な検索や条件付きのデータ取得が可能となります。
⑩SUMIFおよびCOUNTIF関数
SUMIF関数とCOUNTIF関数は、条件に基づいて範囲内のセルの合計値や件数を計算するために使用される関数です。以下にそれぞれの関数の説明と使い方を説明します。
- SUMIF関数:
SUMIF関数は、指定した条件に一致するセルの値の合計を計算します。
SUMIF関数の基本構文:SUMIF(範囲, 条件, 合計範囲)
- 範囲: 条件に基づいて評価される範囲を指定します。
- 条件: セルの値が評価される条件を指定します。例えば、”>10″や”A”などの条件を指定できます。
- 合計範囲: 合計されるセルの範囲を指定します。
以下は、SUMIF関数の具体的な使用例です。
=SUMIF(A1:A10,">5",B1:B10)
上記の例では、A1からA10の範囲で5より大きい値を持つセルのB1からB10の範囲の値の合計を計算します。
- COUNTIF関数:
COUNTIF関数は、指定した条件に一致するセルの数をカウントします。
COUNTIF関数の基本構文:COUNTIF(範囲, 条件)
- 範囲: 条件に基づいて評価される範囲を指定します。
- 条件: セルの値が評価される条件を指定します。例えば、”>10″や”A”などの条件を指定できます。
以下は、COUNTIF関数の具体的な使用例です。
=COUNTIF(A1:A10,">5")
上記の例では、A1からA10の範囲で5より大きい値を持つセルの数をカウントします。
SUMIF関数とCOUNTIF関数は、データの集計や特定の条件に基づくデータの処理に便利です。特定の条件に合致するデータの合計値や件数を素早く計算することができます。条件は数値、テキスト、論理値などさまざまな形式で指定できます。
⑪CONCATおよび&演算子
複数のセルの値を結合して1つの文字列にするために使用されます。
- CONCAT関数:
CONCAT関数は、指定した複数のセルやテキストを結合して1つの文字列を作成します。
CONCAT関数の基本構文:CONCAT(セル1, セル2, ...)
- セル1, セル2, …: 結合したいセルやテキストを指定します。
以下は、CONCAT関数の具体的な使用例です。
=CONCAT(A1, " ", B1)
上記の例では、A1セルの値とスペース、B1セルの値を結合して1つの文字列を作成します。
- &演算子:
&演算子は、セルやテキストを結合するために使用されます。
以下は、&演算子を使用した例です。
=A1 &" "& B1
上記の例では、A1セルの値とスペース、B1セルの値を結合して1つの文字列を作成します。
CONCAT関数と&演算子は、セルの結合やテキストの組み合わせなど、文字列操作に使用されます。どちらの方法を使用するかは好みによります。
⑫AVERAGEIFおよびAVERAGEIFS関数
特定の条件に一致するセルの平均値を計算するために使用されます。
- AVERAGEIF関数:
AVERAGEIF関数は、指定した条件に一致するセルの平均値を計算します。
AVERAGEIF関数の基本構文:AVERAGEIF(範囲, 条件, 平均範囲)
- 範囲: 条件に基づいて評価される範囲を指定します。
- 条件: セルの値が評価される条件を指定します。例えば、”>10″や”A”などの条件を指定できます。
- 平均範囲: 平均値が計算されるセルの範囲を指定します。
以下は、AVERAGEIF関数の具体的な使用例です。
=AVERAGEIF(A1:A10,">5",B1:B10)
上記の例では、A1からA10の範囲で5より大きい値を持つセルのB1からB10の範囲の値の平均値を計算します。
- AVERAGEIFS関数:
AVERAGEIFS関数は、複数の条件に基づいて平均値を計算します。
AVERAGEIFS関数の基本構文:AVERAGEIFS(平均範囲, 範囲1, 条件1, 範囲2, 条件2, ...)
- 平均範囲: 平均値が計算されるセルの範囲を指定します。
- 範囲1, 範囲2, …: 条件に基づいて評価される範囲を指定します。
- 条件1, 条件2, …: セルの値が評価される条件を指定します。
以下は、AVERAGEIFS関数の具体的な使用例です。
=AVERAGEIFS(B1:B10,A1:A10,">5",C1:C10,"<>0")
上記の例では、A1からA10の範囲で5より大きい値を持つセルかつC1からC10の範囲で0以外の値を持つセルのB1からB10の範囲の値の平均値を計算します。
AVERAGEIF関数とAVERAGEIFS関数は、条件に基づいてデータの平均値を計算する際に便利です。条件は数値、テキスト、論理値などさまざまな形式で指定できます。
⑬NETWORKDAYS関数
休日を除いた期間内の営業日の数を計算するために使用されます。NETWORKDAYS関数は、指定された期間内の営業日(週末や指定した祝日を除く日数)の数を計算するために使用される関数です。以下にNETWORKDAYS関数の説明と使い方を示します。
NETWORKDAYS関数の基本構文:NETWORKDAYS(開始日, 終了日, [祝日])
- 開始日: 期間の開始日を指定します。日付を表すセルの参照や直接的な日付の指定が可能です。
- 終了日: 期間の終了日を指定します。日付を表すセルの参照や直接的な日付の指定が可能です。
- 祝日 (オプション): 祝日として考慮する日付の範囲を指定します。セル範囲や日付のリストが指定できますが、省略すると祝日は考慮されません。
以下は、NETWORKDAYS関数の具体的な使用例です。
=NETWORKDAYS(A1,A2,$E$1:$E$10)
上記の例では、A1セルに開始日、A2セルに終了日、E1からE10の範囲に祝日がリストされているとします。この関数は、開始日から終了日までの営業日(祝日を除く)の数を計算します。
注意点として、NETWORKDAYS関数は週末(土曜日と日曜日)をデフォルトで非営業日として扱います。ただし、オプションの引数を使用して週末を変更することもできます。
また、NETWORKDAYS関数は期間内の営業日の数を返すため、営業日の開始日と終了日が同じ場合は1となります。
⑭RANDおよびRANDBETWEEN関数
ランダムな数値を生成するために使用されます。
ExcelのRAND関数とRANDBETWEEN関数は、ランダムな数値を生成するために使用される関数です。以下にそれぞれの関数の説明と使い方を示します。
- RAND関数:
RAND関数は、0以上1未満の範囲でランダムな実数を生成します。
RAND関数の基本構文:RAND()
RAND関数は引数を必要とせず、単純に関数を呼び出すだけでランダムな数値を生成します。
以下は、RAND関数の使用例です。
=RAND()
上記の例では、0以上1未満の範囲でランダムな実数が生成されます。この数値はセルの再計算ごとに変わります。
- RANDBETWEEN関数:
RANDBETWEEN関数は、指定された範囲内の整数をランダムに生成します。
RANDBETWEEN関数の基本構文:RANDBETWEEN(最小値, 最大値)
- 最小値: 生成するランダムな整数の下限を指定します。
- 最大値: 生成するランダムな整数の上限を指定します。
以下は、RANDBETWEEN関数の使用例です。
=RANDBETWEEN(1,100)
上記の例では、1から100の範囲内のランダムな整数が生成されます。
注意点として、RAND関数やRANDBETWEEN関数はセルの再計算ごとにランダムな値が変化します。これにより、ランダムなデータやランダムなシミュレーションを作成する際に役立ちます。
⑮LENおよびTRIM関数
LEN関数とTRIM関数は、文字列の長さを計算したり、文字列の先頭および末尾の空白を削除するために使用される関数です。
- LEN関数:
LEN関数は、指定した文字列の文字数(文字数、空白を含む)を返します。
LEN関数の基本構文:LEN(テキスト)
- テキスト: 文字数を計算する対象の文字列を指定します。セルの参照や直接的な文字列の指定が可能です。
以下は、LEN関数の使用例です。
=LEN("Hello, World!")
この例では、”Hello, World!”という文字列の文字数が返されます。結果は13となります。
- TRIM関数:
TRIM関数は、文字列の先頭および末尾にある空白を削除します。ただし、文字列内の単語間の連続した空白は1つの空白に縮小されます。
TRIM関数の基本構文:TRIM(テキスト)
- テキスト: 空白を削除する対象の文字列を指定します。セルの参照や直接的な文字列の指定が可能です。
以下は、TRIM関数の使用例です。
=TRIM(" Hello, World! ")
この例では、文字列の先頭と末尾にある空白が削除され、”Hello, World!”という文字列が返されます。
LEN関数は文字列の長さを取得する際に使用し、TRIM関数は不要な空白を取り除く際に使用します。これらの関数はテキストデータの処理に便利です。
⑯INDEXおよびMATCH関数
行と列の交差点にある値を検索および取得するために使用されます。
INDEX関数とMATCH関数は、配列や範囲内のデータを検索して取得するために使用される関数です。以下にそれぞれの関数の説明と使い方を示します。
- INDEX関数:
INDEX関数は、指定した範囲からセルの値を取得するために使用されます。
INDEX関数の基本構文:INDEX(範囲, 行番号, 列番号)
- 範囲: データを取得する範囲を指定します。一次元または二次元の範囲を指定できます。
- 行番号: 取得するセルの行番号を指定します。範囲内の行番号と対応しています。
- 列番号: 取得するセルの列番号を指定します。範囲内の列番号と対応しています。
以下は、INDEX関数の使用例です。
=INDEX(A1:C10,3,2)
この例では、A1からC10の範囲内で3行目と2列目にあるセルの値が返されます。
- MATCH関数:
MATCH関数は、指定した値を検索して範囲内の位置を返すために使用されます。
MATCH関数の基本構文:MATCH(検索値, 検索範囲, [一致の種類])
- 検索値: 検索する値を指定します。
- 検索範囲: 検索対象の範囲を指定します。
以下は、MATCH関数の使用例です。
=MATCH("Apple",A1:A10,0)
この例では、A1からA10の範囲内で「Apple」という値が最初に見つかる位置の行番号が返されます。
INDEX関数とMATCH関数を組み合わせることで、指定した条件に基づいてデータを取得したり、検索したりすることができます。
⑰SUBTOTAL関数
フィルタリングされたデータの合計や平均などの計算を行うために使用されます。
SUBTOTAL関数は、範囲内のデータに対して集計関数を適用し、表示または非表示のセルを無視するために使用される関数です。SUBTOTAL関数を使用することで、フィルタリングや集計操作を行った際に正確な集計結果を得ることができます。
SUBTOTAL関数の基本構文:SUBTOTAL(関数番号, 範囲1, [範囲2], ...)
- 関数番号: 適用する集計関数の番号を指定します。0から11の範囲内の値を指定します。具体的な関数番号については後述します。
- 範囲1, 範囲2, …: 集計対象の範囲を指定します。複数の範囲を指定することもできます。
SUBTOTAL関数で使用できる関数番号は、以下の表の通りです:
関数番号 | 集計関数 |
---|---|
1 | AVERAGE |
2 | COUNT |
3 | COUNTA |
4 | MAX |
5 | MIN |
6 | PRODUCT |
7 | STDEV |
8 | STDEVP |
9 | SUM |
10 | VAR |
11 | VARP |
以下は、SUBTOTAL関数の使用例です。
=SUBTOTAL(9, A1:A10)
この例では、A1からA10の範囲内の値の合計を計算します。フィルタリングが適用されている場合、非表示のセルは集計の対象外となります。
SUBTOTAL関数は、データのサブトータルや合計を計算する際に便利です。特にデータのフィルタリングやグループ化を行った場合に、正確な集計結果を得るために使用されます。
⑱INDIRECT関数
文字列として与えられたセル参照を実際のセル参照に変換するために使用されます。
INDIRECT関数は、文字列として与えられた参照を実際のセル参照に変換するために使用される関数です。INDIRECT関数を使用することで、動的な参照やセル範囲の指定が可能となります。
INDIRECT関数の基本構文:INDIRECT(テキスト, [A1形式])
- テキスト: 実際のセル参照を表す文字列を指定します。セルの参照を含んだ文字列やセル内の文字列を指定できます。
以下は、INDIRECT関数の使用例です。
=INDIRECT("A1")
この例では、セルA1の値が返されます。文字列”A1″をINDIRECT関数に渡すことで、実際のセル参照として解釈されます。
また、セルの参照を含む文字列を組み立てることもできます。例えば、セルB1の値が”A1″である場合、次のようにINDIRECT関数を使用できます。
=INDIRECT(B1)
この例では、セルB1の値が参照として解釈され、その参照先のセルの値が返されます。
INDIRECT関数の利点は、動的な参照を作成できることです。例えば、データの範囲を表すセルに参照を記述し、その参照をINDIRECT関数で解決することで、範囲の変更に対応することができます。
⑲IFERROR関数
IFERROR関数は、指定した式がエラーを返す場合に代替の値を返すために使用される関数です。IFERROR関数を使用することで、エラーハンドリングやエラー処理を行うことができます。
IFERROR関数の基本構文:IFERROR(式, 値)
- 式: エラーをチェックするための式を指定します。通常は他の関数や計算式が入ります。
- 値: 式がエラーを返した場合に代替となる値を指定します。
以下は、IFERROR関数の使用例です。
=IFERROR(A1/B1, "Error")
この例では、セルA1をセルB1で割る計算を行います。もし割り算がエラーを返す場合(例: ゼロ除算エラー)、”Error”という文字列が表示されます。
IFERROR関数は、エラーを予期して代替の処理やメッセージを表示したい場合に便利です。エラーハンドリングやデータの正当性チェックに活用することができます。
注意点として、IFERROR関数は特定のエラーのみをキャッチします。それ以外のエラー(例: タイプエラー)に対しては効果がありません。より広範なエラーハンドリングが必要な場合は、ISERROR関数やIF関数と組み合わせて使用することができます。
⑳TEXT関数
数値や日付を指定した書式で表示するために使用されます。例えば、日付を「yyyy/mm/dd」の形式で表示することができます。
TEXT関数は、数値や日付などの値を指定した形式のテキストに変換するために使用される関数です。TEXT関数を使用することで、数値を通貨形式や日付形式、パーセンテージ形式などのテキストに変換することができます。
TEXT関数の基本構文:TEXT(値, 書式)
- 値: 変換する対象の数値や日付などの値を指定します。
- 書式: 値を変換するための書式コードを指定します。詳細な書式コードは後述します。
以下は、TEXT関数の使用例です。
=TEXT(A1, "¥#,##0.00")
この例では、セルA1の値を通貨形式(円記号と3桁カンマ区切り、小数点以下2桁)のテキストに変換します。
さらに、日付の書式指定も可能です。例えば、セルB1に日付が入っている場合、次のようにTEXT関数を使用できます。
=TEXT(B1, "yyyy/mm/dd")
この例では、セルB1の値を「年/月/日」の形式のテキストに変換します。
書式コードには様々なオプションがあります。数値の桁区切り、小数点以下の桁数、パーセンテージ表記、科学的表記など、さまざまな書式を指定することができます。詳細な書式コードについては、Excelのヘルプやドキュメントを参照してください。
TEXT関数は、数値や日付を特定の形式のテキストに変換する際に便利です。特にデータの表示やレポート作成などで使用されます。
㉑SUMIFSおよびCOUNTIFS関数
SUMIFS関数およびCOUNTIFS関数は、複数の条件に基づいて範囲内の値の合計または件数を計算するために使用される関数です。複数の条件を同時に指定することで、より特定のデータの集計が可能となります。
SUMIFS関数の基本構文:SUMIFS(合計範囲, 条件範囲1, 条件1, [条件範囲2, 条件2], ...)
- 合計範囲: 合計する範囲を指定します。この範囲内の値が条件に一致する場合に合計されます。
- 条件範囲1: 条件1を適用する範囲を指定します。
- 条件1: 条件範囲1に対する条件を指定します。
COUNTIFS関数の基本構文:COUNTIFS(条件範囲1, 条件1, [条件範囲2, 条件2], ...)
- 条件範囲1: 条件1を適用する範囲を指定します。
- 条件1: 条件範囲1に対する条件を指定します。
以下は、SUMIFS関数とCOUNTIFS関数の使用例です。
=SUMIFS(C2:C10,A2:A10,">10",B2:B10,"Red")
この例では、A2からA10の範囲内の値が10より大きく、B2からB10の範囲内の値が”Red”と一致する場合に、C2からC10の範囲内の値が合計されます。
=COUNTIFS(A2:A10,">10",B2:B10,"Red")
この例では、A2からA10の範囲内の値が10より大きく、かつB2からB10の範囲内の値が”Red”と一致する場合の件数が数えられます。
㉒DATE関数
DATE関数は、年、月、日の値を指定して日付を作成するために使用される関数です。DATE関数を使用することで、個々の年、月、日の値から日付を作成することができます。
DATE関数の基本構文:DATE(年, 月, 日)
- 年: 日付の年を表す数値を指定します。
- 月: 日付の月を表す数値を指定します。
- 日: 日付の日を表す数値を指定します。
以下は、DATE関数の使用例です。
=DATE(2023,6,15)
この例では、年を2023、月を6、日を15として日付を作成します。結果として、”2023/06/15″という日付が返されます。
また、DATE関数は他の関数や計算式と組み合わせて使用することもできます。例えば、年や月の値を別のセルから参照して日付を作成する場合、次のようにDATE関数を使用できます。
=DATE(A1, B1,1)
この例では、セルA1に年の値、セルB1に月の値が入っている場合、それを元に日付を作成します。日は1としていますが、任意の日付を指定することもできます。
DATE関数は、特定の年、月、日の値から日付を作成する際に便利です。特に日付の操作や計算、データの整理などで使用されます。
㉓TRANSPOSE関数
TRANSPOSE関数は、行と列を入れ替えるために使用される関数です。TRANSPOSE関数を使用することで、行のデータを列に、列のデータを行に変換することができます。
TRANSPOSE関数の基本構文は次の通りです:TRANSPOSE(範囲)
- 範囲: 入れ替えたいデータの範囲を指定します。この範囲内の行と列が入れ替えられます。
以下は、TRANSPOSE関数の使用例です。
=TRANSPOSE(A1:C3)
この例では、セルA1からC3までの範囲内のデータを入れ替えます。元の範囲が3行×3列である場合、TRANSPOSE関数を使用することでデータは3列×3行に入れ替わります。
注意点として、TRANSPOSE関数は入力範囲と出力範囲のサイズが一致している必要があります。つまり、元の範囲が3行×3列であれば、出力範囲も3列×3行になります。
TRANSPOSE関数は、データの再配置や特定の形式でデータを表示する際に便利です。行と列を入れ替えることでデータの見やすさや処理のしやすさを向上させることができます。
㉔RANK関数
RANK関数は、数値の範囲内での順位を計算するために使用される関数です。RANK関数を使用することで、数値がどれくらい大きいかまたは小さいかの順位を割り当てることができます。
RANK関数の基本構文:RANK(数値, 範囲, [昇順])
- 数値: 順位を計算するための数値を指定します。
- 範囲: 数値を比較する範囲を指定します。
以下は、RANK関数の使用例です。
=RANK(A1, A2:A10)
この例では、セルA1にある数値をA2からA10の範囲内の数値と比較し、順位を計算します。デフォルトでは昇順で順位が計算されます。
=RANK(A1, A2:A10,0)
この例では、セルA1にある数値をA2からA10の範囲内の数値と比較し、降順で順位を計算します。引数として0を指定することで降順の順位が計算されます。
RANK関数は、数値の大小に基づいて順位を計算する際に便利です。データのランキングや順序付け、競技結果の順位付けなどに使用されます。
なお、RANK関数は重複する値がある場合、同じ順位が割り当てられます。例えば、複数の数値が同じ最高値を持つ場合、それらには同じ順位が割り当てられます。この挙動を変更するためには、適切な式や条件を使用する必要があります。
㉕NPV関数
NPV関数は、一連の現金フローに対して正味現在価値を計算するために使用される関数です。NPV(Net Present Value)は、将来の現金フローを現在価値に変換して、投資やプロジェクトの収益性を評価するために利用されます。
NPV関数の基本構文:NPV(割引率, 現金フロー1, [現金フロー2, ...])
- 割引率: 現金フローの現在価値を計算するために使用する割引率を指定します。通常、投資の収益率や財務モデルに基づいて設定されます。
- 現金フロー1, 現金フロー2, …: 現金フローの値を指定します。これらは特定の期間における現金の受け入れまたは支払いを表します。
以下は、NPV関数の使用例です。
=NPV(0.1, B2:B5)
この例では、割引率として0.1(10%)を設定し、セルB2からB5までの範囲に格納されている現金フローの正味現在価値を計算します。
NPV関数は、投資やプロジェクトの収益性を評価する際に便利です。割引率を考慮して将来の現金フローを現在価値に変換することで、プロジェクトの価値や収益性を客観的に評価することができます。
なお、NPV関数では現金フローの最初の年を0期として扱し、それに対しての現在価値を計算します。現金フローの最初の年が投資などの支払いとなる場合、通常は負の値を設定します。
㉖ROUND関数
ROUND関数は、指定した小数位数に丸められた値を返すために使用される関数です。ROUND関数を使用することで、数値を指定した桁数に近似的に丸めることができます。
ROUND関数の基本構文:ROUND(数値, 小数位数)
- 数値: 丸めたい数値を指定します。
- 小数位数: 丸めた後の小数点以下の桁数を指定します。正の値を指定すると、指定した桁数に丸められます。負の値を指定すると、指定した桁数よりも左の桁での丸めが行われます。
以下は、ROUND関数の使用例です。
=ROUND(A1,2)
この例では、セルA1に格納されている数値を小数点以下2桁に丸めます。結果として、指定した小数位数に丸められた値が返されます。
=ROUND(1234.5678, -1)
この例では、数値1234.5678を1桁目(10の位)で丸めます。結果として、1230という値が返されます。
ROUND関数は、数値の整形や表示上の整合性を確保するために便利です。例えば、金額や計算結果を特定の小数位数に丸めることで、読みやすさや正確さを向上させることができます。
㉗EOMONTH関数
EOMONTH関数は、指定した日付を基準にして、月の末日を返すために使用される関数です。EOMONTH関数を使用することで、特定の日付を基準にして月の末日を計算することができます。
EOMONTH関数の基本構文:EOMONTH(基準日, モンス数)
- 基準日: 月の末日を計算するための基準となる日付を指定します。
- モンス数: 基準日から数えて何ヶ月先の末日を求めるかを指定します。正の値を指定すると将来の月を、負の値を指定すると過去の月を参照します。
以下は、EOMONTH関数の使用例です。
=EOMONTH(A1,0)
この例では、セルA1に格納されている基準日を使用して、現在の月の末日を計算します。結果として、現在の月の最後の日が返されます。
=EOMONTH(A2, -3)
この例では、セルA2に格納されている基準日から3ヶ月前の月の末日を計算します。結果として、基準日の3ヶ月前の月の末日が返されます。
EOMONTH関数は、特定の月の末日を求める場合や、期限や契約終了日などを計算する際に便利です。月の末日を正確に計算する必要がある場合に活用することができます。
㉘PMT関数
PMT関数は、定期的な支払い(または受取り)がある場合に、その支払い額を計算するために使用される関数です。PMT関数を使用することで、貸付金利、返済期間、借入金額などを考慮して、毎月の支払い額を計算することができます。
PMT関数の基本構文:PMT(金利, 期数, 借入金額,[未来価値],[開始期])
- 金利: 貸付の年利率や利率の割合を指定します。通常、年利率を月利率に変換して使用します。
- 期数: 返済期間の総数を指定します。通常、月単位で指定します。
- 借入金額: 借入金額または投資額を指定します。
以下は、PMT関数の使用例です。
=PMT(0.05/12,60,10000)
この例では、年利率5%(月利率0.05/12)で、60ヶ月(5年)の返済期間で1万ドルの借入金額を計算します。結果として、毎月の返済額が返されます。
PMT関数は、ローンやリース、投資などの返済計画を作成する際に便利です。特定の条件や金利に基づいて毎月の支払い額を計算することができます。
なお、PMT関数は貸付金利が均等に分布する定期的な支払いの場合に使用されます。金利や支払いのパターンが複雑な場合は、さらに高度な関数や財務モデリング手法を使用する必要があります。
㉙CHOOSE関数
CHOOSE関数は、指定した位置の値を選択して返すために使用される関数です。CHOOSE関数を使用することで、複数の値の中から特定の位置の値を取得することができます。
CHOOSE関数の基本構文:CHOOSE(位置, 値1, 値2, ...)
- 位置: 取得したい値の位置を指定します。位置は1から始まります。
- 値1, 値2, …: 選択肢となる値を順番に指定します。最大で254個までの値を指定することができます。
以下は、CHOOSE関数の使用例です。
=CHOOSE(3,"Apple","Banana","Orange","Grape")
この例では、位置3にある値を選択します。指定した位置が”Apple”, “Banana”, “Orange”, “Grape”の順であるため、結果として”Orange”が返されます。
CHOOSE関数は、特定の位置の値を取得する場合や、条件に応じて値を選択する場合に便利です。例えば、数値や文字列のリストの中から特定の位置の値を取得する場合に使用することができます。
㉚MAXIFSおよびMINIFS関数
MAXIFS関数およびMINIFS関数は、指定した条件に基づいて範囲内の最大値または最小値を返すために使用される関数です。これらの関数を使用することで、特定の条件に合致するデータの中から最大値または最小値を取得することができます。
MAXIFS関数の基本構文:MAXIFS(範囲, 条件範囲1, 条件1,[条件範囲2],[条件2], ...)
- 範囲: 最大値を検索する範囲を指定します。
- 条件範囲1: 判定する条件1を含む範囲を指定します。
- 条件1: 条件範囲1に対する条件を指定します。
- [条件範囲2], [条件2], …: 必要に応じて追加の条件範囲と条件を指定します。
以下は、MAXIFS関数の使用例です。
=MAXIFS(B2:B10,A2:A10,">5")
この例では、範囲B2:B10内で、範囲A2:A10が5より大きいデータの中で最大値を取得します。結果として、条件に合致するデータの最大値が返されます。
同様に、MINIFS関数は指定した条件に基づいて範囲内の最小値を返します。
基本構文や引数はMAXIFS関数と同様です。
=MINIFS(B2:B10,A2:A10,"<3")
この例では、範囲B2:B10内で、範囲A2:A10が3より小さいデータの中で最小値を取得します。結果として、条件に合致するデータの最小値が返されます。
MAXIFS関数およびMINIFS関数は、特定の条件に基づいてデータの最大値または最小値を抽出する場合に便利です。複数の条件を組み合わせることも可能で、より柔軟なデータの抽出が行えます。
Excelと相性のいいツール「RPA」
Excelと相性の良いツールにRPA(Robotic Process Automation)があります。
RPAは、人手で行われるルーチン業務やプロセスを自動化するツールです。ExcelとRPAを組み合わせることで、以下のような利点があります。
データの自動入力と処理
RPAツールを使用してExcelファイルにデータを自動的に入力し、計算や処理を行うことができます。これにより、繰り返しのデータ入力作業や計算作業を効率化し、人的ミスを減らすことができます。
Excelファイルの自動生成
RPAを使用して、特定のデータソースから必要な情報を抽出し、自動的にExcelファイルを生成することができます。例えば、データベースから顧客情報を取得し、それを自動的にExcelファイルに書き込むことができます。
Excelのマクロと統合
Excelはマクロ機能を備えており、VBA(Visual Basic for Applications)を使用して自動化スクリプトを作成することができます。RPAツールはこのマクロ機能と統合することができ、より高度な自動化タスクを実行することができます。
Excelデータの分析とレポート作成
RPAはExcelファイルを自動的に読み取り、データの分析や特定の条件に基づいたレポートの作成を行うことができます。例えば、特定のデータの統計情報やグラフを自動的に生成することができます。
以上のように、ExcelとRPAは相互に補完し合うことで、業務プロセスの自動化やデータ処理の効率化を実現します。
▼下記資料ではExcelをより効率的に活用できるRPAについて詳しく紹介しています。
\事例を含めて5分でRPAがわかる/
▼業界別の活用事例集もご確認できます。
【問い合わせ】業務自動化・効率化のお悩みは、お気軽にご相談ください【相談無料】
DX hackerを運営するBizteXでは、国内初のクラウドRPA「BizteX cobit」、デスクトップRPA「robop」、システム連携ツール「BizteX Connect」を開発・提供しています。
中小企業さまから大手企業さままで豊富な導入実績があり、万全のサポート体制によりお客さま満足度が非常に高いのが自慢です。
RPAの導入に関するお悩みはもちろん、業務効率化や業務の自動化、業務改善に関することなど、御社のお悩みをお聞かせください。
些細なことでも構いません。ぜひお気軽に下記よりお問い合せください。