• Skip to main content
  • Skip to header right navigation
  • Skip to site footer

My Online Training Hub

Learn Dashboards, Excel, Power BI, Power Query, Power Pivot

  • Courses
  • Pricing
    • Free Courses
    • Power BI Course
    • Excel Power Query Course
    • Power Pivot and DAX Course
    • Excel Dashboard Course
    • Excel PivotTable Course – Quick Start
    • Advanced Excel Formulas Course
    • Excel Expert Advanced Excel Training
    • Excel Tables Course
    • Excel, Word, Outlook
    • Financial Modelling Course
    • Excel PivotTable Course
    • Excel for Customer Service Professionals
    • Excel for Operations Management Course
    • Excel for Decision Making Under Uncertainty Course
    • Excel for Finance Course
    • Excel Analysis ToolPak Course
    • Multi-User Pricing
  • Resources
    • Free Downloads
    • Excel Functions Explained
    • Excel Formulas
    • Excel Add-ins
    • IF Function
      • Excel IF Statement Explained
      • Excel IF AND OR Functions
      • IF Formula Builder
    • Time & Dates in Excel
      • Excel Date & Time
      • Calculating Time in Excel
      • Excel Time Calculation Tricks
      • Excel Date and Time Formatting
    • Excel Keyboard Shortcuts
    • Excel Custom Number Format Guide
    • Pivot Tables Guide
    • VLOOKUP Guide
    • ALT Codes
    • Excel VBA & Macros
    • Excel User Forms
    • VBA String Functions
  • Members
    • Login
    • Password Reset
  • Blog
  • Excel Webinars
  • Excel Forum
    • Register as Forum Member

Find the Last Occurrence of a String In Another String

You are here: Home / Excel Formulas / Find the Last Occurrence of a String In Another String
Find last occurrence of a string in another string
July 24, 2019 by Philip Treacy

If we want to find whether or not a character or string occurs within another string we can use FIND or SEARCH. But these functions only tell us if a string (or character) exist in another string, they don't tell us if the string we are looking for occurs multiple times.

For example, we have a path\filename like so:

c:\excel\reports\march.xlsx

and we want to extract the filename. To do this we have to find the position of the last \ and extract everything to the right.

FIND and SEARCH will both give the result 3, the position of the first \, so we have to use a trick involving SUBSTITUTE to find the last one.

If we know the length of the string,

LEN("c:\excel\reports\march.xlsx") = 27

and we know the length of the string after all the \ are removed,

LEN("c:excelreportsmarch.xlsx") = 24

then we know how many \ are in the string, in this case 27 - 24 = 3.

To remove all of the \ use SUBSTITUTE to replace \ with an empty string "" (our string is in A1)

