批量修改多个工作簿

上传人:门**** 文档编号:139164541 上传时间:2022-08-22 格式:DOC 页数:3 大小:20.83KB
收藏 版权申诉 举报 下载
批量修改多个工作簿_第1页
第1页 / 共3页
批量修改多个工作簿_第2页
第2页 / 共3页
批量修改多个工作簿_第3页
第3页 / 共3页
资源描述:

《批量修改多个工作簿》由会员分享,可在线阅读,更多相关《批量修改多个工作簿(3页珍藏版)》请在装配图网上搜索。

1、批量修改多个工作簿 复制链接 发表于 2011-10-26 15:48:04 |只看该作者 |倒序浏览 批量修改多个工作簿可同时对许多工作簿同时进行修改。有时,我们有许多相同格式的数据文件,如果需要对这些数据文件进行相同格式或内容的修改,这时,如果一个一个打开工作簿再修改的话,那么操作起来即费时,又容易出错。我们可以使用VBA来解决批量修改多个工作簿的问题。什么?我不懂VBA。其实不难,不懂VBA也没关系。如果你不懂VBA,那么只要仔细看,只有一个地方是需要你自己改的。其它的只管照抄就行了。开始吧!那么如何批量修改多个工作簿呢?我们整理这样的思路:1、能不能让Excel自动打开每一个工作簿,修

2、改完成后,再关闭保存?2、Excel如何知道我要修改的这些工作簿和修改内容呢?3、是同时打开这些工作簿修改呢;还是一次打开一个工作簿后,在每一个工作表中修改保存,然后再打开别一个修改保存?下面我们提供这样一种批量修改多个工作簿的办法:1、一次提供给Excel所有要修改的工作簿2、每次打开一个工作簿后,在每一个工作表中修改后保存关闭,再打开另一个修改,直至批量修改所有指定的多个工作簿。批量修改多个工作簿的操作步骤如下:1、打开VBE代码编辑器,打开的方法参照这两个页面的介绍Excel2003打开代码编辑器、Excel2007打开代码编辑器2、在右侧的窗口中输入:1. Public strPath

3、(1000) As String2. Public strBookName(1000) As String复制代码这两个数组用来保存要批量修改多个工作簿的路径和文件名称,因为我们在后面要用到,所以采用Public关键字,定义公用变量。3、接着在右侧的窗口中输入:1. Public Function OpenExcelFile(nFileNum As Integer) As String2. Dim nCount As Integer3. For nCount = 1 To nFileNum4. strPath(nCount) = Application.GetOpenFilename(file

4、Filter:=Microsoft Excel(*.xls), *.xls,Microsoft Excel(*.xlsx), *.xlsx)5. If strPath(nCount) = False Then6. MsgBox Excel文件错误, vbCritical7. Exit Function8. End If9. Workbooks.Open Filename:=strPath(nCount), UpdateLinks:=0, ReadOnly:=False10. strBookName(nCount) = ActiveWorkbook.Name11. Next nCount12.

5、End Function复制代码这个函数用来循环打开指定的Excel文件。4、接着在右侧的窗口中输入:1. Sub ModifyFiles()2. Dim vFileNum As Variant3. vFileNum = Trim(InputBox(请输入打开文件的数量(1-1000):)4. If vFileNum 1000 Then5. MsgBox 数量错误, vbCritical6. Exit Sub7. End If8.9. OpenExcelFile (vFileNum)10. Dim nCountFile As Integer11. For nCountFile = 1 To v

6、FileNum12. If strPath(nCountFile) = False Then13. Exit Sub14. End If15. Next nCountFile16.17. Application.DisplayAlerts = False18. For nCountFile = 1 To vFileNum19. Workbooks(strBookName(nCountFile).Activate20. Dim sht As Worksheet21. For Each sht In Worksheets22. 更改这一行代码在所有的工作表内修改。23. sht.A1 = 124.

7、 Next25. Workbooks(strBookName(nCountFile).Close True26. Next nCountFile27. Application.DisplayAlerts = True 28.29. MsgBox 完成!, vbInformation30. End Sub复制代码这个函数用来批量修改多个工作簿,一次打开一个工作簿后,在每一个工作表中修改保存、然后再打开别一个修改保存,直至批量修改所有指定的多个工作簿,完成后提示。其中上面代码的第23行:1. sht.A1 = 1复制代码即是修改的代码,这个代码的意思是A1单元格的值是1。其它的代码都不需要管,只需

8、要把你要在每个工作簿的工作表中修改的内容,替换掉这个代码即可。比如B1单元格的内容是“Excel伙伴天下”,可以改成这样:1. sht.B1 = Excel伙伴天下复制代码那么所有的工作簿中工作表的B1单元格的内容就被批量修改为“Excel伙伴天下”。5、将光标定位在你已经替换好的要批量修改多个工作簿的代码处,按F5键,运行程序。Excel提示你要一次修改多少个文件,然后依次打开这些文件,如果你打开的文件数量和输入的数量相等,Excel就开始批量修改多个工作簿;否则Excel退出,什么也不做。6、批量修改多个工作簿完成后,Excel给出完成提示,指定的文件即完成指量修改。注意:代码中的汉字如果

9、复制到VBA代码编辑器中是乱码,那么在对应代码处手工输入中文,这样在代码运行时,你可以看到Excel给出的提示。批量修改多个工作簿的问题关于上面批量修改多个工作簿代码,如果我要一次修改1000文件,我不是要打开1000次文件,这也是挺累人的?另外,如果我要修改的文件超过1000个呢?还有,从C5:C10的单元格区域要批量修改,我一个一个写么?有没有更好的办法?还有,我只想在这些文件的第一个工作表中修改,也就是批量修改多个工作簿的第一个工作表,这个怎么改呢?.相信这些都不是问题,当你把前面的都弄明白了,应该就知道了要改什么地方,才能达到你要批量修改多个工作簿的目的。如何, 工作, 工作表, 多, 编辑器

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!