vba - 在 Word 中自动执行 LEN() 函数
问题描述
再会,
我正在尝试在 Word 中复制 Excel 中的LEN()函数,并使其尽可能自动化,就像程序允许的那样。
我设法创建了一个简短的模块,它计算某个销售的字符数,然后将结果发布到右侧的单元格:
Sub NumChars()
With Selection.Paragraphs(1)
.Next.Range.Text = .Range.Characters.Count
End With
End Sub
这是结果:
现在,不便之处在于,如果我有多行,那么我必须为他们每一个人都这样做,因此问题是,如何修改 VBA,以便它重复该功能直到到达最后一行? 例如,我曾经按下第一行的“运行”按钮,它(重新)计算该列中每个单元格的所有字符数,直到它到达最后一行。
每一个帮助将不胜感激。
解决方案
您的想法是正确的,但是您需要将其与遍历表格的每一行结合起来,如本例所示:
Option Explicit
Sub test()
Dim mydoc As Document
Set mydoc = ThisDocument
Dim tbl As Table
For Each tbl In mydoc.Tables
CountMyChars tbl
Next tbl
End Sub
Sub CountMyChars(ByRef tbl As Table)
Const CHAR_COL As Long = 2
Const COUNT_COL As Long = 3
Dim row As Long
Dim col As Long
For row = 1 To tbl.Rows.Count
'--- assumes the characters to count are in Column 2
' and the cell to hold the count is Column 3
tbl.Cell(row, COUNT_COL).Range.Text = tbl.Cell(row, CHAR_COL).Range.Characters.Count
Next row
End Sub
推荐阅读
- css - ionic 6 - 创建带有图标的圆形离子按钮
- numpy - 火炬挤压,狭窄,切片?
- javascript - 如何让 div 图像调整大小保持纵横比,让给另一个 div
- flutter - 我对我的颤振项目进行了空安全迁移,但它显示语言版本错误
- c++ - 将成员函数作为参数发送给模板类的成员
- php - PHP- 使用 RegEx 语句将字符串转换为数组
- sql - 连接到 SQL Server 的 Excel 表仅返回数字列
- java - OutputStreamWriter 不重写文件
- python - 来自 CountVectorizer 的术语相对频率矩阵
- c - 将结构数组传递给 C 中的用户定义函数