SUBSTITUTE(A1,"\","")

So

LEN(SUBSTITUTE(A1,"\","")) = 24

We can call SUBSTITUTE using it's fourth argument to tell it to replace the last \ with another character which we will use later. I'm using CHAR(9) which is a character I know won't appear in the path to my file.

SUBSTITUTE(A1,"\",CHAR(9),LEN(A1)-LEN(SUBSTITUTE(A1,"\","")))

Where A1 contains our string and

LEN(A1)-LEN(SUBSTITUTE(A1,"\","")))

tells SUBSTITUTE to replace the 3rd \

I can now use SEARCH or FIND to give me the position of my CHAR(9) character.

SEARCH(CHAR(9),SUBSTITUTE(A1,"\",CHAR(9),LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))

Knowing this I can use RIGHT to extract the filename. We can work out the number of characters for RIGHT to extract by subtracting the position of CHAR(9) from the length of the string.

RIGHT(A1,LEN(A1)-SEARCH(CHAR(9),SUBSTITUTE(A1,"\",CHAR(9),LEN(A1)-LEN(SUBSTITUTE(A1,"\","")))))

If we want the path rather than the filename, we can use LEFT.

LEFT(A1,SEARCH(CHAR(9),SUBSTITUTE(A1,"\",CHAR(9),LEN(A1)-LEN(SUBSTITUTE(A1,"\","")))))

Flash Fill

You can achieve the same results using Flash Fill, but Flash Fill does not automatically update results.

If your source data changes, you'll need to re-run Flash Fill, whereas a formula will automatically update.

InstrRev - VBA Function

If you want to use VBA, you can achieve everything in this post using InstrRev which is one of a number of useful VBA string functions.

Download Example Workbook

Enter your email address below to download the sample workbook.

By submitting your email address you agree that we can email you our Excel newsletter.
Please enter a valid email address.

Download the Excel Workbook. Note: This is a .xlsx file please ensure your browser doesn't change the file extension on download.

Find last occurrence of a string in another string

More Excel Formulas Posts

ai-aided excel formula editor

AI Aided Excel Formula Editor

Save time with this free AI Excel formula editor add-in that writes, edits, improves and interprets formulas for you!
top excel functions for data analysts

Top Excel Functions for Data Analysts

Must know Excel Functions for Data Analysts and what functions you don’t have to waste time learning and why.
excel advanced formula environment

Excel Advanced Formula Environment

Excel Advanced Formula Environment is a long awaited, new improved way to write, name and store Excel formulas.
Pro Excel Formula Writing Tips

Pro Excel Formula Writing Tips

Must know Excel formula writing tips, tricks and tools to make you an Excel formula ninja, including a new formula editor.
excel shaping arrays

New Array Shaping Excel Functions

The Excel Shaping Array Functions makes it easier than ever to reshape arrays and ranges using these purpose built functions
excel nested if functions what not to do

Excel IF Formulas and What Not To Do

Excel IF formulas can get out of hand when you nest too many IFs. Not only do they become unwieldy they’re difficult for anyone to understand
excel image function

Excel IMAGE Function

The Excel IMAGE Function enables you to embed images in a cell using a formula. It supports BMP, JPG/JPEG, GIF, TIFF, PNG, ICO, and WEBP files

Excel VSTACK and HSTACK Functions

New Excel VSTACK and HSTACK functions makes combining arrays of cells easy and with some clever tricks we can extend their capabilities.
identify overlapping dates and times in excel

Identify overlapping dates and times in Excel

How to identify overlapping dates and times in Excel with a formula that checks a range of cells. Works with Dates and Times.
New Excel Text Functions

TEXTSPLIT, TEXTBEFORE and TEXTAFTER Functions

TEXTAFTER, TEXTBEFORE and TEXTSPLIT are exciting new Excel Text functions. They’re fairly self-explanatory, however TEXTSPLIT has some cool features.


Category: Excel Formulas
Previous Post:Excel PivotTable Field List Tips
Next Post:Working With Comments in VBAworking with comments in vba

Reader Interactions

Comments

  1. sam

    August 1, 2021 at 6:53 pm

    Is it possible to solve this with LAMBA ?

    Reply
    • Mynda Treacy

      August 5, 2021 at 11:23 am

      Yes, anything you can do with an existing function can be done with a LAMBDA, but there’s not much point in writing your own function when there’s an existing solution available with built in functions.

      Reply
  2. David N

    August 1, 2019 at 5:50 am

    I personally prefer to use REPLACE instead of RIGHT to isolate the end of a string because it avoids the need for any “length minus find” math games. And the formula turns out to be one character shorter in this case, so it’s a virtual break-even on typing.

    =REPLACE(A1,1,SEARCH(CHAR(9), SUBSTITUTE(A1,”\”,CHAR(9),LEN(A1)- LEN(SUBSTITUTE(A1,”\”,””)))),””)

    Reply
  3. Duncan Williamson

    July 25, 2019 at 9:15 am

    Alternatively, use Flash Fill …

    Reply
    • Philip Treacy

      July 25, 2019 at 9:34 am

      Thanks Duncan, yes that is true. Unfortunately FF does not automatically update when the source data changes. I’ve added a note to the post to make this clear.

      Thanks

      Phil

      Reply
  4. Diane Smith

    July 24, 2019 at 11:20 pm

    Too bad that Excel doesn’t have the function InStrRev that Microsoft Access has.

    Then the formulas could be:

    FileName: Right(A1,Len(A1)-InStrRev(A1,”\”))

    PathName Left(A1,InStrRev(A1,”\”)-1)

    much simpler

    Reply
    • Philip Treacy

      July 25, 2019 at 8:40 am

      Hi Diane,

      Yes it would be nice to have this in the sheet, but you can use InStrRev with VBA.

      VBA String Functions

      Cheers

      Phil

      Reply

Leave a Reply Cancel reply

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

Current ye@r *

Leave this field empty

Sidebar

More results...

Featured Content

  • 10 Common Excel Mistakes to Avoid
  • Top Excel Functions for Data Analysts
  • Secrets to Building Excel Dashboards in Less Than 15 Minutes
  • Pro Excel Formula Writing Tips
  • Hidden Excel Double-Click Shortcuts
  • Top 10 Intermediate Excel Functions
  • 5 Pro Excel Dashboard Design Tips
  • 5 Excel SUM Function Tricks
  • 239 Excel Keyboard Shortcuts

100 Excel Tips and Tricks eBook

Download Free Tips & Tricks

Subscribe to Our Newsletter

Receive weekly tutorials on Excel, Power Query, Power Pivot, Power BI and More.

We respect your email privacy

Guides and Resources

  • Excel Keyboard Shortcuts
  • Excel Functions
  • Excel Formulas
  • Excel Custom Number Formatting
  • ALT Codes
  • Pivot Tables
  • VLOOKUP
  • VBA
  • Excel Userforms
  • Free Downloads

239 Excel Keyboard Shortcuts

Download Free PDF

Free Webinars

Excel Dashboards Webinar

Watch our free webinars and learn to create Interactive Dashboard Reports in Excel or Power BI

Click Here to Watch Now

mynda treacy microsoft mvpHi, I'm Mynda Treacy and I run MOTH with my husband, Phil. Through our blog, webinars, YouTube channel and courses we hope we can help you learn Excel, Power Pivot and DAX, Power Query, Power BI, and Excel Dashboards.

Blog Categories

  • Excel
  • Excel Charts
  • Excel Dashboard
  • Excel Formulas
  • Excel PivotTables
  • Excel Shortcuts
  • Excel VBA
  • General Tips
  • Online Training
  • Outlook
  • Power Apps
  • Power Automate
  • Power BI
  • Power Pivot
  • Power Query
microsoft mvp logo
trustpilot excellent rating
Secured by Sucuri Badge
MyOnlineTrainingHub on YouTube Mynda Treacy on Linked In Mynda Treacy on Instagram Mynda Treacy on Twitter Mynda Treacy on Pinterest MyOnlineTrainingHub on Facebook
 

Company

  • About My Online Training Hub
  • Disclosure Statement
  • Frequently Asked Questions
  • Guarantee
  • Privacy Policy
  • Terms & Conditions
  • Testimonials
  • Become an Affiliate

Support

  • Contact
  • Forum
  • Helpdesk – For Technical Issues

Copyright © 2023 · My Online Training Hub · All Rights Reserved. Microsoft and the Microsoft Office logo are trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries. Product names, logos, brands, and other trademarks featured or referred to within this website are the property of their respective trademark holders.