How to add text or character to every cell in Excel

Wondering how to add text to an existing cell in Excel? In this article, you will learn a few really simple ways to insert characters in any position in a cell.

When working with text data in Excel, you may sometimes need to add the same text to existing cells to make things clearer. For example, you might want to put some prefix at the beginning of each cell, insert a special symbol at the end, or place certain text before a formula.

I guess everyone knows how to do this manually. This tutorial will teach you how to quickly add strings to multiple cells using formulas and automate the work with VBA or a special Add Text tool.

Excel formulas to add text/character to cell

To add a specific character or text to an Excel cell, simply concatenate a string and a cell reference by using one of the following methods.

Concatenation operator

The easiest way to add a text string to a cell is to use an ampersand character (&), which is the concatenation operator in Excel.

"text"&cell

This works in all versions of Excel 2007 - Excel 365.

CONCATENATE function

The same result can be achieved with the help of the CONCATENATE function:

CONCATENATE("text", cell)

The function is available in Excel for Microsoft 365, Excel 2019 - 2007.

CONCAT function

To add text to cells in Excel 365, Excel 2019, and Excel Online, you can use the CONCAT function, which is a modern replacement of CONCATENATE:

CONCAT("text", cell)

Note. Please pay attention that, in all formulas, text should be enclosed in quotation marks.

These are the general approaches, and the below examples show how to apply them in practice.

How to add text to the beginning of cells

To add certain text or character to the beginning of a cell, here's what you need to do:

  1. In the cell where you want to output the result, type the equals sign (=).
  2. Type the desired text inside the quotation marks.
  3. Type an ampersand symbol (&).
  4. Select the cell to which the text shall be added, and press Enter.

Alternatively, you can supply your text string and cell reference as input parameters to the CONCATENATE or CONCAT function.

For example, to prepend the text "Project:" to a project name in A2, any of the below formulas will work.

In all Excel versions:

="Project:"&A2

=CONCATENATE("Project:", A2)

In Excel 365 and Excel 2019:

=CONCAT("Project:", A2)

Enter the formula in B2, drag it down the column, and you will have the same text inserted in all cells.

Tip. The above formulas join two strings without spaces. To separate values with a whitespace, type a space character at the end of the prepended text (e.g. "Project: ").

Adding text to the beginning of cells

For convenience, you can input the target text in a predefined cell (E2) and add two text cells together:

Without spaces:

=$E$2&A2

=CONCATENATE($E$2, A2)

With spaces:

=$E$2&" "&A2

=CONCATENATE($E$2, " ", A2)

Please notice that the address of the cell containing the prepended text is locked with the $ sign, so that it won't shift when copying the formula down.

With this approach, you can easily change the added text in one place, without having to update every formula. Another way to add text to the beginning of a string

How to add text to the end of cells in Excel

To append text or specific character to an existing cell, make use of the concatenation method again. The difference is in the order of the concatenated values: a cell reference is followed by a text string.

For instance, to add the string "-US" to the end of cell A2, these are the formulas to use:

=A2&"-US"

=CONCATENATE(A2, "-US")

=CONCAT(A2, "-US")

Alternatively, you can enter the text in some cell, and then join two cells with text together:

=A2&$D$2

=CONCATENATE(A2, $D$2)

Please remember to use an absolute reference for the appended text ($D$2) for the formula to copy correctly across the column. Adding text to the end of cells

Add characters to beginning and end of a string

Knowing how to prepend and append text to an existing cell, there is nothing that would prevent you from using both techniques within one formula.

As an example, let's add the string "Project:" to the beginning and "-US" to the end of the existing text in A2.

="Project:"&A2&"-US"

=CONCATENATE("Project:", A2, "-US")

=CONCAT("Project:", A2, "-US")

With the strings input in separate cells, this works equally well: Inserting characters at the beginning and end of a string

Combine text from two or more cells

To place values from multiple cells into one cell, concatenate the original cells by using the already familiar techniques: an ampersand symbol, CONCATENATE or CONCAT function.

For example, to combine values from columns A and B using a comma and a space (", ") for the delimiter, enter one of the below formulas in B2, and then drag it down the column.

Add text from two cells with an ampersand:

=A2&", "&B2

Combine text from two cells with CONCAT or CONCATENATE:

=CONCATENATE(A2, ", ", B2)

=CONCAT(A2, ", ", B2)

