Tip: Other languages are Google-Translated. You can visit the English version of this link.
Log in
x
or
x
x
Register
x

or

How to find nth occurrence (position) of a character in text string in Excel?

For example, there is a long sentence in Cell A1, see the following screenshot. And now you need to find the 3rd occurrence or position of Character "c" from the text string in Cell A1. Of course, you can count the characters one by one, and get the exact position result. However, here we are going to introduce some easy tips to find the nth occurrence or position of specific character from text string in a cell.


Count times a word appears in an excel cell

If a word appears several times in a cell which needed to be count, usually, you may count them one by one. But if the word appears hundreds of times, the manually counting is troublesome. The Count times a word appears function in Kutools for Excel's Formula Helper group can quickly calculate the count of times a word appear in a cell. Free trial with full features in 60 days!
doc count times a word
 
Kutools for Excel: with more than 300 handy Excel add-ins, free to try with no limitation in 60 days.

  Find nth occurrence (position) of a character in a Cell with Find formula

There are two Find formulas can help you find the nth occurrence or position of specific character from text string in a cells quickly.

The following formula will show you how to find the 3rd occurrence of "c" in Cell A1.

Find Formula 1

In a blank cell, enter the formula =FIND("c",A1,FIND("c",A1)+2).

doc-find-nth-position-of-text-string2

And then press the Enter key. The position of the third letter “c” has been displayed.

Note: You can change the 2 in the formula based on your needs. For example, if you want to find the fourth position of "c", you can change the 2 to 3. And if you want to find the first position of "c", you shuold change 2 to 0.

Find formula 2

In a blank cell, enter the formula =FIND(CHAR(1),SUBSTITUTE(A1,"c",CHAR(1),3)), and press Enter key.

Note: The "3" in the formula means the third "c", you can change it based on your needs.


>  Find nth occurrence (position) of a character in a Cell with VBA

Actually, you can apply the VB macro to find nth occurrence or position of a specific character in one cell easily.

Step 1: Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications window.

Step 2: Click Insert > Module, and paste the following macro in the Module Window.

VBA: Find the nth position of a charater.

Function FindN(sFindWhat As String, _
sInputString As String, N As Integer) As Integer
Dim J As Integer
Application.Volatile
FindN = 0
For J = 1 To N
FindN = InStr(FindN + 1, sInputString, sFindWhat)
If FindN = 0 Then Exit For
Next
End Function

Step 3: Now if you want find the exact occurrence of position of third "c" in Cell A1, please enter the formula of =FindN("c",A1,3), and press the Enter key. Then it will return the exact position in the specific cell at once.


  Find nth occurrence (position) of a character in a Cell with Kutools for Excel

If you like neither of formula and VBA, you can try a handy tool – Kutools for Excel, with its Formula groups, you can find a utility – Find nth occurrence of a character to quickly return the nth position of a character in a cell.

  Kutools for Excel, with more than 300 handy functions, makes your jobs more easier. 

After installing Kutools for Excel, please do as below:(Free Download Kutools for Excel Now!)

1. Select a cell you want to return the result and click Kutools > Formulas > Find nth occurrence of a character. See screenshot:

doc kutools 1

2. Then in the popping Formula Helper dialog, do as below:

doc find position of text string 4
1) Select the cell you want to find out a specific character from to the String textbox;



2) Type the character you want to find around with double quotations “” into Character textbox;



3) Type the nth occurrence of character into Nth occurrence textbox.

3. Click Ok. And you get the position of nth occurrence of a character in a string.

doc find position of text string 5

Kutools for Excel: 300 + functions you must have in Excel, 60-day free trial from here.

Tabbed browsing & editing multiple Excel workbooks/Word documents as Firefox, Chrome, Internet Explore 10!

You may be familiar to view multiple webpages in Firefox/Chrome/IE, and switch between them by clicking corresponding tabs easily. Here, Office Tab supports similar processing, which allow you to browse multiple Excel workbooks or Word documents in one Excel window or Word window, and easily switch between them by clicking their tabs. Click for free 45-day trial of Office Tab!

ot excel


Recommended Productivity Tools for Excel

