前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Excel实战技巧70: 仿Word的字数统计功能

Excel实战技巧70: 仿Word的字数统计功能

作者头像
fanjy
发布2019-12-24 13:50:51
1.3K0
发布2019-12-24 13:50:51
举报
文章被收录于专栏:完美Excel

在Word中,有一个“字数统计”功能(如下图1所示),可以统计文档或者所选文档区域中字数、字符数、行数、段落数等信息。

图1

选择文档中要统计的文本区域,单击“字数统计”命令,会弹出如下图2所示的统计信息。

图2

我们可以使用VBA编写一段代码,在Excel中实现所选单元格或单元格区域中的字数信息分类统计:

Sub TotalSelectionCharNum()

Dim str As String

Dim ChineseChar As Long

Dim Alphabetic As Long

Dim Number As Long

Dim Blank As Long

Dim AlpAndNum As Long

Dim i As Long

Dim j As Long

Dim k As Long

Dim rng As Range

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

'字母和数字在一起被认为是一个字

If i <> 1 And i= k + 1 Then AlpAndNum = AlpAndNum + 1

k = i

ElseIf str Like"[0-9]" = True Then

'数字累加

Number = Number + 1

If i <> 1 And i= k + 1 Then AlpAndNum = AlpAndNum + 1

k = i

ElseIf str Like "" = True Then

Blank = Blank + 1

End If

Next

Next

MsgBox "所选单元格区域中共有字符数(不计空格)" & _

j - Blank & "个,其中:" & vbCrLf & _

"汉字:" & ChineseChar &"个" & _

vbCrLf & "字母:" & Alphabetic &"个" & _

vbCrLf & "数字:" & Number & "个" & _

vbCrLf & "- - -- - - - - -" & _

vbCrLf & "空格:" & Blank & "个" & _

vbCrLf & "- - -- - - - - -" & _

vbCrLf & "所选单元格区域中共有字数(不计空格)" & _

j - Blank - AlpAndNum& "个", _

vbInformation, "字数统计"

End Sub

选择工作表中的单元格区域,运行TotalSelectionCharNum过程,得到字数统计信息如下图3所示。

图3

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档