エクセル関数_その2
![アイキャチ画像](/img/doa9a1II/Eyecatch.webp)
Excelが苦手なあなたに、ビジネスの場で知っておいた方が応用が効くの関数についてご紹介します!
SUMIF関数
通常のSUM関数では手間が掛かってしまうような分類毎の合計値を求めたいときに使う事が多いです。 では早速文法を見ていきましょう! 文法を見てみるとやや難しそうな事が書いてあります。 それぞれ分解して一つ一つ解説していきます。 合計したい値の入っている範囲を指定します。 指定する条件の値が含まれる範囲を指定します。 合計する条件を指定します。文法
合計範囲
条件範囲
条件
A | B | C | |
---|---|---|---|
1 | 3 | ほげ | |
2 | 5 | ほげ | |
3 | 10 | hoge |
では実際に上の表でSUMIF関数を使ってみましょう!
![](/xxxdeta-box/xxxOLD/0002.png)
答え 10
=SUMIF(A1:A3,B1:B3,"ほげ")
答え 8
上の表では条件以外は同じ数式になってますが計算結果は別々になっています。
この様に条件で指定した値のある行で合計値を求める事ができました。
条件には今回取り扱った『文字列』意外にも数式・数値・参照などを指定することも出来るので使うときは色々試してみましょう!
SUMIFS関数
通常のSUMIF関数ではできない複数条件による合計値を求めたいときに使う事が多いです。
文法
では早速文法を見ていきましょう!
![](/xxxdeta-box/xxxOLD/0001.png)
パッと見た感じSUMIF関数と同じですが『条件範囲+条件』の組み合わせを最大255個まで指定できます。
それぞれ分解して一つ一つ解説していきます。
合計範囲
合計したい値の入っている範囲を指定します。
条件範囲(n)
指定する条件の値が含まれる範囲を指定します。
条件(n)
合計する条件を指定します。
上の図で赤い枠で囲っている『条件範囲+条件』の組み合わせを1セットで考え、絞り込みたい条件の分だけセット数が増えていくイメージです。
実際に表を使って動きを確認してみましょう!
A | B | C | |
---|---|---|---|
1 | 3 | ほげ | 8月分 |
2 | 5 | ほげ | 9月分 |
3 | 10 | hoge | 9月分 |
では実際に上の表でSUMIFS関数を使ってみましょう!
今回は複数条件を指定しています。
![](/xxxdeta-box/xxxOLD/0002.png)
答え 0
=SUMIFS(A1:A3,B1:B3,"ほげ",C1:C3,"8月分")
答え 3
上の式では水色の部分が合計範囲、緑色の部分が条件範囲1と条件1、ピンク色の部分が条件範囲2と条件2となっております。
今回の場合は名前が『ほげ』で尚且つ『8月分』の合計になっております。
さらに条件を増やす事でより複雑な表計算を実行する事が可能です。
是非試してみて下さい!
INDEX関数
様々なエクセルブックで頻繁に登場する関数なので必ず覚えておきましょう!
文法
では早速文法を見ていきましょう!
![](/xxxdeta-box/xxxOLD/0001.png)
参照
1つもしくは複数のセル参照を指定します。(表やデータベースetc)
※複数の参照先を指定する場合は『()』括弧で参照を囲い、『,』カンマで区切ります。
行番号
指定した参照で何行目かを指定します。
列番号
指定した参照で何列目かを指定します。
領域番号
複数個の参照を指定した場合に、何番目の参照先にするか番号で指定します。
※参照が1つの場合は省略できます。
A | B | C | |
---|---|---|---|
1 | 3 | ほげ | 8月分 |
2 | 5 | ほげ | 9月分 |
3 | 10 | hoge | 9月分 |
上の表で実際に関数を使った場合動きはどんな感じなのか見てみましょう!
![](/xxxdeta-box/xxxOLD/0004.png)
答え 3
これだけだとわかりづらいので別の例も見てみましょう!
A | B | C | |
---|---|---|---|
1 | 3 | ほげ | 8月分 |
2 | 5 | ほげ | 9月分 |
3 | 10 | hoge | 9月分 |
今回は3行目の2列目にあるセルの値を返す様に数式を組みます。
![](/xxxdeta-box/xxxOLD/0002.png)
答え hoge
この様にINDEX関数では選択した範囲の何行目の何列目かを指定して交差した部分の値を答えとして出します。
単体で使う場面はあまりなく他の関数と組み合わせて使う事で本来の力を発揮します。
関数の組み合わせについては次回紹介する予定なので気になる方は是非チェックしてみてください。
COUNTIFS関数
本来ならCOUNT関数やCOUNTA関数・COUNTIF関数を紹介してからこの関数を紹介するべきだとは思いますが、今回紹介するCOUNTIFS関数は工夫次第で様々な事ができるので今回はこの関数について紹介します。
文法
では文法を見てみましょう!
![](/xxxdeta-box/xxxOLD/0001.png)
検索範囲
検索するセル範囲を指定します。
検索条件
検索したい条件を『文字列、数値、値、参照、数式』などで指定する。
実際にどのように動くか表をで確認してみましょう。
A | B | C | |
---|---|---|---|
1 | hoge | ほげ | |
2 | hoge | ほげ | |
3 | hoge | ホゲ |
今回は上の表を使って『A列はhoge』尚且つ『B列はほげ』の列が何個あるか関数を使ってカウントしてみます。
計算式に関しては以下の通りです。
![](/xxxdeta-box/xxxOLD/0002.png)
答え 2)
しっかりと条件に一致する列を数えることが出来ました。
この様にCOUNTAIFS関数では定した条件に一致する値が選択範囲にいくつあるかカウント指する事ができます。条件は最大で255個まで指定することができるので条件次第では正確な絞り込みを行った計算結果を得ることが可能です。
複雑な関数ではないので機会があればぜひ使ってみてください。
OFFSET関数
この関数は今回紹介する関数のなかで一番複雑な関数です。
ですがこの関数を使いこなせるようになるとほかの関数との組み合わせもバリエーションが豊富なので、変化に強い計算式を組んだり複雑な処理を組むことが出来るようになります。
文法
早速文法を見ていきましょう!
![](/xxxdeta-box/xxxOLD/0001.png)
基準
基準とするセルを指定します。
行数
基準とするセルから何行移動するか数値で指定します。
列数
基準とするセルから何列移動するか数値で指定します。
高さ
移動した基準セルから何行分の範囲を参照するか数値で指定します。
幅
移動した基準セルから何列分の範囲を参照するか数値で指定します。
このように指定する値が多いので覚えるのが大変ですね。
実際の関数の動きを下の表のを見ながら確認してみましょう。
A | B | C | |
---|---|---|---|
1 | hoge | ほげ | 1 |
2 | hoge | ほげ | 2 |
3 | hoge | ホゲ | 3 |
では今回は上の表で『A1』を基準セルとして2行目2列目から2×2の範囲を参照するよう関数をセットしましょう。
数式は下記のようになります。
![](/xxxdeta-box/xxxOLD/0004.png)
答え B2:C3を参照する
正直何が起きたのかこれだけではわかりづらいですよね。
どのようにB2:C3を参照することができたのか下の図で確認してみましょう。
A | B | C | |
---|---|---|---|
1 | hoge | ほげ | 1 |
2 | hoge | ほげ | 2 |
3 | hoge | ホゲ | 3 |
上の表を見ると基準セルから一マス下に下がって、そこから右に一マスずれたセルから2×2の範囲を参照しています。
実際には上の表のような動きをするわけではありませんが個人的にこの関数を説明する際に一番しっくりきた動きになります。
このようにOFFSET関数は指定した条件に応じたセル範囲を取得することができる関数です。
この関数に関して単体で使うことは滅多になくこの性質を利用してほかの関数と組み合わせて使う使い方が基本的な使い方になります。
非常に理解が難しいと思うのでOFFSET関数=セル範囲を関数で取得することができると覚えておいて下さい。
INDIRECT関数
単体では使う事がほとんどない関数ですが、参照を返してくれるので名前の定義と使う事でチカラを発揮します!
文字列で参照を行うので、あらかじめ名前の定義でなどで下準備しておく必要がありますが表計算をする時に参照先をいちいち修正する必要がなくなったり、メンテナンス性を上げる事ができるので手間は掛かりますがお勧めです。
完全に理解する事は難しい関数ですが他の関数と組み合わせて使うと工夫次第で様々な事が出来るので覚えておきましょう!
早速文法を見ていきましょう!
![](/xxxdeta-box/xxxOLD/0001.png)
上記の様にシンプルな文法になっています。参照形式に関しては省略ができ殆どの場合入力不要です。
A | B | C | |
---|---|---|---|
1 | |||
2 | hoge | ||
3 |
実際の関数がどの様に動くのか上の表で確認してみましょう!
![](/xxxdeta-box/xxxOLD/0004.png)
答え hogeを参照する
これだけを見ると少し感の良い人であれば名前の定義で『=hoge』で参照するのと同じと思うはずです。
確かにそうなんですが次の例はどうでしょうか?
A | B | C | |
---|---|---|---|
1 | |||
2 | hoge | ||
3 | hoge |
先程の例と同じく参照はhogeを参照しているのですが指定した文字は『C3』です。
今回は何が起きて『hoge』を文字として指定した時と何が違うのでしょう?
![](/xxxdeta-box/xxxOLD/0002.png)
答え hogeを参照する
INDIRECT関数は指定された文字列を参照するので仮に指定がセル参照であったとしても参照した値で参照をする事が可能です。
従って今回の場合は『C3』で参照した値である『hoge』という文字列を使って『hoge』を参照している状態です。
INDIRECT関数を使わず同じことをすると『hoge』はただの文字列になってしまい名前の定義をした範囲を参照しません。
つまり参照で得た値をさらに参照するだけになりあまり意味がないのです。
IFERROR関数
ここでいうエラーとは何かしら処理ができなかった時にでる「#N/A」などの表示が出てしまった時です。
そもそもエラー表示の意味を知ってますか?
正直私もなんとなく何かダメでエラーなんだなくらいしか理解していませんでした。
まずはエラーにどの様な種類があるか確認してみましょう!
今回紹介する関数では上の表にあるようなエラーが出た時にエラー値を別の値に置き換える事ができます。
では早速文法を見ていきましょう!
![](/xxxdeta-box/xxxOLD/0001.png)
では実際の動きを見てみましょう!t
A | B | C | |
---|---|---|---|
1 | 10 | ||
2 | 0 | ||
3 | 5 |
まずは10をA1の値を使って割る計算を見てみます。
![](/xxxdeta-box/xxxOLD/0004.png)
答え 1
この場合10÷10=1という計算になるので『1』が計算結果になります。
今度は参照先をB2にして計算してみます。
![](/xxxdeta-box/xxxOLD/0002.png)
答え エラーだよ
参照先をB1にすると10÷0になります。
10を0で割ることは計算上不可能なためエラーになり IFERROR関数のエラーの場合の処理が行われました。
今回はエラー値を『エラーだよ』に変換して値として返されています。
この様に IFERROR関数はエラー値を別の値に変換する事ができるので、計算上エラーが出ると困る場合や表の見栄えを良くするためによく活用されます。
ある程度処理が完成していればその処理を IFERROR関数に入れるだけなので簡単に使う事ができます!