在工作中是不是遇到过输入求和函数却无法求和的情况?输入的公式明明是对的,却得不到想要的结果。
很多人碰到过这样的情况,其实大多情况下是因为数值所在单元格的格式问题。
解决方式有不少,上一期分享了一个通过单元格格式设置,选择性粘贴用法,解决求和问题。
本期跟大家分享一个VBA批量处理整列数据单元格格式转为数值格式的方法,格式转换完以后再求和就方便多了。按步骤操作,新手也可以,欢迎点赞关注。
第一步、
打开表格,首先把需要求和的整列选中,右击鼠标将单元格格式设置为数值格式。
再选择【开发工具】进入【设计模式】,在工作表任一位置插入一个“命令按钮”。

第二步、还是在设计模式下,双击这个命令按钮,弹出VBE编辑窗口,复制以下代码到代码编辑器图中空白区域,并保存。
复制完以后代码效果如下图
第三步、退出设计模式,选中数值所在列的任一单元格,点击命令按钮,即可将数据批量设置为数值格式,然后通过Sum函数求和即可。
你学会了吗?现在就动手试一试吧。
期待你的点赞、关注,不迷路。
代码如下:
Dim r As Long
Dim i As Long
Dim c As Long
c = Selection.Column
Rem c表示选中单元格的列标,选择数据所在列中任一单元格即可
r=Cells(Rows.Count,c).End(xlUp).Row
Rem r表示数据列最后一行
Rem 以下从第2行开始循环设置单元格格式为数值格式,并统一运算加0
For i = 2 To r
Cells(i, c).NumberFormatLocal = "0.00_ "
Cells(i, c) = Cells(i, c) + 0
Next
MsgBox "已将第" & c & "列转换为数值格式 "