How to Remove the First Occurrence of a Specific Character in Excel Cells
Question details
The user needs to remove only the first occurrence of a specific character (such as the letter 'X') from a column of data, leaving any subsequent occurrences of that character in the same cell unchanged.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Cleaning up data strings where a designated letter or symbol appears multiple times, but only the initial instance is unwanted and needs to be deleted.
- Observed behavior
- Instead of using standard Find and Replace (which removes all instances of the character), the goal is to isolate and delete solely the first instance, leaving cells without the character perfectly intact.
Ensure you have inserted an empty helper column adjacent to your target data, as the formula-based solution requires a new cell to display the updated text.
Use the Excel SUBSTITUTE Function (Recommended)
The SUBSTITUTE function allows you to specify exactly which occurrence of a text string you want to replace, making it the perfect tool for targeting only the first character.
By utilizing the optional 'instance_num' argument within the SUBSTITUTE function, you can instruct Excel to only replace the 1st instance of a character with a blank text string, essentially deleting it while leaving the rest of the text untouched.
Click on a blank cell in a column adjacent to your target data (for example, click cell C1 if your text is in cell B1).
Type the formula `=SUBSTITUTE(B1,"X","",1)` into the formula bar. Replace 'B1' with the reference to your target cell, and 'X' with the specific character you wish to remove.
Press Enter. The cell will now display the original text but with only the very first 'X' removed. If the cell did not contain an 'X', the text will remain exactly the same.
Click on the cell with your new formula, hover over the small square at the bottom-right corner until your cursor becomes a cross, and drag it down to apply the formula to the rest of the cells in the column.

Apply a VBA Script to Update Cells Directly
If you do not want to use an extra helper column, you can use a VBA script to find and delete the first occurrence of the character directly within the original cells.
Easily Clean and Format Text Data in WPS Spreadsheet
WPS Spreadsheet fully supports advanced text manipulation functions like SUBSTITUTE, making data cleaning tasks fast, precise, and completely hassle-free. Enjoy a highly compatible, free alternative to Microsoft Excel with an intuitive interface.
- 1. Open your data file in WPS Office: Launch WPS Spreadsheet and open the workbook containing the text data you want to modify.
- 2. Select a helper cell: Click on an empty cell immediately adjacent to the column containing your target text.
- 3. Input the text replacement formula: Type `=SUBSTITUTE(B1,"X","",1)` into the cell (adjusting the cell reference as needed) and press Enter to execute.
- 4. Apply to the whole list: Double-click the fill handle in the lower right corner of your formula cell to automatically remove the first character from the entire dataset.

Frequently Asked Questions
Can I use the SUBSTITUTE function to remove the first space in a cell?
Yes, you can remove the first space by typing a space between the quotation marks for the old text argument. The formula would look like this: =SUBSTITUTE(A1," ","",1).
What happens if the specific character is not present in the cell at all?
If the character you specify to be removed is not found within the cell, the SUBSTITUTE function will simply return the original text without any changes and will not produce an error.
Is there a way to make the SUBSTITUTE function ignore case sensitivity?
The standard SUBSTITUTE function is case-sensitive. To remove a character regardless of whether it is uppercase or lowercase, you would need to nest the formulas, such as =SUBSTITUTE(SUBSTITUTE(B1,"X","",1),"x","",1).
How can I remove the last occurrence of a character instead of the first?
Removing the final occurrence requires a more complex formula that first counts total instances. You typically combine SUBSTITUTE with the LEN function to calculate the total number of times the character appears, and then use that count as the instance_num argument.




