
エクセルの関数とは?関数でできること【初心者向け】【簡易的なプログラミング】
関数は、意外と便利なもので、場合によっては、簡易的なプラグラミングと同等の事ができます。マクロを使わなくても、関数でなんとかなることもあります。
- 色々な計算(指定範囲の合計など)
- 条件Aの時はBの結果、条件Aじゃない時はCの結果、のような条件分岐
- 指定した文字列を含むセルの個数カウント
- 指定セル文字列を一部表示
- 表構造のようなデータを検索し、一致した値と同じ行、または列にあるデータを表示
- 今日の日付の表示
- シート名、ブック名の表示
- 第一月曜日など特定の日付を表示
- 重複抽出し空白を詰めて、表示
さらに、エクセルの関数は、複数の関数を組み合わせて使用することもできるので
ここには書ききれない程、関数はたくさんの事ができます。
複数組み合わせると、複雑になるので
理解の早い方以外は、まずは、組み合わせず、単体で使用してみて練習しましょう。
なにかを自動で操作とかでなく、単純な処理であれば、関数で実現可能な場合が多いです。
マクロ使わず、なんとか関数で処理したいって方はこのサイト参考にしていただくといいと思います。
教えてほしい事があれば、ぜひ、コメントよろしくお願いします。
自動で操作したい場合は、マクロは必須になります。
マクロについてはこちら(エクセルマクロでできる事例紹介)で紹介しています。
余談ですが、実は、マクロ(VBA)を覚えると、関数も自分で作成できちゃうんです。
今回は、よく使う関数だけさらっとここで紹介したいと思います。

< ---目次--- >
●基本編
◆関数の使い方、入力方法
セルに「=」半角のイコールを入力後、特定の関数を入力してください。
詳細はこちら(関数の使い方、入力方法)をご覧ください。
最近は、少し、ローマ字を入力すると、関数候補が表示され、かなり便利になりました。
◆<SUM>
指定範囲の合計

=SUM(数値1,[数値2],・・・)
指定された範囲の数値を合計します。
これは、説明するまでもないと思いますので、直感で使用しても、問題なく扱えるでしょう。
そもそも「オートSUM」というコマンドがあるので、それの「合計」と「SUM」は同じ機能です。
エクセルの「SUM」はショートカットキーがあります。
「SHIFT」+「ALT」+「=」で、「オートSUM」の「合計」と同等の事ができます。
「オートSUM」を使う方はショートカットキーが非常にオススメです。
◆<IF>
条件分岐

=IF(論理式,[値が真の場合],[値が偽の場合])
「論理式」・・・
比較したいセルを演算子等を使って、その式が正しいか、正しくないか、判断できる式を記入します。
いわゆる、条件式です。
「[値が真の場合]」・・・
「論理式」が真(正しい)の場合の時に実行される数式を記入します。
「[値が偽の場合]」・・・
「論理式」が偽(正しくない)の場合の時に実行される数式を記入します。
・説明
エクセル関数では、基本となる、「IF」で条件分岐の機能があります。
セルの値がこの時は、こうしたいって時に使えます。
「[値が偽の場合]」の場合の時に、さらにIFも使えちゃいます。
なので、条件Aの時は結果B、そうじゃなくて条件Cの時は結果D、条件Cでもない時は結果E
みたいな感じにできます。
ですが、こうなってくると、少しややこしくなるので、慣れてからするのと、業務で使用する場合は、他人から見てもわかりやすい関数になるようにこころがけましょう。
むやみに組み合わせればいいというものでもありません。
エクセルの関数「IF」の詳細はこちら()で紹介しています。*****
◆<COUNTIF>
指定した文字列を含むセル個数カウント

=COUNTIF(範囲,検索条件)
「範囲」・・・
検索したい範囲を指定。
「検索条件」・・・
検索したい文字列を指定。
・説明
指定した「範囲」内にある、「検索条件」にて指定した”文字列”があるセルの個数を表示する機能です。
「検索条件」に通常通り”文字列”を指定するだけでは、完全一致するセルの個数しか表示してくれず、「範囲」内に検索したい文字列を含むセルの個数を表示したい時は、少し、特殊なことをしなければいけません。
例えば、セル内に「田中」を含む文字列がある個数を調べたい時は
「検索条件」に「”*田中*”」と指定しなければいけません。
エクセルの関数「COUNTIF」の詳細はこちら()で紹介しています。*****
◆<LEFT><RIGHT><MID>
指定セルの文字列一部表示

