繁体   English   中英

计算功能范围内的特殊字符

[英]Count special characters in range in a function

此功能应计算选定范围内的所有特殊隐藏字符。

我有一个错误。 StrIn = C.Text不起作用。

Function hiddencount(Rng As Range)

Dim C As Range
Dim cnt As Integer
Dim iCh As Integer
Dim StrIn As String
cnt = 0

For Each C In Rng.Cells
    C.Value = StrIn

    If Not C.HasFormula Then
        For iCh = 1 To Len(StrIn)
            If Asc(Mid(StrIn, iCh, 1)) < 32 Then
                cnt = cnt + 1
            End If
        Next iCh
    Else
    End If
Next C

hiddencount = cnt

End Function

简而言之,将C.Value = StrIn更改为StrIn = C.Text


您实际上确实不需要此变量。 它只是创建更多代码以供日后阅读。 为什么不只使用C.Text以便清楚地分析什么? 另外,如果您不打算对Else语句执行操作,则可以将其删除。

Function hiddencount(Rng As Range)

Dim C As Range, cnt As Integer, iCh As Integer

For Each C In Rng.Cells
    If Not C.HasFormula Then
        For iCh = 1 To Len(C.Text)
            If Asc(Mid(C.Text, iCh, 1)) < 32 Then cnt = cnt + 1
        Next iCh
    End If
Next C

hiddencount = cnt

End Function

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM