求一段VBA代码,将指定区域的文本格式的非空值的空白单元格转换成数值格式。

如题所述

先选中一个要转换的区域,然后执行下面宏代码即可
Sub 转换格式()
With Selection
For Each a In .Cells
.NumberFormatLocal = "0.00_ "
SendKeys "{F2}"
SendKeys "{enter}"
Next
End With
End Sub追问

你这个方法我知道 但是我这个a有点大 有大约1800×12的数据 而且有40个sheet 这样太慢了 一个表就要十几分钟 两个小时都搞不完 还没有手动来的快 有没有快点的办法?求指教

追答

有一种快速的方法,是不用VBA的,需要手动操作。
把表中数据“复制”出来,粘贴到一个文本文件(Txt),回到EXCEL,将区域格式设置成“数值”格式,然后再从txt文件中把刚才复制的数字粘贴回去,就变成数值了。

来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-14
Selection.NumberFormatLocal = "0.00_ "
相似回答