ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 21262|回复: 84

[求助] 批量清除文件夹下excel文件的公式,但保留数值的VBN宏代码

[复制链接]

TA的精华主题

TA的得分主题

发表于 2016-11-19 16:43 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
我想让某个主文件夹下(文件夹里还有多层文件夹)的所有EXCEL文件自动打开并执行清除公式保留数值的宏后再自动保存关闭,依次执行,求高手帮忙写下代码,不胜感谢
而且单个execl文件里有多个工作表

TA的精华主题

TA的得分主题

发表于 2016-12-3 21:18 | 显示全部楼层
参考附件>>>>>>>>>>>

测试.rar

875.65 KB, 下载次数: 432

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-12-2 10:00 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
没人呢,求大神帮忙啊

TA的精华主题

TA的得分主题

发表于 2016-12-2 10:36 来自手机 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
多层遍历,遍历文件夹,遍历工作簿,遍历工作表,遍历非空单元格,够怆!

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-12-2 14:27 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
lsc900707 发表于 2016-12-2 10:36
多层遍历,遍历文件夹,遍历工作簿,遍历工作表,遍历非空单元格,够怆!

求大神帮忙写代码啊,没办法,英文不好
资料比较多,一个文件夹下就上1000个工作表,不可能一个一个用宏去删啊,
上次我连着删公式弄了个通宵,无语了

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-12-2 16:54 | 显示全部楼层
来个大神帮帮忙啊,一个文件夹下就有1500多份表格,一个一个的话要删死人的

TA的精华主题

TA的得分主题

发表于 2016-12-2 17:38 | 显示全部楼层
踏歌123 发表于 2016-12-2 14:27
求大神帮忙写代码啊,没办法,英文不好
资料比较多,一个文件夹下就上1000个工作表,不可能一个一个用宏 ...

上传你的部分数据文件>>>>>>>>>

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-12-2 18:14 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
lsc900707 发表于 2016-12-2 17:38
上传你的部分数据文件>>>>>>>>>

求:批量清除文件夹及子文件夹下excel文件公式但保留数值的VBA代码
http://club.excelhome.net/thread-1315513-1-1.html
(出处: ExcelHome技术论坛)

TA的精华主题

TA的得分主题

发表于 2016-12-2 18:48 | 显示全部楼层
本帖最后由 lsc900707 于 2016-12-2 21:53 编辑
踏歌123 发表于 2016-12-2 18:14
求:批量清除文件夹及子文件夹下excel文件公式但保留数值的VBA代码
http://club.excelhome.net/thread-1 ...

不上传数据文件,就只能试试看,把标红的地方改成你自己的文件夹名:
Sub lsc()
    Dim tim1 As Date, tim2 As Date: tim1 = Timer
    Dim mypath, myfile, m, j, wb, arr()
    mypath = ThisWorkbook.Path & "\新建文件夹\"
    myfile = Dir(mypath, vbDirectory)
    Do While myfile <> ""
        If myfile <> "." And myfile <> ".." Then
            If GetAttr(mypath & myfile) = vbDirectory Then
                m = m + 1
                ReDim Preserve arr(m)
                arr(m) = mypath & myfile & "\"
            End If
        End If
        myfile = Dir
    Loop
    For j = 1 To m
        myfile = Dir(arr(j) & ".xls*")
        While myfile <> ""
            Set wb = CreateObject(arr(j) & myfile)
            For Each sh In wb.Sheets
               sh.UsedRange.value= sh.UsedRange.Value
            Next
            wb.Close
            myfile = Dir()
            Wend
        Next
        Set wb = Nothing
        tim2 = Timer
        MsgBox Format(tim2 - tim1, "亲,修改完成,耗时:0.00秒"), 64, "温馨提示"
    End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-12-2 19:05 | 显示全部楼层
lsc900707 发表于 2016-12-2 18:48
不上传数据文件,就只能试试看,把标红的地方改成你自己的文件夹名:
Sub lsc()
    Dim tim1 As Date, ...

我建了一个压缩包,文件夹里的形式就是这种差不多的
但是能不能把那个文件夹名改成可以选择某个文件夹形式的,或者这个代码我直接导入所在文件夹里的某个表格里运行,直接清楚此文件所在文件夹及子文件夹下的excel文件公式

测试.rar

898.55 KB, 下载次数: 277

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-12-2 19:14 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
lsc900707 发表于 2016-12-2 18:48
不上传数据文件,就只能试试看,把标红的地方改成你自己的文件夹名:
Sub lsc()
    Dim tim1 As Date, ...

清楚公式,但要保留数值,你这个代码是把内容全部都删除了
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-3-28 19:58 , Processed in 0.055805 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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