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: Counting Asterisks.

Counting Asterisks

by Allen Wyatt
(last updated November 30, 2017)

6

David needs to count the number of asterisks that appear in a range of cells. He notes that COUNTIF appears to assume that * is a wild card character, so it doesn't return the proper count.

There are a number of ways to get results, based upon what it is you actually want to get. Let's assume that you have the following values in cells A3:A8:

  • 1234
  • abcd
  • ab*cd
  • ab*c*d
  • *
  • ***

In these six cells there are a total of seven asterisks. To determine the number of asterisks appearing within the range, you'll need to rely upon an array formula, such as this one:

=SUM(LEN(A3:A8)-LEN(SUBSTITUTE(A3:A8,"*","")))

Remember to enter the formula with Ctrl+Shift+Enter.

Of course, you might want to count the number of cells in the range that contain a single asterisk instead of the number of actual asterisks. In this case you can actually use the COUNTIF function, provided you know how to put the formula together. First, try this formula:

=COUNTIF(A3:A8,"*")

With the data shown at the beginning of this tip, this formula returns the value 5. This, of course, is wrong. The reason it returns this result is because COUNTIF uses * as a wildcard that means "any text in the cell." Since there are five cells in the range that contain text (non-numeric values), that is the answer returned by the formula.

You might think that if you searched for the ANSI character of the asterisk, instead of the asterisk itself, you could get the correct result. This formula shows this approach:

=COUNTIF(A3:A8,CHAR(42))

This formula also returns the incorrect answer (5). It appears that Excel sees no difference, in application, between searching for * and searching for CHAR(42). Both are still treated as a wildcard.

The solution to this is to remember that you can force Excel to treat the asterisk as an actual character by preceding it with a tilde, character, in this manner:

=COUNTIF(A3:A8,"~*")

This returns a result of 1, which may be surprising. Excel is very literal, however, and your formula asked for a count of all the cells which contain a single asterisk. The correct answer is that only one cell (A7) contains what you asked for. If you want to count all the cells that contain an asterisk anywhere within the cell, then you need to surround the formula with wildcard characters, in this manner:

=COUNTIF(A3:A8,"*~**")

This returns "any text" followed by a literal asterisk followed by "any text." The result is 4, which is the number of cells that contain at least one asterisk.

The concept of using tildes to counteract wildcards is covered in this Knowledge Base article:

http://support.microsoft.com/kb/214138

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

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

Changing the Height of a Font

Scaling the width of a font is easy to do with Word's formatting capabilities. Scaling the height of the fonts is not so ...

Discover More

Specifying Sub-entries in an AutoMark File

An AutoMark file allows you to quickly and easily create an index from a document. This can be a great boon for large ...

Discover More

Referencing Fields in Another Document

Sometimes you may have two documents that are so integrally related to each other that the one document may require the use ...

Discover More

Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!

More ExcelTips (ribbon)

Calculating an IRR with Varying Interest Rates

You might wonder how you can calculate an IRR (internal rate of return) when the person repaying the loan pays different ...

Discover More

Adding Dashes between Letters

When processing some text data, you may need to perform some esoteric function, such as adding dashes between letters. While ...

Discover More

Getting a Conditional Count of Cells Containing Values

Excel provides several worksheet functions that can be used to count cells containing values—particularly numeric ...

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 6 - 0?

2017-06-09 06:04:08

Steve

Thank you for the tilde tip, solved my problem, very grateful


2016-12-07 15:52:59

Shar

This did not work for me


2016-06-28 10:46:26

Struan

Superb! Such a simple solution (*~**, but saved a lot of frustration. Thankyou


2016-04-05 13:41:19

Arjun

This is brilliant, just validates there are some many geniuses around.


2016-01-06 18:49:20

Carla

HI there
Have similar problem
data looks like this

gyne
gyne onco
gyne robot
gyne onco*
gyne*

need to count as follows:

gyne or gyne* = is the same
gyne onco and gyne onco* = is the same

But when i write countif(a1:a5,b1(which is gyne*) it does not count (gyne and gyne* only but everything that starts with gyne???

I think the problem is with the *. How can I fix this.

HOpe someone can help. Thanks


2015-11-03 22:45:29

Paul

Thanks for this - I couldn't fathom why my COUNTIF wouldn't count the instances of *** in a list (nor, while I'm at it, ===)but this tip saved my bacon 8-D


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.