Dir函數(shù)的重要性在Office VBA的世界里,要跨文件進(jìn)行批量操作(如多個(gè)工作簿同名工作表合并,多個(gè)工作簿合并等),Dir函數(shù)是經(jīng)常要用到的。 當(dāng)你學(xué)會(huì)利用VBA進(jìn)行多文件的批量操作,命運(yùn)的齒輪或許正在悄然開(kāi)始轉(zhuǎn)動(dòng)......別人可能需要一個(gè)1小時(shí)才能完成的工作量,你只要10分鐘或更少的時(shí)間就能完成。 這里通過(guò)3個(gè)小案例,拋磚引玉,介紹Dir函數(shù)的基本用法。 3個(gè)小案例案例1:獲取D盤(pán)下所有文件名稱(chēng) Sub 獲取D盤(pán)的所有文件名稱(chēng)() Dim fn As String fn = Dir('D:\*.*') Do While fn <> '' Debug.Print fn fn = Dir LoopEnd Sub 案例2:獲取D盤(pán)下所有xls、xlsm等類(lèi)型的文件名稱(chēng)
案例3:獲取D盤(pán)下所有文件夾及文件名稱(chēng) Sub 獲取D盤(pán)的所有文件夾名稱(chēng)和文件名稱(chēng)() Dim fn As String fn = Dir('D:\*.*', vbDirectory) Do While fn <> '' Debug.Print fn fn = Dir LoopEnd Sub 基本語(yǔ)法
pathname參數(shù):支持使用多字符(*)和單字符(?)通配符來(lái)匹配指定類(lèi)型的文件; attributes參數(shù):默認(rèn)為vbNormal,返回文件名稱(chēng)。另一個(gè)常用的取值為vbDirectory,則返回目錄名稱(chēng)、和文件名稱(chēng)。 其他說(shuō)明1.必須在首次調(diào)用 Dir 函數(shù)時(shí)指定 pathname參數(shù);Dir函數(shù)會(huì)返回與 pathname 匹配的第一個(gè)文件名; 2.重新調(diào)用 Dir 而不使用參數(shù),會(huì)返回與pathname匹配的下一個(gè)文件名;當(dāng)不再有匹配的文件名時(shí),Dir 將返回空字符串;在返回空字符串后,重新調(diào)用 Dir 而不使用參數(shù),將會(huì)發(fā)生錯(cuò)誤; 3.Dir函數(shù),通常和循環(huán)語(yǔ)句結(jié)合使用,將Dir函數(shù)返回的空字符串,作為循環(huán)語(yǔ)句結(jié)束的條件。 |
|