When adding text from two columns, be sure to use relative cell references (like A2), so they adjust correctly for each row where the formula is copied. Combine two text cells

To combine text from multiple cells in Excel 365 and Excel 2019, you can leverage the TEXTJOIN function. Its syntax provides for a delimiter (the first argument), which makes the formular more compact and easier to manage.

For example, to add strings from three columns (A, B and C), separating the values with a comma and a space, the formula is:

=TEXTJOIN(", ", TRUE, A2, B2, C2) Combine text from multiple cells

How to add special character to cell in Excel

To insert a special character in an Excel cell, you need to know its code in the ASCII system. Once the code is established, supply it to the CHAR function to return a corresponding character. The CHAR function accepts any number from 1 to 255. A list of printable character codes (values from 32 to 255) can be found here.

To add a special character to an existing value or a formula result, you can apply any concatenation method that you like best.

For example, to add the trademark symbol (™) to text in A2, any of the following formulas will work:

=A2&CHAR(153)

=CONCATENATE(A2&CHAR(153))

=CONCAT(A2&CHAR(153)) Adding a special character to an Excel cell

How to add text to formula in Excel

To add a certain character or text to a formula result, just concatenate a string with the formula itself.

Let's say, you are using this formula to return the current time:

=TEXT(NOW(), "h:mm AM/PM")

To explain to your users what time that is, you can place some text before and/or after the formula.

Insert text before formula:

="Current time: "&TEXT(NOW(), "h:mm AM/PM")

=CONCATENATE("Current time: ", TEXT(NOW(), "h:mm AM/PM"))

=CONCAT("Current time: ", TEXT(NOW(), "h:mm AM/PM")) Inserting text before a formula

Add text after formula:

=TEXT(NOW(), "h:mm AM/PM")&" - current time"

=CONCATENATE(TEXT(NOW(), "h:mm AM/PM"), " - current time")

=CONCAT(TEXT(NOW(), "h:mm AM/PM"), " - current time") Adding text after a formula

Add text to formula on both sides:

="It's " &TEXT(NOW(), "h:mm AM/PM")& " here in Gomel"

=CONCATENATE("It's ", TEXT(NOW(), "h:mm AM/PM"), " here in Gomel")

=CONCAT("It's ", TEXT(NOW(), "h:mm AM/PM"), " here in Gomel") Inserting text on both sides of a formula

How to insert text after Nth character

To add a certain text or character at a certain position in a cell, you need to split the original string into two parts and place the text in between. Here's how:

  1. Extract a substring preceding the inserted text with the help of the LEFT function:
    LEFT(cell, n)
  2. Extract a substring following the text using the combination of RIGHT and LEN:
    RIGHT(cell, LEN(cell) -n)
  3. Concatenate the two substrings and the text/character using an ampersand symbol.

The complete formula takes this form:

LEFT(cell, n) & "text" & RIGHT(cell, LEN(cell) -n)

The same parts can be joined together by using the CONCATENATE or CONCAT function:

CONCATENATE(LEFT(cell, n), "text", RIGHT(cell, LEN(cell) -n))

The task can also be accomplished by using the REPLACE function:

REPLACE(cell, n+1, 0, "text")

The trick is that the num_chars argument that defines how many characters to replace is set to 0, so the formula actually inserts text at the specified position in a cell without replacing anything. The position (start_num argument) is calculated using this expression: n+1. We add 1 to the position of the nth character because the text should be inserted after it.

For example, to insert a hyphen (-) after the 2nd character in A2, the formula in B2 is:

=LEFT(A2, 2) &"-"& RIGHT(A2, LEN(A2) -2)

Or

=CONCATENATE(LEFT(A2, 2), "-", RIGHT(A2, LEN(A2) -2))

Or

=REPLACE(A2, 2+1, 0, "-")

Drag the formula down, and you will have the same character inserted in all the cells: Add text after Nth character

How to add text before/after a specific character

To insert certain text before or after a particular character, you need to determine the position of that character in a string. This can be done with the help of the SEARCH function:

SEARCH("char", cell)

Once the position is determined, you can add a string exactly at that place by using the approaches discussed in the above example.

Add text after specific character

To insert some text after a given character, the generic formula is:

LEFT(cell, SEARCH("char", cell)) & "text" & RIGHT(cell, LEN(cell) - SEARCH("char", cell))

Or

CONCATENATE(LEFT(cell, SEARCH("char", cell)), "text", RIGHT(cell, LEN(cell) - SEARCH("char", cell)))

For instance, to insert the text (US) after a hyphen in A2, the formula is:

=LEFT(A2, SEARCH("-", A2)) &"(US)"& RIGHT(A2, LEN(A2) - SEARCH("-", A2))

Or

=CONCATENATE(LEFT(A2, SEARCH("-", A2)), "(US)", RIGHT(A2, LEN(A2) -SEARCH("-", A2))) Adding text after a specific character

Insert text before specific character

To add some text before a certain character, the formula is:

LEFT(cell, SEARCH("char", cell) -1) & "text" & RIGHT(cell, LEN(cell) - SEARCH("char", cell) +1)

Or

CONCATENATE(LEFT(cell, SEARCH("char", cell) - 1), "text", RIGHT(cell, LEN(cell) - SEARCH("char", cell) +1))

As you see, the formulas are very similar to those that insert text after a character. The difference is that we subtract 1 from the result of the first SEARCH to force the LEFT function to leave out the character after which the text is added. To the result of the second SEARCH, we add 1, so that the RIGHT function will fetch that character.

For example, to place the text (US) before a hyphen in A2, this is the formula to use:

=LEFT(A2, SEARCH("-", A2) -1) &"(US)"& RIGHT(A2, LEN(A2) -SEARCH("-", A2) +1)

Or

=CONCATENATE(LEFT(A2, SEARCH("-", A2) -1), "(US)", RIGHT(A2, LEN(A2) -SEARCH("-", A2) +1)) Inserting text before a specific character

Notes:

  • If the original cell contains multiple occurrences of a character, the text will be inserted before/after the first occurrence.
  • The SEARCH function is case-insensitive and cannot distinguish lowercase and uppercase characters. If you aim to add text before/after a lowercase or uppercase letter, then use the case-sensitive FIND function to locate that letter.

How to add space between text in Excel cell

In fact, it is just a specific case of the two previous examples.

To add space at the same position in all cells, use the formula to insert text after nth character, where text is the space character (" ").

For example, to insert a space after the 10th character in cells A2:A7, enter the below formula in B2 and drag it through B7:

=LEFT(A2, 10) &" "& RIGHT(A2, LEN(A2) -10)

Or

=CONCATENATE(LEFT(A2, 10), " ", RIGHT(A2, LEN(A2) -10))

In all the original cells, the 10th character is a colon (:), so a space is inserted exactly where we need it: Adding space at the same position in all cells

To insert space at a different position in each cell, adjust the formula that adds text before/after a specific character.

In the sample table below, a colon (:) is positioned after the project number, which may contain a variable number of characters. As we wish to add a space after the colon, we locate its position using the SEARCH function:

=LEFT(A2, SEARCH(":", A2)) &" "& RIGHT(A2, LEN(A2)-SEARCH(":", A2))

Or

=CONCATENATE(LEFT(A2, SEARCH(":", A2)), " ", RIGHT(A2, LEN(A2)-SEARCH(":", A2))) Insert space after a specific character

How to add the same text to existing cells with VBA

If you often need to insert the same text in multiple cells, you can automate the task with VBA.

Prepend text to beginning

The below macros add text or a specific character to the beginning of all selected cells. Both codes rely on the same logic: check each cell in the selected range and if the cell is not empty, prepend the specified text. The difference is where the result is placed: the first code makes changes to the original data while the second one places the results in a column to the right of the selected range.

If you have little experience with VBA, this step-by-step guide will walk you through the process: How to insert and run VBA code in Excel.

Macro 1: adds text to the original cells

Sub PrependText() Dim cell As Range For Each cell In Application.Selection If cell.Value <> "" Then cell.Value = "PR-" &amp; cell.Value Next End Sub

This code inserts the substring "PR-" to the left of an existing text. Before using the code in your worksheet, be sure to replace our sample text with the one you really need. Macro to add text to the beginning of multiple cells

Macro 2: places the results in the adjacent column

Sub PrependText2() Dim cell As Range For Each cell In Application.Selection If cell.Value <> "" Then cell.Offset(0, 1).Value = "PR-" &amp; cell.Value Next End Sub

Before running this macro, make sure there is an empty column to the right of the selected range, otherwise the existing data will be overwritten. Macro to prepend text and place the results in another column

Append text to end

If you are looking to add a specific string/character to the end of all selected cells, these codes will help you get the work done quickly.

Macro 1: appends text to the original cells

