KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

条件付きで最長のテキスト文字列を検索する

著者Amanda Li変更日

このチュートリアルでは、Excel で条件付きで列または行内の最長のテキスト文字列を検索する方法を、INDEXMATCHLENおよび MAX 関数を活用してわかりやすく解説します。

条件1で最も長い文字列を検索

Excel で条件を指定して最長のテキスト文字列を検索するには、どうすればよいですか?

上記の名前一覧からアメリカ出身者の中で最も長い名前を持つ人物を素早く検索するには、INDEX 関数、MATCH 関数、LEN 関数、そして MAX 関数を組み合わせた数式が最適です。まず、LEN 関数で各名前の文字数を求め、MAX 関数がその中から最大値を抽出します。次に、MATCH 関数が最長の名前が最初に現れる位置を特定し、最後に INDEX 関数がその位置に対応する名前を取得します。

一般的な構文

=INDEX()return_range,MATCH(MAX(LEN()))return_range)*(criteria_range=criteria_value)),LEN(return_range)*(criteria_range=criteria_value),0))

√ 注:これは配列数式であり、Ctrl+Shift+Enterキーを押して入力してください。

  • return_range:結合数式で最長の名前を返す対象範囲です。ここでは、名前のリストが入力されている範囲を指します。
  • criteria_range:条件がリストされた範囲です。ここでは国名の範囲を指します。
  • criteria_value:設定した条件です。

アメリカ出身者の中で最も長い名前を持つ人物 を検索するには、以下の数式をセル F6 にコピーまたは入力し、 結果を取得するためにCtrl+Shift+Enterキーを押してください:

=INDEX()B5:B11,MATCH(MAX(LEN()))B5:B11)*(C5:C11=「America」)),LEN(B5:B11)*(C5:C11=「America」),0))

または、数式を動的にするにはセル参照を使用します:

=INDEX()B5:B11,MATCH(MAX(LEN()))B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5),0))

条件2で最も長い文字列を検索

数式の説明

=INDEX()B5:B11,MATCH()MAX()LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5),0))

  • LEN(B5:B11)*(C5:C11=F5):LEN 関数は、B5:B11 内の各名前の文字数からなる配列を返します。例:{5;5;6;3;4;8;5}。一方、(C5:C11=F5)の部分は、範囲 C5:C11 内の各値がF5の値と一致するかどうかをチェックし、次のような配列を生成します:{FALSE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE}。この配列は乗算に使用されるため、{0;0;1;0;1;0;1}に変換されます。最終的な計算結果は次のとおりです:{0;0;6;0;4;0;5}
  • MAX()LEN(B5:B11)*(C5:C11=F5))=MAX(){0;0;6;0;4;0;5}):MAX 関数は、配列 {0;0;6;0;4;0;5}から最大値を返します。その値は6です。
  • MATCH()MAX()LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5)MATCH 関数のmatch_type 0により、配列 {0;0;6;0;4;0;5} 内で最初に完全一致する数値 6の位置が検索されます。そのため、戻り値は3となり、これはその数値が3 番目の位置にあるためです。
  • INDEX()B5:B11,MATCH()MAX()LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5)INDEX 関数は、名前範囲 3 番目の値をB5:B11から返します。その値はOliverです。

関連関数

Excel INDEX 関数

Excel INDEX 関数は、指定された範囲または配列内の特定の位置に基づいて表示される値を返します。

Excel MATCH 関数

Excel MATCH 関数は、セル範囲内で特定の値を検索し、その相対位置を返します。

Excel LEN 関数

LEN 関数は、テキスト文字列内の文字数を返します。


関連数式

列または行内の最長または最短のテキスト文字列を検索する

Excel で列または行内の最長または最短のテキスト文字列を検索するには、INDEX 関数、MATCH 関数、LEN 関数および MAX 関数または MIN 関数を組み合わせて使用します。

INDEX 関数と MATCH 関数による近似一致

従業員のパフォーマンス評価、学生の成績評価、重量に基づく郵送料金計算など、Excel で近似一致を検索する必要がある場合があります。このチュートリアルでは、必要な結果を取得するために INDEX 関数と MATCH 関数を使用する方法について説明します。

複数の条件に基づく最も近い一致値の検索

複数の条件に基づいて最も近いまたは近似する一致値を検索する必要がある場合があります。INDEX 関数、MATCH 関数および IF 関数を組み合わせることで、Excel で迅速に処理できます。


最高の Office 生産性ツール

Kutools for Excel - あなたを群衆の中から際立たせます

🤖KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気機能検索・ハイライト・重複をマーキング    空白行を削除する    データを失うことなく列の結合またはセルを    数式を使用しない四捨五入...
スーパー VLookup複数条件    複数値    複数シート間    ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト    連動型ドロップダウンリスト    複数選択可能なドロップダウンリスト...
列マネージャー指定した数の列を追加    列の移動   非表示列の表示状態を切り替え  列を比較して同じ/異なるセルを選択...
注目の機能グリッドフォーカス    デザインビュー    強化された数式バー    ワークブックとシートマネージャーリソースライブラリ(オートテキスト)  日付ピッカー    ワークシートの統合    暗号化/セルの復号化   リストからメール送信    スーパーフィルター    特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除...)  50+チャートタイプガントチャート...)  40+実用的な数式誕生日に基づいて年齢を計算します...)  19 挿入ツールQR コードを挿入パスから画像を挿入...)  12 変換ツール単語に変換する為替レートの変換...)  7 結合と分割ツール高度な行のマージExcel セルを分割...)。。。他にも多数
Kutools を好みの言語でお使いいただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+言語以上をサポートしています!

Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…


Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします

  • 数十もの開いているドキュメントを1 秒で切り替えられます!
  • 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
  • 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
  • Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。