excel批量修改多个工作簿文件中同一位置的数据
最近有朋友咨询:“软件直接生成的Excel文件很多,有些数据**。**KN由软件自动填写。但是由于数据单元的问题,需要手动改为***。*每次KN。一般来说这样的文档有几十个,人工修改的工作量很大,请问有没有什么简单的方法。”
在他给的工作簿中,有两个位置的数据需要修改,即单元格G27和G54,格式都是**。**KN,应该修改为***。*KN。如下图所示。
你可以和VBA一起完成这些任务。代码如下:
子数据排列()
将字符串形式的字符串路径变暗
将字符串形式的字符串变暗
将Wb作为工作簿变暗
将rng1调暗为范围
将rng2调暗为范围
获取文件夹路径和工作簿。
strPath=此工作簿。路径“\”
strName=Dir(strPath "*)。xls* ")
出错时继续下一步
申请。屏幕更新=假
遍历文件夹中的工作簿。
除了代码所在的工作簿。
在strName时执行""
如果需要,请输入此工作簿的名称。名称然后
设置Wb=工作簿。打开(strPath strName)
要修改的单元格。
可根据实际情况进行调整。
设置rng1=范围(“G27”)
设置rng2=范围(“G54”)
传递给修改该值的子进程。
ModifyDatas rng1、rng2
关闭并保存工作簿。
Wb。关闭真
如果…就会结束
获取下一个工作簿。
strName=Dir
环
申请。屏幕更新=真
末端接头
修改接收单元格中的值。
子修改数据(rng1作为范围,rng2作为范围)
出错时继续下一步
添加一个判断条件,防止每次运行时更改单元格值。
如果Mid(rng1,Len(RNG 1)3,1)”。然后
rng1。值=左(rng1。数值,Len(rng1。值)2)* 1“千牛”
如果…就会结束
如果Mid(rng2,Len(RNG 2)3,1)”。然后
rng2。值=左(rng2。数值,Len(rng2。值)2)* 1“千牛”
如果…就会结束
末端接头
datasarrangeprocess遍历工作簿所在文件夹中除此工作簿之外的所有工作簿,修改工作簿中当前工作表单元格G27和G54中的值,并关闭和保存修改后的工作簿。
运行datasarrangeprocess批量修改文件夹中的工作簿,达到如图所示的效果。
代码版本如下:
版权声明:excel批量修改多个工作簿文件中同一位置的数据是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。