連続したデータの位置を一発で取得出来たら...
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/ezgif-3-774d505745.gif)
直ぐデータの詳細を確認することが出来ますよね(^^)
今回は検索した位置を取得するMATCH関数の使い方についてご紹介していきます。
![OYAKUN](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/oyakun.png)
-
-
INDEXとMATCH関数の組み合わせで行列の交差値が一瞬で取得出来るよ
膨大なデータ表から「行と列の交差する値」を一発で取得出来たら... 作業スピードの大幅UPに繋がりますよね(^^) 今回 ...
続きを見る
スプレッドシートMATCH関数の使い方|定義
MATCH関数はセル範囲の中で指定した項目を検索し、該当する位置を返します。
MATCH関数
使用例
- MATCH("日曜日",A2:A9,0)
- MATCH(DATE(2012,1,1),A2:F2)
構文
MATCH(検索キー, 範囲, 検索の種類)
- 検索キー - 検索する値です(42、"猫"、I24 など)。
- 範囲 - 検索対象の 1 次元配列です。
先にご紹介したindex関数と一緒に使うことで、複数のセル範囲を含めた検索や検索値がどの位置にあっても探すことが可能になります。
参考|スプレッドシートindex関数の使い方|行列指定で値を取得!
「index関数」はmatch関数と同様に覚えておきたい関数の1つです。
match関数を習得して " 膨大なデータ "の検索を、一瞬で終わらせちゃいましょう(^^)
スプレッドシート・match関数の使い方はExcelと同じ
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/33006891c49eabf84ed4b048fa020949.png)
match関数は下記3つを設定します。
- 検索値
- セル範囲(1つの行・列)
- 検索の種類
特に検索値とセル範囲は必須ですが、検索の種類は省略可能です。
項目 | 範囲指定の有無 |
---|---|
検索値 | 指定必須。検索するキーを設定(数値、文字列、論理値)します。 |
セル範囲 | 指定必須。検査・検索範囲。 |
検索の種類 | 省略可。取得する値の最小〜最大値or完全一致を設定します。 |
index関数と違って、スプレッドシート・Excel間でmatch関数の使い方に違いはありません。
スプレッドシート・match関数の使用例
下記図の検索セル(B2)の位置が、指定したセル範囲の何行目にあるのかmatch関数で求めます。
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/d7d72934e6be4172d22f37971f8fb702-300x169.png)
1. MATCH関数の検索値を決める
初めにmatch関数の「検索値」を指定します。
=match(B2,
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/c399560b487a386ea6d9089b2a3c2b20-300x286.png)
2. 検索する「セル範囲」を指定する。
検索範囲の始点セル位置が、1行(列)目として設定されます。
=match(B2,B2:B6,
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/c18d7fa896a2b7365dcadfa73b87cd8e-300x234.png)
検索範囲は検索値と離れた行・列でも動作します。但し同時に2つ〜の行・列を範囲指定することは出来ません。
3. 検索の種類を指定する。
省略可ですが、0(完全一致)を設定しました。これで指定した検索セルの位置を取得出来ます。
=match(B2,B2:B6,0)
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/1b098a2b1e65f81c94ac3ed974c43a1c-300x208.png)
「検索の種類」について詳細の具体例は後述します。
本章のmatch関数で取得した値は1(行目)となります。
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/a40559b482384dd8389c2039767fa145-300x209.png)
実際のスプレッドシート↓
sample スプレッドシートでmatch関数を使ったsample
ではmatch関数の「検索の種類」について具体例を挙げながら、詳細を見ていきましょう。
match関数・検索の種類(照合の型)の使い方
match関数の「検索の種類」は省略可能ですが、セル範囲の値によっては設定しないと狙った値が取得出来ません。
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/12c08cb70cb6d15a9ba507c06fea2973.png)
match関数・検索の種類が1(又は省略)
検索の種類が1又は省略の時、検索値以下の最大値の位置を返します。
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/1f30fa6a0222d83889c2bdf08aef97bb.png)
検索値の最左端位置(列)を取得しているのが分かります。
検索の種類「1」の優先順
- 数字:1〜9の順
- 英字:A 〜 Zの順
- 平仮名:あ 〜 んの順
- 真偽:FALSE 〜 TRUEの順
上図のsampleです↓
samplematch関数・検索の種類1
FALUSE、TRUEのみ返される値が「2(FALSEが優先)」になることに注意。
match関数・検索の種類が0
検索の種類が0の時、検索値と完全一致する値の位置を返します。
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/be4cb629d6c75bb4875c1bb043a0a39d.png)
指定した検索値の位置(列)がそのまま返されていることが分かりますね。
sample match関数・検索の種類2
match関数・検索の種類が-1
検索の種類が-1の時は検索値以上の最小値の位置を返します。
![](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/2017/10/8b5f65234370a404af059c86cd0367a3.png)
検索値に対して最右端のセル位置(列)を返しているのが分かります。
検索の種類「-1」の優先順
- 数字:9〜1の順
- 英字:Z 〜 Aの順
- 平仮名:ん 〜 あの順
- 真偽:TRUE 〜 FALSEの順
sample match関数・検索の種類3
FALSE、TRUEのみ返される値が「1(TRUE優先)」になることに注意。
検索の種類は1、0、-1と3種類ありますが、基本的には検索値と完全一致の「0」を使用するのではないでしょうか。
ここでは省略の際にデフォルトは「1」で設定されることを覚えておくと良いでしょう。
![OYAKUN](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/oyakun.png)
基本編 同じシート内でスプレッドシートのプルダウンを連動させる方法
スプレッドシート・match関数の使い方|まとめ
というわけでmatch関数の使い方についてはご理解いただけたでしょうか?
- 検索値を指定しよう
- 検索列・行を選択して
- 検索の種類を設定して
- 検索値の位置を取得!
スプレッドシートとExcelでのmatch関数の使用方法に違いはありませんが、検索の種類の設定値を誤ると全く違う値を返すことがあります。
特に「1」と「0」の違いは、よく理解しておく必要があります。
次回はindex関数とmatch関数を組み合わせた、超便利な使用方法をご紹介します!
![OYAKUN](https://xn--t8j3bz04sl3w.xyz/wp/wp-content/uploads/oyakun.png)