1. Dim dFilePath As Object, OneKey
  2. Sub main_proc()
  3. Dim Wb As Workbook, Sht As Worksheet, Rng As Range
  4. Set Wb = Application.ThisWorkbook
  5. Set Sht = Wb.Worksheets(1)
  6.  
  7. Set dFilePath = CreateObject("Scripting.Dictionary")
  8. RecursionFolder ThisWorkbook.Path & "\"
  9.  
  10. For Each OneKey In dFilePath.keys
  11. Ar = dFilePath(OneKey)
  12. Ar(2) = WordCount(Ar(1))
  13. Debug.Print Ar(2) & " " & Ar(1)
  14. dFilePath(OneKey) = Ar
  15. Next OneKey
  16.  
  17. With Sht
  18. .UsedRange.Offset(1).Clear
  19. Set Rng = .Range("A2")
  20. Set Rng = Rng.Resize(dFilePath.Count, 3)
  21. Rng.Value = Application.Rept(dFilePath.items, 1)
  22. End With
  23.  
  24. Set Wb = Nothing
  25. Set Sht = Nothing
  26. Set Rng = Nothing
  27. Set dFilePath = Nothing
  28. End Sub
  29. Sub RecursionFolder(ByVal FolderPath As String)
  30. Dim Fso As Object
  31. Dim MainFolder As Object
  32. Dim OneFolder As Object
  33. Dim OneFile As Object
  34. Set Fso = CreateObject("Scripting.FileSystemObject")
  35. Set MainFolder = Fso.GetFolder(FolderPath)
  36. For Each OneFile In MainFolder.Files
  37. If OneFile.Name Like "*.doc*" Then
  38. dFilePath(dFilePath.Count + 1) = Array(OneFile.Name, OneFile.Path, 0)
  39. End If
  40. Next
  41. For Each OneFolder In MainFolder.SubFolders
  42. RecursionFolder OneFolder.Path
  43. Next
  44. Set Fso = Nothing
  45. Set MainFolder = Nothing
  46. End Sub
  47.  
  48. Private Function WordCount(ByVal FilePath As String) As Long
  49. Dim wdApp As Object
  50. Dim wdDoc As Object
  51.  
  52. On Error Resume Next
  53. Set wdApp = GetObject(, "Word.Application")
  54. If wdApp Is Nothing Then
  55. Set wdApp = CreateObject("Word.Application")
  56. End If
  57. On Error GoTo 0
  58.  
  59. WordCount = 0
  60. On Error Resume Next
  61. Set wdDoc = wdApp.Documents.Open(FilePath)
  62. If wdDoc Is Nothing Then
  63. wdApp.Quit
  64. Set wdApp = Nothing
  65. On Error GoTo 0
  66. Exit Function
  67. Else
  68. WordCount = wdDoc.ComputeStatistics(0, False) '0为字数
  69. wdDoc.Close False
  70. wdApp.Quit
  71. Set wdApp = Nothing
  72. End If
  73. End Function

  

20171023xlVBA递归统计WORD字数的更多相关文章

  1. 使用JQ实现统计剩余字数

    JQ实现统计文本框剩余字数 效果图: 代码如下,复制即可使用: <html lang="en"> <head> <meta charset=" ...

  2. PHP 中如何正确统计中文字数

    PHP 中如何正确统计中文字数?这个是困扰我很久的问题,PHP 中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了 strlen,mb_strlen,mb_strwidth 这个三个函数去测 ...

  3. LaTeX统计文章字数

    今天学会了用LaTeX命令统计文章字数,命令如下: textcount doc_full_path.tex 效果如下:

  4. word统计章节字数

    只有我这么无聊了..写论文的时候发现每次想看这个章节的字数统计时,还需要全选然后再看字数统计,太麻烦了.所以想着用宏写个能直接查看选定章节的字数统计. 具体方法如下: 建立宏:视图--宏--录制宏-- ...

  5. Delphi 统计Word文档中的字数

    急待解决的问题就是如何用delphi实现word中的统计字数 另外想多了解一些关于操作word的相关内容 比如用ole动态创建的和TWordApplication的偏重点在哪里,有什么不同等等…… 用 ...

  6. 统计 Word 文档字数的方式

    描述 欲统计某文档的字数,有两种方式. "审阅"选项卡--"校对"组--字符统计 点击左下角字数统计 审阅查看字数 此步骤较为复杂,在审阅选项卡中可以查询文档的 ...

  7. 【原创】大数据基础之词频统计Word Count

    对文件进行词频统计,是一个大数据领域的hello word级别的应用,来看下实现有多简单: 1 Linux单机处理 egrep -o "\b[[:alpha:]]+\b" test ...

  8. java统计中英文字数 Java问题通用解决代码

    http://yangchao20020.blog.163.com/blog/static/483822472011111635424751/   这个不适用于新浪微博字数的统计,结果有差别,若需要可 ...

  9. AJPFX:实现递归统计文件夹的总大小

    class Statistical {    public static void main(String[] args) {        Scanner sc = new Scanner(Syst ...

随机推荐

  1. python --- 11 第一类对象 函数名 闭包 迭代器

    一 .函数名的运用    ①函数名是⼀个变量, 但它是⼀个特殊的变量, 与括号配合可以执⾏函数的变量 ②函数名是一个内存地址    ③ 函数名可以赋值给其他变量         ④函数名可以当做容器类 ...

  2. Selenium Webdriver wait for JavaScript JQuery and Angular

    Hi all, during the last two weeks I was dealing with the best solution to wait for both JQuery, Angu ...

  3. 求最大流dinic算法模板

    //最短增广路,Dinic算法 struct Edge { int from,to,cap,flow; };//弧度 void AddEdge(int from,int to,int cap) //增 ...

  4. 小白学习 Redis 数据库日记(2017-06-13)

    redis 127.0.0.1:6379> LPUSH runoobkey redis(integer) 1redis 127.0.0.1:6379> LPUSH runoobkey mo ...

  5. django过滤器,日期格式化

    过滤器相关: 一.形式:小写{{ name | lower }} 二.串联:先转义文本到HTML,再转换每行到 标签{{ my_text|escape|linebreaks }} 三.过滤器的参数显示 ...

  6. ECharts公共组件:title详解、 tooltip详解、toolbox详解、legend详解、dataZoom详解、visualMap全解

    1. Title mytextStyle={ color:"#333",                           //文字颜色 fontStyle:"norm ...

  7. FireMonkey 源码学习(1)

    FireMonkey采用了与VCL不同的机制,很多基础类已经重新编写了,好在一如既往地提供了源代码,故此有机会学习一下. 一.图形引擎 FireMonkey采用了纯图形化技术解决可视化控件,而不是使用 ...

  8. HDU 5607 graph(矩阵乘法)

    题意 在一个 \(n\) 个节点 \(m\) 条边的有向图上随机游走,有 \(Q\) 个询问,每次给定一个起点 \(u\) 和步数 \(K\) ,每次回答最后停在每个节点的概率. \(1 \leq n ...

  9. HashMap 和 HashTable 的区别

    1. 存储结构 HashMap HashTable 数组 + 链表/红黑树 数组 + 链表 HashMap的存储规则: 优先使用数组存储, 如果出现Hash冲突, 将在数组的该位置拉伸出链表进行存储( ...

  10. Java String 函数常用操作 & format() 格式化输出,代码详解

    package _String_; import java.util.*; import java.math.*; import java.lang.*; public class _Strings ...