最初の部分一致する数値を検索
Excelで数値範囲内に特定の数値を含む最初の部分一致の位置を取得する必要がある場合があります。この場合、任意の文字数に一致するワイルドカードであるアスタリスク(*)を組み込んだMATCH関数とTEXT関数が役立ちます。また、その位置にある正確な値も知りたい場合は、INDEX関数を追加するとよいでしょう。
最初の部分一致する数値の位置を取得
最初の部分一致する数値を取得
最初の部分一致する数値の位置を取得
上記のように「345」を含む最初の部分一致する数値の位置を取得するには、ワイルドカードと一緒にMATCH関数とTEXT関数を使用します。345を含む任意の数値に一致させるためには、345を2つのアスタリスク(*)で囲みます。ただし、この操作により数値はテキスト値に変換されます。したがって、TEXT関数を使用して数値範囲内の数値をテキストに変換する必要があります。これにより、MATCH関数が部分一致の位置を正しく見つけられるようになります。
一般的な構文
=MATCH("*"&数値&"*",TEXT(検索範囲,"0"),0)
√ 注: これは配列数式であり、Ctrl + Shift + Enterで入力する必要があります。
- 数値: 指定された最初の部分一致を検索する数値。
- 検索範囲: 最初の部分一致の位置を取得するための数値範囲。
「345」を含む最初の一致する数値の位置を取得するには、次の数式をセルE6にコピーまたは入力し、結果を得るためにCtrl + Shift + Enterを押してください:
=MATCH("*"&345&"*",TEXT(B5:B16,"0"),0)
または、セル参照を使用して数式を動的にすることができます:
=MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0)
√ 注: セル参照/数値とテキストを結合するには、アンパサンド(&)を間に追加する必要があります。また、テキストは二重引用符で囲む必要があります。
数式の説明
=INDEX("*"&345&"*",TEXT(B5:B16,"0"),0)
- TEXT(B5:B16,"0"): TEXT関数は、すべての数値を B5:B16 フォーマットコードでテキストに変換します “0”したがって、次のようなテキスト配列が得られます: {"56445";"21354";"84265";"54342";"34545";"45632";"87954";"68546";"34567";"75681";"33587";"16467"}.
TEXT関数についてさらに詳しくはこちらをクリックしてください。 - INDEX("*"&345&"*""*"&345&"*",TEXT(B5:B16,"0"),0) = INDEX("*"&345&"*""*"&345&"*",{"56445";"21354";"84265";"54342";"34545";"45632";"87954";"68546";"34567";"75681";"33587";"16467"},0): 検索値 "*"&345&"*" は、「345」という文字列を含む任意の文字列に一致します。345が文字列内のどの位置にあっても関係ありません。match_type 0 は、MATCH関数に配列内の最初の完全一致の位置を見つけるように指示します。したがって、MATCHは5を返します。
最初の部分一致する数値を取得
以下に示すように、MATCHによって提供される位置に基づいて最初の部分一致する数値を取得するには、INDEX関数に注目しましょう。
一般的な構文
=INDEX(MATCH(戻り範囲,"*"&数値&"*",TEXT(検索範囲,"0"),0))
√ 注: これは配列数式であり、Ctrl + Shift + Enterで入力する必要があります。
- 戻り範囲: 組み合わせた数式が最初の部分一致を返す範囲。
- 数値: 指定された最初の部分一致を検索する数値。
- 検索範囲: 最初の部分一致を取得するための数値範囲。
「345」を含む最初の一致する数値を取得するには、次の数式をセルE7にコピーまたは入力し、結果を得るためにCtrl + Shift + Enterを押してください:
=INDEX(MATCH(B5:B16,"*"&345&"*",TEXT(B5:B16,"0"),0))
または、セル参照を使用して数式を動的にすることができます:
=INDEX(MATCH(B5:B16,"*"&E5&"*",TEXT(B5:B16,"0"),0))
数式の説明
=INDEX(B5:B16,MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0))
- MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0) = 5: 詳細なプロセスを見るにはこちらをクリックしてください。
- INDEX(B5:B16B5:B16,MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0)) = INDEX(B5:B16B5:B16,5): INDEX関数は、戻り範囲B5:B16の5番目の値を返します。それは34545です。
関連する関数
ExcelのMATCH関数は、指定された範囲内で特定の値を検索し、その値の相対的な位置を返します。
TEXT関数は、Excelで指定された形式で値をテキストに変換します。
ExcelのINDEX関数は、指定された範囲または配列から位置に基づいて表示される値を返します。
関連する数式
Excelで範囲内の特定のテキスト文字列を含む最初の部分一致の位置を取得するには、ワイルドカード文字であるアスタリスク(*)や疑問符(?)を使用したMATCH数式を利用できます。
Excelで数値データセット内の検索値の最も近い一致を探すには、INDEX、MATCH、ABS、MIN関数を一緒に使用できます。
場合によっては、複数の条件に基づいて最も近いまたは近似一致値を検索する必要があるかもしれません。INDEX、MATCH、IF関数を組み合わせることで、Excelで迅速にこれを実行できます。
このチュートリアルでは、列と行にリストされた複数の条件に基づいて近似一致を検索する方法について説明します。INDEX、MATCH、およびIF関数の助けを借りて、Excelスプレッドシートでこれを行う方法を解説します。
最高のオフィス生産性ツール
Kutools for Excel - あなたを群衆から際立たせるツール
🤖 | Kutools AI Aide: 次の要素に基づいてデータ分析を革新:インテリジェント実行|コード生成 |カスタム数式の作成|データの分析とチャートの生成 |Kutools機能の呼び出し… |
人気の機能:重複を見つける、ハイライトする、または特定する | 空白行を削除 | データを失うことなく列やセルを結合 | 数式を使わずに丸める... | |
スーパー VLookup:複数条件 | 複数値 | 複数シート間 | ファジーマッチ... | |
高度なドロップダウンリスト:簡単なドロップダウンリスト | 従属ドロップダウンリスト | 複数選択可能なドロップダウンリスト... | |
列マネージャー:指定した数の列を追加 | 列を移動 | 非表示の列の可視化ステータスを切り替え | 列を比較して同じ&異なるセルを選択... | |
特徴的な機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト) | 日付ピッカー | ワークシートの統合 | セルの暗号化/復号化 | リストによるメール送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線のフィルタリング...)... | |
上位 15 のツールセット: 12 個のテキストツール (テキストの追加, 特定の文字を削除...) | 50以上 のチャート タイプ (ガントチャート...) | 40以上の実用的な 数式 (誕生日に基づいて年齢を計算...) | 19 個の挿入ツール (QRコードの挿入, パスからの画像挿入...) | 12 個の変換ツール (単語に変換, 通貨変換...) | 7 個のマージ&分割ツール (高度な行のマージ, Excelセルの分割...) | ... さらに多くのツール |
Kutools for Excel は300以上の機能を誇り、必要なものがワンクリックで手に入ります...
Office Tab - Microsoft Office(Excel含む)でタブ形式の閲覧と編集を有効にする
- 数十の開いている文書を1秒で切り替える!
- 毎日数百回のマウスクリックを減らし、マウス手から解放されます。
- 複数の文書を閲覧・編集する際、生産性が50%向上します。
- Chrome、Edge、Firefoxのように、タブ機能をOffice(Excel含む)にもたらします。