1、首先打开一个工作样表作为例子。

2、打开vba代码编辑器,插入一个新模块,并输入以下代码:Sub 求和() Dim r Dim t As Long For Each r In Selection If IsNumeric(r.Value) Then t = t + r.Value End If Next MsgBox "所选区域数值之和为:" & tEnd Sub

3、因为是区域求值,所以我们预设最后的得值会较大,所以我们定义一个t变量为长整数型,其数值取值范围为-2,147,483,648 到 2,147,483,647内不会发生溢出。

4、使用for each循环语句查询在所选单元格区域内是否有变量r元素,如果有,则执行foreach埂黉餐嚣循环内的过程。

5、使用if判断语句来确认所选区域单元格内的元素是否为数值,如果为数值则取其值,递进相加求区域和值。

6、使用msgbox函数来显示区域求和值。我们添加一个控件按钮来实现这个过程的运算。最后得出结果如图。
