メインコンテンツへスキップ

条件付きで最長のテキスト文字列を見つける

Author: Amanda Li Last Modified: 2025-05-23

このチュートリアルでは、ExcelでINDEXMATCHLEN、MAX関数を使用して、列または行の中で条件に基づいて最長のテキスト文字列を検索する方法について説明します。

find longest text string with criteria 1

Excelで条件付きの最長テスト文字列を見つけるにはどうすればよいですか?

上記の名前の範囲にリストされているアメリカから来た最長の名前を持つ人を迅速に見つけるために、INDEX、MATCH、LEN、MAX関数を組み合わせた数式が役立ちます。 MAX関数は、LEN関数によって提供される文字列長の範囲の中から最大値を取得します。その後、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))

find longest text string with criteria 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(MAX(LEN(B5:B11)*(C5:C11=F5))) = MAX(MAX({0;0;6;0;4;0;5})): MAX関数は、配列 {0;0;6;0;4;0;5} から最大値を返します。それは6です。
  • MATCH(MATCH(MAX(LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5)),,LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5),0),0) = MATCH(MATCH(6,,{0;0;6;0;4;0;5},0),0): match_type 0は、MATCH関数に配列{0;0;6;0;4;0;5}内で最初に正確に一致する数字6の位置を見つけるように強制します。そのため、数字が3番目の位置にあるので、3を返します。
  • INDEX(B5:B11B5:B11,,,MATCH(MAX(LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5))),,,LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5),0))) = INDEX(B5:B11B5:B11,,,3): INDEX関数は、名前の範囲B5:B11内の3番目の値を返します。それは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 アシスタント: 次の要素に基づいてデータ分析を革新:インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データの分析とチャートの生成  |  Kutools 拡張機能の呼び出し
人気の機能重複の検索、ハイライト、または識別  |  空白行の削除  |  データを失うことなく列やセルを結合  |  数式なしで丸める ...
スーパーフィルター複数条件  |  複数値  |  複数シート間  |  ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト  |  依存するドロップダウンリスト  |  複数選択可能なドロップダウンリスト...
列マネージャー特定の数の列を追加  |  列の移動  |  非表示列の可視性ステータスの切り替え  列を比較して同じおよび異なるセルを選択 ...
注目機能グリッドフォーカス  |  デザインビュー  |  強化された数式バー  |  ワークブックとシートの管理 | オートテキスト ライブラリ (Auto Text)  |  日付ピッカー  |  データの統合  |  セルの暗号化/復号化  |  リストによるメール送信  |  スーパーフィルター  |  特殊フィルタ(太字/斜体/取り消し線のフィルタリング...) ...
トップ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含む)に効率的なタブをもたらします。