Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
Solved

# How to create a user function to count for a particular characters in a cell

Posted on 2016-10-06
Medium Priority
59 Views
I had this question after viewing Count specific characters in a cell or range in Excel.

I need the function to be available for all my spreadsheets.
0
Question by:Alex Campbell
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 3
• 3
• 2

LVL 93

Expert Comment

ID: 41832143
Is there some reason why you couldn't use the formula solution provided in that previous question?

If you want to know how many instances of the letter "o" occur in A1:

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

If you want to know how often the letter "o" occurs in the range A1:A3, use this array formula:

{=SUM(LEN(A1:A3)-LEN(SUBSTITUTE(A1:A3,"o","")))}

To enter an array formula, DO NOT type the curly braces, and use Ctrl+Shift+Enter instead of Enter to finish the formula.
0

LVL 1

Author Comment

ID: 41832176
I want the function be available in all the spreadsheets without re-entering the function each time.
0

LVL 93

Expert Comment

ID: 41832191
Even if this were deployed as a UDF, you would still have to write a formula using that UDF in all of your workbooks.

Going the UDF route only makes sense if the functionality you need is not readily available through the built-in functions.
0

LVL 32

Expert Comment

ID: 41832282
Patrick is right here.
Even the link you provided offered a inbuilt formula based solution which you can use in any of your workbooks.
But if for any reason you want to use a UDF, you may place the following code on a Standard Module of a blank workbook and save it as an Excel Add-in (.xlam) and then enable that Add-in from the Developer Tab --> Add-Ins.

``````Function CountCharacters(cell As Range, Character As String) As Long
CountCharacters = Len(cell.Value) - Len(Replace(cell.Value, Character, ""))
End Function
``````
Then you can use the above function on the worksheet as below....
``````=CountCharacters(A1,"character to count")
``````
0

LVL 1

Author Comment

ID: 41832815
I have gone through the steps several times, but I must be doing something wrong.  While it shows up in the Add-Ins list, it doesn't show up when I start typing the function name.

"But if for any reason you want to use a UDF, you may place the following code on a Standard Module of a blank workbook and save it as an Excel Add-in (.xlam) and then enable that Add-in from the Developer Tab --> Add-Ins."
0

LVL 32

Accepted Solution

Subodh Tiwari (Neeraj) earned 2000 total points
ID: 41832964
Please make sure that you followed the steps exactly shown in the following video.
http://www.screencast.com/t/JjKPiFjk
0

LVL 1

Author Closing Comment

ID: 41833803
Both the answer and video were very good. I was not familiar with Inserting a Module.
0

LVL 32

Expert Comment

ID: 41833867
You're welcome Alex! Glad to help.
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

My attempt to use PowerShell and other great resources found online to simplify the deployment of Office 365 ProPlus client components to any workstation that needs it, regardless of existing Office components that may be needing attention.
We live in a world of interfaces like the one in the title picture. VBA also allows to use interfaces which offers a lot of possibilities. This article describes how to use interfaces in VBA and how to work around their bugs.