此功能应计算选定范围内的所有特殊隐藏字符。
我遇到一个错误。 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
答案 0 :(得分:2)
简而言之,将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