Sub AppendText() Dim cell As Range For Each cell In Application.Selection If cell.Value <> "" Then cell.Value = cell.Value &amp; "-PR" Next End Sub

Our sample code inserts the substring "-PR" to the right of an existing text. Naturally, you can change it to whatever text/character you need. Macro to add text to the end of all selected cells

Macro 2: places the results in another column

Sub AppendText2() Dim cell As Range For Each cell In Application.Selection If cell.Value <> "" Then cell.Offset(0, 1).Value = cell.Value &amp; "-PR" Next End Sub

This code places the results in a neighboring column. So, before you run it, make certain you have at least one empty column to the right of the selected range, otherwise your existing data will be overwritten. Macro to append text and place the results in the adjacent column

Add text or character to multiple cells with Ultimate Suite

In the first part of this tutorial, you've learned a handful of different formulas to add text to Excel cells. Now, let's me show you how to accomplish the task with a few clicks :)

With Ultimate Suite installed in your Excel, here are the steps to follow:

  1. Select your source data.
  2. On the Ablebits tab, in the Text group, click Add.
  3. On the Add Text pane, type the character/text you wish to add to the selected cells, and specify where it should be inserted:
    • At the beginning
    • At the end
    • Before specific text/character
    • After specific text/character
    • After Nth character from the beginning or end
  4. Click the Add Text button. Done!

As an example, let's insert the string "PR-" after the "-" character in cells A2:A7. For this, we configure the following settings: Inserting the same text in multiple cells

A moment later, we get the desired result: The text is added to all selected cells.

These are the best ways to add characters and text strings in Excel. I thank you for reading and hope to see you on our blog next week!

Available downloads

Add text to cell in Excel - formula examples (.xlsm file)
Ultimate Suite - trial version (.exe file)