Kutools for Excel Helps You Always Finish Work Ahead of Time, and Stand Out From Crowd

  • More than 300 powerful advanced features, designed for 1500 work scenarios, increasing productivity by 70%, give you more time to take care of family and enjoy life.
  • No longer need memorizing formulas and VBA codes, give your brain a rest from now on.
  • Become an Excel expert in 3 minutes, Complicated and repeated operations can be done in seconds, 
  • Reduce thousands of keyboard & mouse operations every day, say goodbye to occupational diseases now.
  • 110,000 highly effective people and 300+ world-renowned companies' choice.
  • 60-day full features free trial. 60-day money back guarantees. 2 years of free upgrade and support.

Brings Tabbed Browsing and Editing to Microsoft Office, Far More Powerful Than The Browser's Tabs

  • Office Tab is designed for Word, Excel, PowerPoint and Other Office Applications: Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Roo Payne · 9 months ago
    "Substitute" lets you find the Nth occurrence of a term, so combine it with "find" as follows (where 5=5th occurrence):

    =FIND(CHAR(1),SUBSTITUTE(A1,"c",CHAR(1),5))
    • To post as a guest, your comment is unpublished.
      SysAdminBen · 3 months ago
      This is the correct answer! please replace this whole article with this one line of code.....
  • To post as a guest, your comment is unpublished.
    Nitish · 1 years ago
    The first formula is completely useless and wrong but it works just correct for this example as the first and second "c"s are adjacent. The correct formula is:


    For 2nd occurence -
    =FIND("c",A1,FIND("c",A1)+1)

    For 3rd occurence -
    =FIND("c",A1,FIND("c",A1,FIND("c",A1)+1)+1) and so on...
    • To post as a guest, your comment is unpublished.
      Nick McFarland · 10 months ago
      Absolutely agree. The +2, or +3 etc.....entirely depends on the spacing between the n and (n+1) occurences of "c". Thus you would have to manually adjust for every cell if you were trying to copy this formula down a column for instance. Essentially the same as manually counting.


      Ex. Let's try to find the 4th occurrence of "c" in cell A1 using the provided formula. Per the article we should use +3 in our nested FIND function to find the 4th occurrence.


      Text in Cell A1:

      "cab car abc cole cube"

      Manually counting, the 4th occurrence is the "c" in cole in the character position of 13.


      =FIND("c",A1,FIND("c",A1)+3)

      The nested function, FIND("c",A1) will find the first occurrence of "c" in position 1.

      Therefore,

      FIND("c",A1)+3 = 1+3 = 4

      Plugging that back into our formula,

      =FIND("c",A1,FIND("c",A1)+3) = FIND("c",A1,1+3) = FIND("c",A1,4)

      This new formula will look for the first occurrence of "c" beginning from character position 4. The 4th character in the string is the space just after cab.

      Therefore, the formula will find the "c" in car and return the value of 5 for our formula. As we know from manually counting we are looking for 13 as the output.
    • To post as a guest, your comment is unpublished.
      Sunny · 1 years ago
      The firs formula works correct in my version, in the note, it has explained how to find the third or forth or nth "c".

      Note: You can change the 2 in the formula based on your needs. For example, if you want to find the fourth position of "c", you can change the 2 to 3. And if you want to find the first position of "c", you shuold change 2 to 0.
      • To post as a guest, your comment is unpublished.
        Nitish · 1 years ago
        Try to find out the position of the second c with the first sentence of my above comment as the string using the first formula. You'll get to know how correct it is!
  • To post as a guest, your comment is unpublished.
    Nagendra Kumar · 1 years ago
    Hello all,

    I have a text in an Excel cell " BY TRANSFER-NEFT*HDFC0000001*N08745987123546*J0032331*KUMAR--"

    I need a function to extract just "N08745987123546"

    Thanks
    • To post as a guest, your comment is unpublished.
      Sunny · 1 years ago
      Hello, do you want to extract the numbers after No and the number of numbers are fixed? If so, you can use Kutools for Exccel's Extract text function, type No????to extract.
  • To post as a guest, your comment is unpublished.
    KUMAR · 1 years ago
    HI ALL,
    I have a text in an Excel cell " BY TRANSFER-NEFT*HDHC0065431*N053112345624801*K0038331*krishna--"
    I need a function to extract just "N053112345624801"
  • To post as a guest, your comment is unpublished.
    kamil · 2 years ago
    Formula 1 doesn't work on fourth, fifth, sixth etc. so (+3,4,5) will always show third position of letter "c" which is 19 second formula is working though.