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

Data Analysis

  • How to combine 2 or more chart types in a single chart in Excel
  • Get column index in Excel Table
  • Conditional Formatting Rules in Excel
  • How to Create Gantt Chart in Excel
  • Excel Frequency Function Example

References

  • Count rows that contain specific values in Excel
  • Multi-criteria lookup and transpose in Excel
  • Extract all partial matches in Excel
  • How to create dynamic named range with OFFSET in Excel
  • LOOKUP function: Description, Usage, Syntax, Examples and Explanation

Data Validations

  • Excel Data validation date in next 30 days
  • Excel Data validation no punctuation
  • Excel Data validation number multiple 100
  • Excel Data validation don’t exceed total
  • How To Create Drop-down List in Excel

Extract last name from full name — Manipulating NAMES in Excel

by

If you need extract the last name from a full name, you can do so with this rather complex formula that uses several functions.

Note: In the  formula below, name is a full name, with a space separating the first name from other parts of the name.

Formula

=RIGHT(name,LEN(name)-FIND("*",SUBSTITUTE(name," ","*",
LEN(name)-LEN(SUBSTITUTE(name," ","")))))
Extract last name from full name -- Manipulating NAMES in Excel

Important!

Handling inconsistent spaces

Extra spaces will cause problems with this formula. One solution is to use the TRIM function first to clean things up, then use the parsing formula.

Explanation

In the example, the active cell contains this formula:

=RIGHT(B4,LEN(B4)-FIND("*",SUBSTITUTE(B4," ","*",LEN(B4)-LEN(SUBSTITUTE(B4," ","")))))

How this formula works

At the core, this formula uses the RIGHT function to extract characters starting from the right. The other functions which make up the complex part of this formula just do one thing: they calculate how many characters need to be extracted.

Worked Example:   SUBSTITUTE function: Description, Usage, Syntax, Examples and Explanation

At a high level, the formula replaces the last space in the name with an asterisk “*” and then uses FIND to determine the position of the asterisk in the name. The position is used to work out how many characters to extract with RIGHT.

How does the function replace only the last space? This is the clever part.

Buckle up, the explanation gets a bit technical.

They key to this formula is this bit:

SUBSTITUTE(B4," ","*",LEN(B4)-LEN(SUBSTITUTE(B4," ","")))

Which does the actual replacement of the last space with “*”.

Worked Example:   How to split text with delimiter in Excel

SUBSTITUTE has a forth (optional) argument that specifies which “instance” of the find text should be replaced. If nothing is supplied for this argument, all instances are replaced. However, if, say the number 2 is supplied, only the second instance is replaced. In the snippet above, instance is calculated using the second SUBSTITUTE:

LEN(B4)-LEN(SUBSTITUTE(B4," ",""))

Here, the length of the name without any spaces is subtracted from the actual length of the name. If there’s only one space in the name, it produces 1. If there are two spaces, it the result is 2, and so on.

In the example name in B4, there are two spaces in the name, so we get:

Worked Example:   Count cells that contain either x or y in Excel

15 – 13 = 2

And two is used as in the instance number:

SUBSTITUTE(B4," ","*",2)

which replaces the second space with “*”. The name then looks like this:

“Susan Ann*Chang”

The FIND function then takes over to figure out where the “*” is in the name:

FIND("*", "Susan Ann*Chang")

The result is 10 (the * is in the 10th position) which is subtracted from the total length of the name:

LEN(B4)-10

Since the name is 15 characters, we have:

15-10 = 5

The number 5 is used by RIGHT like so:

=RIGHT(B4,5)

Which results in “Chang”

As, you can see, it’s a lot of work above to calculate that simple 5!

Post navigation

Previous Post:

Put names into proper case — Manipulating NAMES in Excel

Next Post:

Create One-dimensional and Two-dimensional Array

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

  • IF function: Description, Usage, Syntax, Examples and Explanation
  • OR function Examples in Excel
  • How to use Excel FALSE Function
  • How to use Excel NOT Function
  • How to use IFS function in Excel

Date Time

  • How to calculate future date say 6 months ahead in Excel
  • Steps to create Dynamic calendar grid in Excel
  • How to join date and text together in Excel
  • How to get same date next month or previous month in Excel
  • Get date from day number in Excel

Grouping

  • Categorize text with keywords in Excel
  • Group arbitrary text values in Excel
  • How to randomly assign people to groups in Excel
  • How to randomly assign data to groups in Excel
  • Running count group by n size in Excel

General

  • How to create dynamic named range with INDEX in Excel
  • How to count total columns in range in Excel
  • Count cells that contain errors in Excel
  • 3D SUMIF for multiple worksheets in Excel
  • How to calculate decrease by percentage in Excel
© 2023 xlsoffice . All Right Reserved. | Teal Smiles | Abbreviations And Their Meaning