1 / 12
文档名称:

Excel使用Vba读取文件夹下所有文件.docx

格式:docx   大小:1,258KB   页数:12页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Excel使用Vba读取文件夹下所有文件.docx

上传人:儒林 2024/4/30 文件大小:1.23 MB

下载得到文件列表

Excel使用Vba读取文件夹下所有文件.docx

相关文档

文档介绍

文档介绍:该【Excel使用Vba读取文件夹下所有文件 】是由【儒林】上传分享,文档一共【12】页,该文档可以免费在线阅读,需要了解更多关于【Excel使用Vba读取文件夹下所有文件 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。Excel使用Vba读取文件夹下所有文件最近使用VBA编程,要用到一个功能,使得Excel能够读取指定文件夹下的所有文件名称。使用的是Excel2010版本,但是在Excel2003版本中能够使用的FileSearch在Excel2010版中会出错,因此不得不另找其它方法,下面介绍三种方法,在Excel单元格中显示特定目录下的文件名称(文件大小,日期时间等),也可以自行修改符合自己的使用要求。在Excel2010和Excel2003版本中均测试过可行。我工作中使用繁体,第三种方法使用的是繁体,所以在简体系统下会乱码,这个不会妨碍程序运行,gongxi1是我设置的一个窗体,可忽略。第三种不仅仅能导入特定文件下的所有文件,也可以导入文件夹下的文件夹文件。第一种:Subtestit()DimkAsVariantDimmAsVariantm=1????myvar=FileList("C:\Users\ownding\SkyDrive\文档\工作事項")????????ExitFunction????EndIf????Do????????sHldr=Dir????????IfsHldr=""ThenExitDo????????sTemp=sTemp&"|"&sHldr????Loop????FileList=Split(sTemp,"|")EndFunction-----------------------------------------------------------------------------第二种:OptionExplicitSubListFiles()????DimDirectoryAsString????DimrAsLong????DimfAsString????DimFileSizeAsDouble????????(msoFileDialogFolderPicker)????????.InitialFileName=&""????????.Title="Selectalocationcontainingthefilesyouwanttolist."????????.Show????????=0Then????????????ExitSub????????Else????????????Directory=.SelectedItems(1)&""????????EndIf????EndWith????r=1'?插入表头????????Cells(r,1)="Filesin"&Directory????Cells(r,2)="Size"????Cells(r,3)="Date/Time"????Range("A1:C1").=True????'??获得第一个文件????f=Dir(Directory,vbReadOnly+vbHidden+vbSystem)????DoWhilef<>""????????r=r+1????????Cells(r,1)=f????????'调整?filesize>2gigabytes????????FileSize=FileLen(Directory&f)????????IfFileSize<0ThenFileSize=FileSize+4294967296#????????Cells(r,2)=FileSize????????Cells(r,3)=FileDateTime(Directory&f)????'??获得下个文件????????f=Dir????LoopEndSub-----------------------------------------------------------------------------第三种:OptionExplicitSubGetAllFiles()????DimDirectoryAsString????DimAnsAsVariant????DimusedtimeAsDouble????Ans=MsgBox("琌钡旧ゅン嘿匡拒隔畖",vbYesNo+vbQuestion)????'矗ㄑ匡拒ゅンの钡旧ゅン匡兜????IfAns=vbNoThen????(msoFileDialogFolderPicker)????????.InitialFileName=&""????????.Title="叫匡拒ゅンЖ."????????.Show????????=0Then????????????ExitSub????????Else????????????Directory=.SelectedItems(1)&""????????EndIf????EndWith????????Else????????????Directory="\\\ziliao\垂\だ摸诀计沮\etch-befor"????EndIf????????????usedtime=Timer????=False????????CallRecursiveDir(Directory)????'础????,_Range("A2").CurrentRegion,,xlYes????=True????????usedtime=Format(Timer-usedtime,"")????=usedtime????(ByValCurrDirAsString)????DimDirs()AsString????DimNumDirsAsLong????DimFilenameAsString????DimPathAndNameAsString????DimiAsLong????DimFilesizeAsDouble'??絋玂ゅン程\挡Ю????IfRight(CurrDir,1)<>""ThenCurrDir=CurrDir&""'??讽玡い材︽结????Cells(2,1)="ゅン隔畖"????Cells(2,2)="ゅン嘿"????Cells(2,3)=""????Cells(2,4)="ら戳/丁"????Cells(2,5)="赣虫琌穨"????Range("A1:E2").=True????'??莉眔ゅン????OnErrorResumeNext