word vba 如何读取表格中某单元格的数字类型的数据,并参与表达式运算

word 中的表格,使用vba 让单元格参与数据运算。是word,不是excel,不是excel。

可以使用VBA,读取Word文档中的所有表格,并把数字类型的单元格读出来计算。

下面是示例代码,自己适当改改就可以用了。

Dim tbs,tb, rg
Set tbs = documents(1).Tables
For t1 = 1 To tbs.Count
    Set tb = tbs(t1)
    For i = 1 To tb.Rows.Count
        For j = 1 To tb.Columns.Count
            With tb
                rg = .Cell(i,j).Range.Text
                rg = left(rg, len(rg)-2)
                If IsNumeric(rg) Then
                    '这里可以补充代码,把表格中的数字,参与表达式运算
                End If
            End With
        Next j
    Next i
Next t1
Set tbs = nothing
Set tb = nothing

追问

不好意思,下边一句话调试的时候,提示说
数据类型不匹配
是怎么回事

biaoge2.Cell(3 + c, 4).Range.InsertAfter (biaoge2.Cell(3 + c, 3).Range.Text - biaoge2.Cell(3 + c, 2).Range.Text) * 1000

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-17
写个测试程序测试下就行。这种简单的计算交给Excel更好,而不是去弄复杂的VBA,在Excel中处理好数据然后再转成Word的表格即可。
如果是表格嵌套表格,读取其中的指定数据,如果WORD中每一页都有文字和表格。可以在excel中选择要创建word应用程序后再打开要操作的文档,再提取word内容中表格部分内容。
这里有俩学习贴:http://club.excelhome.net/thread-1130724-1-1.html
http://club.excelhome.net/thread-1019313-1-1.html
希望帮到你~~~~追问

不好意思了,我要的是word的写法

本回答被网友采纳
第2个回答  2021-01-12

SQL Server数据中运算符与表达式