欢迎来到天天文库
浏览记录
ID:39984557
大小:20.83 KB
页数:3页
时间:2019-07-16
《批量修改多个工作簿》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、批量修改多个工作簿[复制链接]发表于2011-10-2615:48:04
2、只看该作者
3、倒序浏览批量修改多个工作簿可同时对许多工作簿同时进行修改。有时,我们有许多相同格式的数据文件,如果需要对这些数据文件进行相同格式或内容的修改,这时,如果一个一个打开工作簿再修改的话,那么操作起来即费时,又容易出错。我们可以使用VBA来解决批量修改多个工作簿的问题。什么?我不懂VBA。其实不难,不懂VBA也没关系。如果你不懂VBA,那么只要仔细看,只有一个地方是需要你自己改的。其它的只管照抄就行了。开始吧!那么如
4、何批量修改多个工作簿呢?我们整理这样的思路:1、能不能让Excel自动打开每一个工作簿,修改完成后,再关闭保存?2、Excel如何知道我要修改的这些工作簿和修改内容呢?3、是同时打开这些工作簿修改呢;还是一次打开一个工作簿后,在每一个工作表中修改保存,然后再打开别一个修改保存?下面我们提供这样一种批量修改多个工作簿的办法:1、一次提供给Excel所有要修改的工作簿2、每次打开一个工作簿后,在每一个工作表中修改后保存关闭,再打开另一个修改,直至批量修改所有指定的多个工作簿。批量修改多个工作簿的操作
5、步骤如下:1、打开VBE代码编辑器,打开的方法参照这两个页面的介绍Excel2003打开代码编辑器、Excel2007打开代码编辑器2、在右侧的窗口中输入:1.PublicstrPath(1000)AsString2.PublicstrBookName(1000)AsString复制代码这两个数组用来保存要批量修改多个工作簿的路径和文件名称,因为我们在后面要用到,所以采用Public关键字,定义公用变量。3、接着在右侧的窗口中输入:1.PublicFunctionOpenExcelFile(nF
6、ileNumAsInteger)AsString2. DimnCountAsInteger3. FornCount=1TonFileNum4. strPath(nCount)=Application.GetOpenFilename(fileFilter:="MicrosoftExcel(*.xls),*.xls,MicrosoftExcel(*.xlsx),*.xlsx")1. IfstrPath(nCount)="False"Then2. MsgB
7、ox"Excel文件错误",vbCritical3. ExitFunction4. EndIf5. Workbooks.OpenFilename:=strPath(nCount),UpdateLinks:=0,ReadOnly:=False6. strBookName(nCount)=ActiveWorkbook.Name7. NextnCount8.EndFunction复制代码这个函数用来循环打开指定的Excel文件。4、接着在右侧的窗口
8、中输入:1.SubModifyFiles()2. DimvFileNumAsVariant3. vFileNum=Trim(InputBox("请输入打开文件的数量(1-1000):"))4. IfvFileNum<1OrvFileNum>1000Then5. MsgBox"数量错误",vbCritical6. ExitSub7. EndIf8.9. OpenExcelFile(vFileNum)10. DimnCountFileAsInt
9、eger11. FornCountFile=1TovFileNum12. IfstrPath(nCountFile)="False"Then13. ExitSub14. EndIf15. NextnCountFile16.17. Application.DisplayAlerts=False18. FornCountFile=1TovFileNum19. Workbooks(strBookName(nCountFile)).Activate20
10、. DimshtAsWorksheet21. ForEachshtInWorksheets22. '更改这一行代码在所有的工作表内修改。23. sht.[A1]=124. Next25. Workbooks(strBookName(nCountFile)).CloseTrue26. NextnCountFile27. Application.DisplayAlerts=True28.1. MsgBox"
此文档下载收益归作者所有