=LEFT(文字列,[文字数])
「文字列」・・・
文字列を抜き出したいセルを指定、又は、文字列を入力。
「[文字数]」・・・
左から何文字抜き出すか指定する。(省略可)
・説明
「文字列」で指定した文字列の左から指定文字数抜き出して表示することができる機能です。
「[文字数]」は省略可能なので、省略すると、1文字だけ抜き出します。

=RIGHT(文字列,[文字数])
「文字列」・・・
文字列を抜き出したいセルを指定、又は、文字列を入力。
「[文字数]」・・・
右から何文字抜き出すか指定する。(省略可)
・説明
「文字列」で指定した文字列の右から指定文字数抜き出して表示することができる機能です。
「[文字数]」は省略可能なので、省略すると、1文字だけ抜き出します。
「LEFT」とほぼ同じですね。

=MID(文字列,開始位置,文字数)
「文字列」・・・
文字列を抜き出したいセルを指定、又は、文字列を入力。
「開始位置」・・・
左から何文字目から抜き出すか指定します。
「文字数」・・・
「開始位置」で指定した位置から、何文字抜き出すか指定します。
・説明
左から抜き出すという点では、「LEFT」とほぼ同じなのですが、左の途中から抜き出す事ができます。
正直言っちゃうと、「LEFT」を使わなくても、「MID」だけで「LEFT」と同じ事ができます。
「MID」は「LEFT」の上位互換みたいなイメージですが、「LEFT」単体でも使いやすかったりするので
覚えておきましょう。
エクセルの関数で文字列操作「LEFT,RIGHT,MID」の詳細はこちら()で紹介しています。*****
◆<VLOOKUP>
表構造のようなデータを検索し、一致した値と同じ行にある指定列データを表示

=VLOOKUP(検索値,範囲,列番号,[検索方法])
「検索値」・・・
検索する値を指定
「範囲」・・・
検索したい範囲を指定します。
「列番号」・・・
検索する値が一致した時に、表示したい列番号を指定
「範囲」で指定したセル範囲の中で一番左の列が「1」となるので注意。
「[検索方法]」・・・
「FALSE」か「TRUE」を指定する。
基本は、「FALSE」を指定しましょう。
・説明
指定した「範囲」の一番左の列で「検索値」を検索し、一致すれば、その行で「列番号」に基づいた列にあるセルの値を表示する。
わりと、扱いやすく、初心者には人気の関数です。
ただし、指定した「範囲」の一番左の列でしか「検索値」を検索できないので
それ以外でも、「検索値」を検索したい時は「INDEX」と「MATCH」を組み合わせる必要があります。
エクセルの関数「VLOOKUP」「INDEX」「MATCH」の詳細はこちら()で紹介しています。*****
◆<TODAY>
今日の日付の表示

=TODAY()
・説明
引数が指定しなくていい関数です。
今日の日付が表示されます。次の日開くとその時の日付が表示されます。
◆<CELL>
シート名、ブック名の表示

=CELL(検査の種類,[参照],・・・)
「検査の種類」・・・
知りたいセルの情報を指定します。
入力時にリストが表示されますので、そこから選択しましょう。
「[参照]」・・・
知りたいセルの指定します。
・説明
セルのアドレスやセルの幅を関数で知ることができます。
有名で最も使う「検査の種類」は「filename」でしょう。
「filename」を使えば、関数でシート名やブック名を表示できます。
エクセルの関数「CELL」の詳細はこちら()で紹介しています。*****
●応用編
◆第一月曜日など特定の日付を表示
=DATE(A1,B1,"1")+7-WEEKDAY(DATE(A1,B1,"1")-1,2)
「A1」・・・西暦
「B1」・・・月
上記の関数で指定西暦、指定月の第一月曜日を表示できます。
詳細はこちら()の記事で紹介していますので、ちゃんと意味まで理解したい方は、ご覧ください。
理解しなくてもセル「A1」「B1」の参照セルを変えれば応用はできますので、理解するのは必須ではないです。
西暦と月を一緒のセルで判断したい方は、こちらを使用してください。
=DATE(YEAR(A1),MONTH(A1),"1")+7-WEEKDAY(DATE(YEAR(A1),MONTH(A1),"1")-1,2)
「A1」・・・日付
◆重複抽出して、空白を詰めて、表示
複数のデータがあり、同一の値が混在しているデータを集計したい時ありますよね。
関数で重複から抽出し、空白を詰めて表示できます。
作業列が必要になりますが、可能です。
詳細は別の記事で紹介していますのでこちら(重複抽出して空白詰め)をご覧ください。