VBA遍历文件编辑.docx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VBA遍历文件编辑

Excel VBA - 遍历某个文件夹中文件、文件夹及批量建立txt我们可能会经常要将一个文件夹中的所有文件都遍历一遍,然后进行修改,下面就介绍用Dir函数实现遍历*.xlsx文件的方法Dir 函数返回一个?String,用以表示一个文件名、目录名或文件夹名称,它必须与指定的模式或文件属性、或磁盘卷标相匹配。语法Dir[(pathname[,?attributes])]第一个参数即是文件的地址,第一次引用的时候要标注,第二次用的时候就不必指出了,下面举个例子,遍历下面文件夹中的Excel2010文件,然后输出文件的名字~?批量遍历某类文件(*.xlsx)?[vb]?view plain?copy?print?Sub?OpenAndClose()??????Dim?MyFile?As?String??????Dim?s?As?String??????Dim?count?As?Integer??????MyFile?=?Dir(C:\Users\McDelfino\Desktop\2.JPL_SCAT_EXCEL全\??*.xlsx)??????读入文件夹中的第一个.xlsx文件??????count?=?count?+?1???????记录文件的个数??????s?=?s??count??、??MyFile??????Do?While?MyFile????????????MyFile?=?Dir????????第二次读入的时候不用写参数??????????If?MyFile?=??Then??????????????Exit?Do?????????当MyFile为空的时候就说明已经遍历完了,这时退出Do,否则还要运行一遍??????????End?If??????????count?=?count?+?1??????????If?count?Mod?2??1?Then??????????????s?=?s??vbTab??count??、??MyFile??????????Else??????????????s?=?s??vbCrLf??count??、??MyFile??????????End?If??????Loop??????Debug.Print?s??End?Sub??运行结果如下:53、遍历每个文件,并且修改文件,先将文件的名字存在数组中,然后通过数组遍历打开每个文件,修改,再关闭文件~[vb]?view plain?copy?print?Sub?OpenCloseArray()??????Dim?MyFile?As?String??????Dim?Arr(100)?As?String??????Dim?count?As?Integer??????MyFile?=?Dir(C:\Users\McDelfino\Desktop\2.JPL_SCAT_EXCEL全\??*.xlsx)??????count?=?count?+?1??????Arr(count)?=?MyFile????????????Do?While?MyFile????????????MyFile?=?Dir??????????If?MyFile?=??Then??????????????Exit?Do??????????End?If??????????count?=?count?+?1??????????Arr(count)?=?MyFile?????????将文件的名字存在数组中??????Loop????????????For?i?=?1?To?count??????????Workbooks.Open?Filename:=C:\Users\McDelfino\Desktop\2.JPL_SCAT_EXCEL全\??Arr(i)??循环打开Excel文件??????????????Cells(1,?1)?=?alex_bn_lee?????????????修改打开文件的内容??????????ActiveWorkbook.Close?savechanges?=?True?????关闭打开的文件??????Next??End?Sub??要是想要修改每个工作簿的内容可以这样遍历一下,显示将文件夹中的工作簿的名字存到一个字符串数组中,然后在用For...Next语句遍历?批量遍历某个文件夹中的所有文件(*.*)?注意:遍历的时候,顺序完全是按照文件名的顺序排的,而不是按照文件夹中文件的顺序~[vb]?view plain?copy?print?Sub?dlkfjdl()??????Dim?MyFile?As?String??????Dim?count?As?Integer??????count?=?1??????MyFile?=?Dir(C:\User

文档评论(0)

2017ll + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档