![]() |
VBA to count periods in a single cell
I am looking to count the number of periods within a single cell using vba.
For instance if I have 4 cells that contain the following: 5M09-0000700.01.10 5M09-0000700.01.10.10 5M09-0000700.01.10.10.10 5M09-0000700.01.10.10.20 Thus the output of the code for the first cell should be '2', the second cell output would be '3', and the third/fourht cells would be '4' because that many period characters were encountered. Data within these cells will contain letters, numbers, periods, a few spaces and the "-" dash symbol. Any help is greatly appreciated! |
VBA to count periods in a single cell
Hi,
Try this =LEN(A1)-LEN(SUBSTITUTE(A1,".","")) Mike "Bubba" wrote: I am looking to count the number of periods within a single cell using vba. For instance if I have 4 cells that contain the following: 5M09-0000700.01.10 5M09-0000700.01.10.10 5M09-0000700.01.10.10.10 5M09-0000700.01.10.10.20 Thus the output of the code for the first cell should be '2', the second cell output would be '3', and the third/fourht cells would be '4' because that many period characters were encountered. Data within these cells will contain letters, numbers, periods, a few spaces and the "-" dash symbol. Any help is greatly appreciated! |
VBA to count periods in a single cell
One way
Option Explicit Sub countperiodsincell() Dim mc As Long Dim i As Long Dim j As Long Dim ic As Double mc = 9 ' column I For i = 3 To 6 ' first row to last row in range ic = 0 For j = 1 To Len(Cells(i, mc)) If Mid(Cells(i, mc), j, 1) = "." Then ic = ic + 1 Next j MsgBox ic Next i End Sub -- Don Guillett Microsoft MVP Excel SalesAid Software "Bubba" wrote in message ... I am looking to count the number of periods within a single cell using vba. For instance if I have 4 cells that contain the following: 5M09-0000700.01.10 5M09-0000700.01.10.10 5M09-0000700.01.10.10.10 5M09-0000700.01.10.10.20 Thus the output of the code for the first cell should be '2', the second cell output would be '3', and the third/fourht cells would be '4' because that many period characters were encountered. Data within these cells will contain letters, numbers, periods, a few spaces and the "-" dash symbol. Any help is greatly appreciated! |
VBA to count periods in a single cell
vba
Sub countperiodsincellFormula() Dim mc As Long Dim i As Long mc = 9 ' column I For i = 3 To 6 MsgBox Len(Cells(i, mc)) - _ Len(Application.Substitute(Cells(i, mc), ".", "")) Next i End Sub -- Don Guillett Microsoft MVP Excel SalesAid Software "Mike H" wrote in message ... Hi, Try this =LEN(A1)-LEN(SUBSTITUTE(A1,".","")) Mike "Bubba" wrote: I am looking to count the number of periods within a single cell using vba. For instance if I have 4 cells that contain the following: 5M09-0000700.01.10 5M09-0000700.01.10.10 5M09-0000700.01.10.10.10 5M09-0000700.01.10.10.20 Thus the output of the code for the first cell should be '2', the second cell output would be '3', and the third/fourht cells would be '4' because that many period characters were encountered. Data within these cells will contain letters, numbers, periods, a few spaces and the "-" dash symbol. Any help is greatly appreciated! |
VBA to count periods in a single cell
Put this in a standard module.
Function CountPeriodsInCell(rw As Long) As Integer CountPeriodsInCell = Len(Cells(rw, "I")) - _ Len(Application.Substitute(Cells(rw, "I"), ".", "")) End Function Then in any cell type "=CountPeriodsInCell(3)" 3- represents the row you want to calculate in Col. I You will then see the number of periods in Range("I3") Hope this helps! If so, let me know, click "YES" below. -- Cheers, Ryan "Bubba" wrote: I am looking to count the number of periods within a single cell using vba. For instance if I have 4 cells that contain the following: 5M09-0000700.01.10 5M09-0000700.01.10.10 5M09-0000700.01.10.10.10 5M09-0000700.01.10.10.20 Thus the output of the code for the first cell should be '2', the second cell output would be '3', and the third/fourht cells would be '4' because that many period characters were encountered. Data within these cells will contain letters, numbers, periods, a few spaces and the "-" dash symbol. Any help is greatly appreciated! |
VBA to count periods in a single cell
Give this a try...
Function CountDots(S As String) As Long CountDots = UBound(Split(S, ".")) - (Len(S) = 0) End Function -- Rick (MVP - Excel) "Bubba" wrote in message ... I am looking to count the number of periods within a single cell using vba. For instance if I have 4 cells that contain the following: 5M09-0000700.01.10 5M09-0000700.01.10.10 5M09-0000700.01.10.10.10 5M09-0000700.01.10.10.20 Thus the output of the code for the first cell should be '2', the second cell output would be '3', and the third/fourht cells would be '4' because that many period characters were encountered. Data within these cells will contain letters, numbers, periods, a few spaces and the "-" dash symbol. Any help is greatly appreciated! |
All times are GMT +1. The time now is 08:11 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com