Excel精英培训网

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

[已解决]将文件夹内所有的工作簿内上的文件全部文本型数字转换为可参与运算的数字

[复制链接]
发表于 2013-11-4 19:23 | 显示全部楼层 |阅读模式
各位老师,我想把下面这个的vba修改一下,原vba只是本工作簿内的文件修改,我想改成同一文件夹内操作除开按钮所在的工作簿之外的所以文件,谢谢了!
Sub test()
      Dim sh As Worksheet, arr
      For Each sh In Sheets
          If sh.name<>"表一"   or sh.name<> "表二" or ……then
          With sh.UsedRange
              arr = .Value
              .Value = arr
          End With
End if
      Next
End Sub
最佳答案
2013-11-5 16:24
icenotcool 发表于 2013-11-5 14:30
老师不行啊,你看我上传的系统导出报表样本,工作簿的4个sheet的报表都属于被整理对象,我用老师的vab测试了 ...

已经修改,请测试
2013年10月份各科门诊功能报表333.rar (20.91 KB, 下载次数: 13)
发表于 2013-11-4 19:30 | 显示全部楼层
本帖最后由 yyyydddd8888 于 2013-11-5 07:56 编辑

Sub test()
      Dim wb As Workbook, sh As Worksheet, arr, mypath$, myname$
         Application.ScreenUpdating = False
         mypath = ThisWorkbook.Path & "\"
         myname = Dir(mypath & "*.xls")
         Do While myname <> ""
            If myname <> ThisWorkbook.Name Then
               Set wb = Application.Workbooks.Open(mypath & myname)
                 For Each sh In wb.Sheets
                    With sh.UsedRange
                    arr = .Value
                    .Clear
                    .Value = arr
                    End With
                 Next
                 wb.RemovePersonalInformation = False
                 wb.Close True
             End If
             myname = Dir
        Loop
Application.ScreenUpdating = False
End Sub

回复

使用道具 举报

 楼主| 发表于 2013-11-4 20:06 | 显示全部楼层
yyyydddd8888 发表于 2013-11-4 19:30
Sub test()
      Dim sh As Workbook, arr,mypath$,myname$
         application.screenupdating=false ...

老师,不能执行的,我修改了一下是除“数据转换”之外的所有工作簿的所有工作表都执行,请看附件 举例.rar (17.58 KB, 下载次数: 8)
回复

使用道具 举报

 楼主| 发表于 2013-11-5 00:01 | 显示全部楼层
老师把你的代码粘贴上附件里没有反应啊,怎么回事呢?
回复

使用道具 举报

发表于 2013-11-5 07:57 | 显示全部楼层
这次应该可以了,必须清除原来的格式才行。
如附件:

举例.zip

30.61 KB, 下载次数: 2

回复

使用道具 举报

 楼主| 发表于 2013-11-5 08:33 | 显示全部楼层
老师,但是假如是系统导出的报表,有些是居中合并的。这样一清除合并,报表就乱了,怎么办?
回复

使用道具 举报

发表于 2013-11-5 12:44 | 显示全部楼层
本帖最后由 yyyydddd8888 于 2013-11-5 12:49 编辑
icenotcool 发表于 2013-11-5 08:33
老师,但是假如是系统导出的报表,有些是居中合并的。这样一清除合并,报表就乱了,怎么办?

哦,我再想想。
回复

使用道具 举报

发表于 2013-11-5 13:15 | 显示全部楼层
icenotcool 发表于 2013-11-5 08:33
老师,但是假如是系统导出的报表,有些是居中合并的。这样一清除合并,报表就乱了,怎么办?

请看这样行不行:

举例333.zip (16.56 KB, 下载次数: 3)
回复

使用道具 举报

 楼主| 发表于 2013-11-5 14:30 | 显示全部楼层
本帖最后由 icenotcool 于 2013-11-5 15:04 编辑

老师不行啊,你看我上传的系统导出报表样本,工作簿的4个sheet的报表都属于被整理对象,我用老师的vab测试了,都不行,系统导出样表附件 2013年10月份各科门诊功能报表0.rar (16.9 KB, 下载次数: 2)
回复

使用道具 举报

发表于 2013-11-5 16:24 | 显示全部楼层    本楼为最佳答案   
icenotcool 发表于 2013-11-5 14:30
老师不行啊,你看我上传的系统导出报表样本,工作簿的4个sheet的报表都属于被整理对象,我用老师的vab测试了 ...

已经修改,请测试
2013年10月份各科门诊功能报表333.rar (20.91 KB, 下载次数: 13)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-13 09:02 , Processed in 0.369514 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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