93 comments

  1. hello
    i want to convert 54A245000001 to 54:A2:45:00:00:01
    can you help me with formula to do it

    • Hi! Calculate the number of characters in a string using the LEN function. Divide by 2 and find out how many groups of 2 characters the string contains. Then create a sequence of numbers in steps of 2, starting with 1 and ending with the number of groups. Use the MID function to extract every 2 characters. Use the TEXTJOIN function and the ":" delimiter to combine them into a new string.
      Try this formula:

      =TEXTJOIN(":",TRUE,MID(A1,SEQUENCE(ROUNDUP(LEN(A1)/2,0),1,1,2),2))

  2. i have 1000 column and i want to move the data by every 100 column, any idea ?

  3. Hi, I'm looking at the formula to add specific text between the link in cell, so that it will generate to different link. Is it possible?
    For example : this is the link in first cell "G2EOk9gphP07TaiGQneX/inspect?category", and I want to add "-appeal" in between "inspect" and "?category" so it will be "G2EOk9gphP07TaiGQneX/inspect-appeal?category"

    Is there any way to do this? Thanks a lot!

      • Thanks Alex! works perfectly. thanks again really appreciate your help

  4. Hello, I am trying to create the ability to prepend the date from the column to cells in that row, so that the cell data will be sort of time stamped. So its basically like what you are showing, but instead of having a static text, i would like it pull from the column header cell that includes the date. Is this possible?

    • Hello Jason!
      Unfortunately, your question is not very clear. However, if you want to add a date to a value that has already been saved in a cell, you can do this by using a VBA macro. If the cell value comes from a formula, you can add the date to that formula. However, there is not enough information in your question to give you accurate advice.
      To understand what you want to do, give an example of the source data and the expected result.

      • Alex thank you for the reply. This would be for time stamping an entry in a log. I have a long list of projects in every row and in the worksheet for the log, I have all the columns as the days of the month, with that specific date. So I can type in a note for that project, for that date. I have a macro that hides dates that have already passed so the first column is always todays date.
        I want to use the header(first row of that column) which has todays date, and prepend all the cells of that column with the date on the first row of the column. So that when i type any notes into a cell in the column, I get [9/27/24: Today here are some notes].

        I know this can be done with concat or text join, but it requires 2 columns. I want to use one cell, but formula would need to be in the cell I am typing data into so I would wipe out the formula. hopefully this makes more sense now?

        It would be like a conditional format or custom format cell, but able to reference a cell (first row of the column) for "static" data that would prepend every cell's data.

          • Thank you. I understand it can be done with a VBA macro. I wanted to see if someone could help me with writing the code for this Macro to work.

  5. I am trying to Add dashes to a 10 digit number phone number (formated as text in a csv like this ##########) so that the result is like this ###-###-####.

    Then want to save the formatted result as a text value so i can import it as ###-###-####.

    Using the custom formatting in excel will change how the number is displayed, but i need to preserve the complete result as text.

    Thoughts on how to insert the two dashes with the formulas?

  6. How to delete last letter and replace a new letter? like: ministru to ministri

  7. Hi there!
    I've got a few spreadsheets that require a name to be inputted e.g. Chris, Graham, Carol etc. However last names need to be included in them now and I'm looking for a way to be able to add each persons last name for the cells that already have their first name in. Also would there be a way to add last names that have 2 names per cell? e.g. Chris/Graham. If not it's no problem!
    Thank you!

  8. Hi - I have cell A1 that has 0.0664 in it but the cell is formatted as a 'Percentage' so you see 6.64%. I am then trying to use the formula ="If you buy "&A1 but the result is 'If you buy 0.0664' but I really want it to show 'If you buy 6.64%'. How can I do that? Thanks

      • Perfect. Thank you very much Alexander.

  9. In the Macro 1 to pretend text, an effort to run the macro gives an error at the semi colon sunil after &amp as "Expected: end of statement".

    Please suggest corrective measure.

  10. Hi.. can u help me with how can i insert "A" in all sequenced numbers in excel sheet?
    Original Become
    1 A1
    2 A2
    3 A3

  11. How can I format a row to display the # sign before numbers. Instead of a $ I want #.

  12. Hello,
    my client entered time-variable cells as 4-digit values without the colon (e.g., "0600", "1430"; i.e., 6 A.M., 2:30 P.M.) but I need the cells formatted as time (e.g., 06:00, 14:30). I've use insertion formulas to place a colon between the 2nd and 3rd characters, but this results in a 'minutes-like' value (e.g., 0600 becomes 60:00). Formatting the new cells as 'hourly times' fails to resolve. Any advice? Thank you

    • Hi! To convert text to time, you can extract hours and minutes using the LEFT and RIGHT functions and create a time value using the TIME function.
      You can also add the desired characters to the text and use the TIMEVALUE function to convert text to time.
      Try these formulas:

      =TIME(LEFT(A1,2),RIGHT(A1,2),0)
      =TIMEVALUE(REPLACE(A1,3,0,":")&":00")

      • Thank you, Alexander. Your formulas were helpful.

  13. hi! im trying to add ".pdf" to a column of cells.

    I use the script above, so I don't have to use the concatenate formula:

    Sub AppendText()
    Dim cell As Range

    For Each cell In Application.Selection
    If cell.Value "" Then cell.Value = cell.Value & ".pdf"
    Next
    End Sub

    but it gave me an error message "compile error: syntax error"

  14. Hello Sir
    I want to populate same text upto a certain rows and then another text and then another. For eg
    From A1-A33333-ABC
    A33334-66666-DEF
    A66667-A100000-GHI

    Can you please help

      • Hello Sir
        What I need is same text to be repeated .
        A1: ABC
        A2: ABC
        A3: ABC
        this text to be repeated in all rows upto A33333

        Then A33334: Workbook
        A33335: Workbook
        A33336: Workbook

        this text to be repeated in all rows upto A66666
        Similarly i need to copy the same text

        • Hi! You can repeat the text in the column as many times as needed using the SEQUENCE function. If this text consists of 3 characters, extract the first 3 characters from the text string using the LEFT function. Please try the following formula:

          =LEFT("ABC"&SEQUENCE(33333,1,0,0),3)

  15. How can I make a formula to put an "h" after first set of numbers and an "m" after second set of numbers in a single cell?

    Example: 764h 34m (however the values for each cell will be different.)

    I am taking data from one source and entering it into excel. These h and m represent the number of Engine Hours on each piece of machinery in our fleet. They appear just as shown above. Ideally, I would like to be able to type the numbers with a space or . in between them and let excel insert the "h" and "m" so I can just go down the list of data and use my number pad for quick data entry.

  16. sir how to make for an example 16VM077 to 16-VM-077

    • Hi! Pay attention to the following paragraph of the article above: How to insert text after Nth character.
      It covers your case completely.

Post a comment



Thank you for your comment!
When posting a question, please be very clear and concise. This will help us provide a quick and relevant solution to
your query. We cannot guarantee that we will answer every question, but we'll do our best :)