如何用vba对选中的word表格单元格的数字进行求和?

在一个word表格的任意单元格中存储有数字,当任意选中不同的单元格时,希望可以对其中的数字进行求和,并弹窗显示结果,可以使用如下的代码:

Sub QQ1722187970()
    Dim oRng As Range
    Dim oCell As Cell
    Dim oTable As Table
    Dim dSum As Double
    Dim sCellValue
    Dim arr()
    Dim i, j
    With Word.Application.Selection
        For Each oCell In .Cells
        sCellValue = oCell.Range.Text
        '把单元格结尾字符去掉
        sCellValue = VBA.Replace(sCellValue, Chr(13) & Chr(7), "")
            '判断单元格内容是否是数值
            If VBA.IsNumeric(sCellValue) Then
                ReDim Preserve arr(i)
                arr(i) = sCellValue
                dSum = dSum + arr(i)
                i = i + 1
            End If
        Next
    End With
    MsgBox "选择的数据是:" & Join(arr, " ") & vbCrLf & "共" & i & "个数据" & vbCrLf & "求和结果为:" & dSum
End Sub

以上代码只能针对选中的第一个word表格中的任意单元格,跨多个表格时,将只返回第一个表格中选中的单元格的数字之后。

       

发表评论