运用VBA将Excel中【以文本存储的数字】转换为【数字】格式(去除绿色小三角)


需求:如下图,需将F、G、H共3列转换为数字格式,F列保留为整数,G、H列保留为2位小数的数字(且不带千分位)。对于个例的需求,一般用分列就好了,但是考虑到日报之类的频繁需求,还是用代码的好。

 1 Sub test3()
 2 
 3 Dim irow As Long
 4 Dim arr()
 5 
 6 irow = ActiveWorkbook.Sheets(1).Range("a1048576").End(xlUp).Row
 7 ReDim arr(1 To irow - 1, 3)
 8 arr = ActiveWorkbook.Sheets(1).Range("f2:H" & irow).Value
 9 
10 '转换单元格格式
11 With ActiveWorkbook.Sheets(1)
12     .Range("f2:H" & irow).ClearContents                 '清除待转换区域的数据
13     .Range("g2:H" & irow).NumberFormatLocal = "0.00"    'F列转换为整数数字格式
14     .Range("f2:f" & irow).NumberFormatLocal = "0"       'G列、H列转换为保留2位小数数字格式
15     .[f2].Resize(UBound(arr), 3) = arr
16 End With
17 
18 End Sub

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM