小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

利用Dir函數(shù)遍歷某文件夾下的所有文件 | VBA實(shí)例教程

 gblhp 2015-02-16

除非注明,文章均為 戰(zhàn)戰(zhàn)如瘋 原創(chuàng),轉(zhuǎn)載請(qǐng)保留鏈接: http://www./cat1/81.html,VBA交流群273624828。

今天介紹利用Excel VBA的Dir方法來遍歷某文件夾下的所有excel文件。還是直接來看例子,假設(shè)在D盤有一個(gè)叫工作日志的文件夾,里面放著每日的工作記錄,都是excel 2007表格,現(xiàn)在由于工作需要要從這里表格中提取數(shù)據(jù),那就需要依次對(duì)每個(gè)Excel表格進(jìn)行訪問。只要知道了工作表的名稱,我們就可以用workbook的Open方法或者GetObject方法從工作簿中獲得數(shù)據(jù),而Dir函數(shù)正是起到這個(gè)作用。Dir函數(shù)會(huì)按固定的順序依次訪問文件夾下的文件,并返回相應(yīng)文件的名稱,當(dāng)全部都訪問完時(shí)就會(huì)返回空值,因此返回值是不是空值可以做為判斷Dir函數(shù)是否遍歷完整個(gè)文件夾的依據(jù)。

看下面的代碼

Sub test()
Dim myfile
myfile = Dir("D:/工作日志/*.xlsx")   '返回對(duì)應(yīng)路徑下第一個(gè)符合*.xlsx的文件名稱
Do While myfile <> ""          '當(dāng)返回的文件名為空時(shí)停止循環(huán)
Debug.Print myfile          '將返回的結(jié)果顯示在立即窗口
myfile = Dir                 '返回對(duì)應(yīng)路徑下一個(gè)符合條件的文件名稱
Loop
End Sub

在Dir函數(shù)的路徑當(dāng)中是可以使用通配符的,在這里*代表任意個(gè)字符,那么*.xlsx就代表后綴名為xlsx的Excel 2007文件,對(duì)應(yīng)的你的Excel如果是2003版的,那就應(yīng)該是*.xls,如果你要遍歷的文件中兩個(gè)版本的都包括,那可以表示為*.xls*。Dir函數(shù)一次只能返回一個(gè)值 ,所以要遍歷所有的文件就要不斷的調(diào)用Dir函數(shù),但是第二次調(diào)用的時(shí)候就不必寫參數(shù)了, myfile = Dir 就會(huì)默認(rèn)的去尋找下一個(gè)符合條件的文件。Debug.Print myfile是將變量值顯示在立即窗口的意思,這句就可以換成你自己的操作代碼,比如在之前講到的“多個(gè)Excel工作簿中的數(shù)據(jù)匯總到一個(gè)Excel中(1)”就是對(duì)工作簿進(jìn)行了Open操作。

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多