Option Explicit
'对当前单元格中的文本进行字数统计
Sub TotalCellCharNum()
Dim i As Long
i = Len(ActiveCell.Value)
MsgBox "当前单元格的字数为:" & Chr(10) & i
End Sub
'对所选的单元格区域中的文本进行字数统计
Sub TotalSelectionCharNum()
Dim i As Long
Dim rng As Range
For Each rng In Selection
i = i + Len(rng.Value)
Next rng
MsgBox "所选单元格区域的字数为:" & Chr(10) & i
End Sub
'对当前单元格中的文本分类进行字数统计
Sub SubTotalCellCharNum()
Dim str As String, ChineseChar As Long
Dim Alphabetic As Long, Number As Long
Dim i As Long, j As Long
j = Len(ActiveCell.Value)
For i = 1 To Len(ActiveCell)
str = Mid(ActiveCell.Value, i, 1)
If str Like "[一-龥]" = True Then
ChineseChar = ChineseChar + 1 '汉字累加
文章内容来源于网络,由强国说-WPS之家(wps.qiangguoshuo.com)收集,希望能为广大朋友提供帮助。
ElseIf str Like "[a-zA-Z]" = True Then
Alphabetic = Alphabetic + 1 '字母累加
ElseIf str Like "[0-9]" = True Then
Number = Number + 1 '数字累加
End If
Next
MsgBox "当前单元格中共有字数" & j & "个,其中:" & vbCrLf & "汉字:" & ChineseChar & "个" & _
vbCrLf & "字母:" & Alphabetic & "个" & _
vbCrLf & "数字:" & Number & "个", vbInformation, "文本分类统计"
End Sub
'对所选的单元格区域中的文本分类进行字数统计
Sub SubTotalSelectionCharNum()
Dim str As String, ChineseChar As Long
Dim Alphabetic As Long, Number As Long
Dim i As Long, rng As Range, j As Long
For Each rng In Selection
j = j + Len(rng.Value)
For i = 1 To Len(rng)
str = Mid(rng.Value, i, 1)
If str Like "[一-龥]" = True Then
ChineseChar = ChineseChar + 1 '汉字累加
ElseIf str Like "[a-zA-Z]" = True Then
Alphabetic = Alphabetic + 1 '字母累加
ElseIf str Like "[0-9]" = True Then
Number = Number + 1 '数字累加
End If
Next
Next
MsgBox "所选单元格区域中共有字数" & j & "个,其中:" & vbCrLf & "汉字:" & ChineseChar & "个" & _
vbCrLf & "字母:" & Alphabetic & "个" & _
vbCrLf & "数字:" & Number & "个", vbInformation, "文本分类统计"
End Sub
转载声明:本站发布文章及版权归原作者所有,转载本站文章请注明文章来源!