Skip to content
Free Excel Tutorials
  • Home
  • Excel For Beginners
  • Excel Intermediate
  • Advanced Excel For Experts

Data Analysis

  • How to count table rows in Excel
  • Conditional Formatting Color Scales Examples in Excel
  • Subtotal function in Excel
  • How to Use Solver Tool in Excel
  • Chart Axes in Excel

References

  • How to create dynamic named range with OFFSET in Excel
  • Count rows that contain specific values in Excel
  • How to use Excel MMULT Function
  • VLOOKUP function: Description, Usage, Syntax, Examples and Explanation
  • How to use Excel OFFSET function

Data Validations

  • Excel Data validation no punctuation
  • How To Create Drop-down List in Excel
  • Excel Data validation specific characters only
  • Excel Data validation must contain specific text
  • Excel Data validation must begin with

Find longest string with criteria in Excel

by

This tutorial shows how to Find longest string with criteria in Excel using the example below;

Formula

{=INDEX(range1,MATCH(MAX(LEN(range1)*(range2=criteria)),LEN(range1)*(range2=criteria),0))}

Explanation

To find the longest string in a range with criteria, you can use an array formula based on INDEX, MATCH, LEN and MAX. In the example shown, the formula in F6 is:

{=INDEX(names,MATCH(MAX(LEN(names)*(class=F5)),LEN(names)*(class=F5),0))}

Where “names” is the named range C5:C14, and “class” is the named range B5:B14.

Note: this is an array formula and must be entered with control + shift + enter.

How this formula works

The core of this formula is the MATCH function, which locates the position of the longest string using supplied criteria:

MATCH(MAX(LEN(names)*(class=F5)),LEN(names)*(class=F5),0)

Note MATCH is set up to perform an exact match by supplying zero for match type. For lookup value, we have:

LEN(names)*(class=F5)

The LEN function returns an array of results (lengths), one for each name in the list where class = “A” from cell F5 :

{5;6;8;6;6;0;0;0;0;0}

This effectively filters out all of Class B, and the MAX function then returns the largest value, 8.

To construct a lookup  array, we use the same approach:

LEN(names)*(class=F5)

And get the same result:

{5;6;8;6;6;0;0;0;0;0}

After LEN and MAX run, we have a MATCH formula with these values:

MATCH(8,{5;6;8;6;6;0;0;0;0;0},0))

MATCH then returns the position of 8 in the list, 3, which feeds into INDEX like this:

=INDEX(names,3)

Finally, INDEX dutifully returns the value in the 3rd position of names, which is “Jonathan”.

Post navigation

Previous Post:

COSH function: Description, Usage, Syntax, Examples and Explanation

Next Post:

Excel Data validation require unique number

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Learn Basic Excel

Ribbon
Workbook
Worksheets
Format Cells
Find & Select
Sort & Filter
Templates
Print
Share
Protect
Keyboard Shortcuts

Categories

  • Charts
  • Data Analysis
  • Data Validation
  • Excel Functions
    • Cube Functions
    • Database Functions
    • Date and Time Functions
    • Engineering Functions
    • Financial Functions
    • Information Functions
    • Logical Functions
    • Lookup and Reference Functions
    • Math and Trig Functions
    • Statistical Functions
    • Text Functions
    • Web Functions
  • Excel VBA
  • Excel Video Tutorials
  • Formatting
  • Grouping
  • Others

Logical Functions

  • SWITCH function: Description, Usage, Syntax, Examples and Explanation
  • IFNA function: Description, Usage, Syntax, Examples and Explanation
  • TRUE function: Description, Usage, Syntax, Examples and Explanation
  • How to use Excel XOR Function
  • IFERROR function: Description, Usage, Syntax, Examples and Explanation

Date Time

  • Get days, months, and years between dates in Excel
  • Excel Date & Time Functions Example
  • Calculate time difference in hours as decimal value in Excel
  • NOW function: Description, Usage, Syntax, Examples and Explanation
  • How to calculate Quarter of Date in Excel

Grouping

  • Group numbers at uneven intervals in Excel
  • Group times into 3 hour buckets in Excel
  • Categorize text with keywords in Excel
  • How to randomly assign people to groups in Excel
  • Group arbitrary text values in Excel

General

  • Check if multiple cells have same value with case sensitive in Excel
  • Subtotal invoices by age in Excel
  • How to generate random number weighted probability in Excel
  • How to calculate percentage of total in Excel
  • Creating and Opening an existing file in Excel
© 2026 xlsoffice . All Right Reserved. | Teal Smiles | Abbreviations And Their Meaning