在一个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表格中的任意单元格,跨多个表格时,将只返回第一个表格中选中的单元格的数字之后。


发表评论