Please Note: This article is written for users of the following Microsoft Excel versions: 2007, 2010, and 2013. If you are using an earlier version (Excel 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Excel, click here: Removing Dashes from ISBN Numbers.

Removing Dashes from ISBN Numbers

by Allen Wyatt
(last updated May 9, 2018)

5

Ciaran works in a library, and often has to work with long lists of ISBN numbers in Excel. The numbers must contain either 10 or 13 digits, may contain dashes, and may have leading zeros. He uses text format for cells containing ISBNs in order to keep them intact as text strings. For some purposes, the dashes in the ISBNs have to be stripped out (he uses Find and Replace for this) and that's where the trouble starts. 0-241-95011-2 becomes 241950112 (now it's dropped to 9 digits), and worse, 978-0-00-200784-9 becomes 9.78E+12 (scientific notation). Ciaran can't find any way of working around these two issues, no matter what he does with formatting before or after using Find and Replace to get rid of the dashes.

What is happening is that when you edit the cells, Excel is parsing the cell contents as numbers instead of as text. In this case, the best solution is to make sure that your cell contents are preceded with an apostrophe before you do the Find and Replace to get rid of the dashes. If you have a worksheet that contains a lot of ISBN numbers in column A, you can add the apostrophes with a formula such as the following:

= "'" & A1

You can then copy the results of the formulas and then use Paste Special to paste values back into column A. Each value in column A will then include the apostrophe. When you later perform the Find and Replace, the leading zeroes will still be present and you won't get any attempts at scientific notation.

The reason this works is because the apostrophe is an indicator to Excel that the cell contents should be treated as text. The apostrophe isn't displayed in the worksheet, but it is part of the cell contents, as you can tell by looking at the Formula bar.

Another approach is to bypass using Find and Replace to get rid of the dashes. Instead use the SUBSTITUTE function to remove them, in this manner:

=SUBSTITUTE(A1,"-","")

The SUBSTITUTE worksheet function returns a text value, so any leading zeroes are maintained and Excel doesn't try to convert the numbers to use a numeric format.

If you routinely need to remove the dashes from a range of cells containing ISBNs, you might be better served to use a macro to do the operation. The following macro works upon whatever cells you've selected before running it.

Sub RemoveDashes()
    Dim c As Variant, sISBN As String

    Application.ScreenUpdating = False
    For Each c In Selection
        sISBN = Replace(c, "-", "")
        c.NumberFormat = "@"
        c.Value = "'" & sISBN
    Next
    Application.ScreenUpdating = True
End Sub

Basically the macro does three things: It removes the dashes, it formats the cell as text, and it places the stripped ISBN back in the cell with an apostrophe before it.

Note:

If you would like to know how to use the macros described on this page (or on any other page on the ExcelTips sites), I've prepared a special page that includes helpful information. Click here to open that special page in a new browser tab.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (9928) applies to Microsoft Excel 2007, 2010, and 2013. You can find a version of this tip for the older menu interface of Excel here: Removing Dashes from ISBN Numbers.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Formatting Currency

If you want to format currency values so that Excel uses periods between groups of thousands and commas as a decimal ...

Discover More

Working In Feet and Inches

Your chosen occupation may require that you work with linear distances in feet and inches. Excel can do this, to a ...

Discover More

Inconsistent Output for Empty Columns in a CSV File

When you create a CSV file in Excel, the information stored in the file may not contain all the fields that you think it ...

Discover More

Solve Real Business Problems Master business modeling and analysis techniques with Excel and transform data into bottom-line results. This hands-on, scenario-focused guide shows you how to use the latest Excel tools to integrate data from multiple tables. Check out Microsoft Excel 2013 Data Analysis and Business Modeling today!

More ExcelTips (ribbon)

Returning Least-Significant Digits

Do you ever have a need to return just a few digits out of a number? This tip shows different formulas you can use to ...

Discover More

Splitting Cells by Case

Excel provides several different ways that you can split apart the contents of a cell. One way it doesn't provide is to ...

Discover More

Using Named Formulas Across Workbooks

You can use the naming capabilities of Excel to name both ranges and formulas. Accessing that named information in a ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is four more than 2?

2018-05-14 08:09:03

Helen

Darren - thanks so much! Helen


2018-05-13 23:40:01

Darren E

Hi Helen,
If all you want to do is add leading zeros if required to make 6 digits, just use the formula
=TEXT(A1,"000000")
It works regardless of whether the cell contains a number or a string or whether there are already leading zeros.
123 (number) ==> 000123
'123 (string) ==> 000123
'0123 (string) ==> 000123

Cheers,


2018-05-10 13:50:02

Jeff

Hi Allen, thanks for the tip. I was wondering why “c” in your macro was declared as a variant and not as a range? I understand that selection does not have to be a range, but I don’t understand how declaring it as a variant avoids runtime errors.


2018-05-10 08:52:03

Helen

I have a similar issue with zip codes, so I was trying your suggestion (converting them to text, then checking length to add leading zeroes), I first did ="'"&A1 and it made the zip 63130 into '63130 Even when I copied and pasted to values it shows as '63130 and then using the length formula, it says it is length 6

What am I doing wrong? Thanks!


2016-06-20 07:34:26

Kim

Why if I put an 13 digit ISBN number in a .csv document if I close the document and reopen it changes all the digits after 978 to zeros.


This Site

Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.