Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2519|回复: 6

[已解决]求教对工作簿中所有工作表中的文本都转换成数值的方法?

[复制链接]
发表于 2014-3-26 15:45 | 显示全部楼层 |阅读模式
本帖最后由 eikok 于 2014-3-31 08:48 编辑

求教对工作簿中所有工作表中的文本都转换成数值的方法?
Sub 文本加成数值()
    Range("bt6").Select
    Selection.Copy
    Cells.Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
        False, Transpose:=False
End Sub
上面的代码是录制宏得来的
但是要往一个一个工作表中复制.F5运行
最佳答案
2014-3-26 19:58
  1. Sub Macro1()
  2. For i = 1 To Sheets.Count
  3.     With Sheets(i).UsedRange
  4.         .NumberFormatLocal = "G/通用格式"
  5.         .Value = .Value
  6.     End With
  7. Next
  8. End Sub
复制代码
发表于 2014-3-26 15:57 | 显示全部楼层
本帖最后由 我心飞翔410 于 2014-3-26 16:00 编辑

晕 还是 for each 循环结构啊 或者for
Sub 文本加成数值()
Dim sh As Worksheet
For Each sh In Worksheets
    sh.Range("bt6").Copy
    sh.Cells.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
        False, Transpose:=False
Next
End Sub

回复

使用道具 举报

发表于 2014-3-26 19:58 | 显示全部楼层    本楼为最佳答案   
  1. Sub Macro1()
  2. For i = 1 To Sheets.Count
  3.     With Sheets(i).UsedRange
  4.         .NumberFormatLocal = "G/通用格式"
  5.         .Value = .Value
  6.     End With
  7. Next
  8. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2014-3-31 08:48 | 显示全部楼层
我心飞翔410 发表于 2014-3-26 15:57
晕 还是 for each 循环结构啊 或者for
Sub 文本加成数值()
Dim sh As Worksheet

小白学习中……
请多关照{:021:}
回复

使用道具 举报

 楼主| 发表于 2014-3-31 09:30 | 显示全部楼层
dsmch 发表于 2014-3-26 19:58

.NumberFormatLocal = "g/通用格式"
求VBA中把所有工作表转换成数值并保留两位小数的方法?
回复

使用道具 举报

发表于 2014-3-31 09:55 | 显示全部楼层
eikok 发表于 2014-3-31 09:30
.NumberFormatLocal = "g/通用格式"
求VBA中把所有工作表转换成数值并保留两位小数的方法?

录制宏即可获得代码
.NumberFormatLocal = "0.00"
回复

使用道具 举报

 楼主| 发表于 2014-4-1 15:00 | 显示全部楼层
dsmch 发表于 2014-3-31 09:55
录制宏即可获得代码
.NumberFormatLocal = "0.00"

多谢,
这是个窍门{:021:}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 16:24 , Processed in 0.297696 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表