五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Excel VBA:批量對文件任意重命名(移動)

2022-07-13 22:26 作者:ch_j  | 我要投稿

一、普通VBA代碼的問題

如果用Dir()方法和MkDir方法,一般只能在已經(jīng)存在的文件夾內(nèi)創(chuàng)建一層新的子文件夾。無法命名任意多層文件夾。

也就是說,如現(xiàn)在如果已經(jīng)存在文件夾【E:\ABC】,才能創(chuàng)建【E:\ABC\DEF】;否則是不能直接創(chuàng)建后面的新文件夾的。

二、創(chuàng)建任意文件夾的思路

1.創(chuàng)建FSO對象【文件系統(tǒng)對象】

用FSO對象主要是因為它處理文件與文件夾更專業(yè),里面有各種函數(shù)和方法,不需要自己通過Mkdir/Dir/Split等函數(shù)和方法慢慢構(gòu)造路徑;同時避免很多出錯的可能。

2.判斷盤符是否存在

比如給定需要創(chuàng)建的文件夾是

路徑 = "E:\A\b/C\d/ef\g/h\i\j\k/m/n"

利用【FSO.DriveExists()】函數(shù)判斷給定的路徑對應(yīng)的盤符【E:\】是否存在,如果盤符不存在,是不可能創(chuàng)建出給定文件夾的,此時直接即出程序;否則,繼續(xù)向下執(zhí)行程序。

3.循環(huán)逐層判斷文件夾

(1)利用【FSO.FolderExists()】函數(shù),從給定的完整路徑開始,逐級向上判斷第級文件夾路徑是否存在。

判斷流程:

第1次,判斷【E:\A\b/C\d/ef\g/h\i\j\k/m/n】是否存在
第2次,判斷【E:\A\b/C\d/ef\g/h\i\j\k/m】是否存在
第3次,判斷【E:\A\b/C\d/ef\g/h\i\j\k】是否存在
……
第n次,判斷【E:\A】是否存在

A.如果不存在,則裝入一個動態(tài)數(shù)組arr中;

B.如果該級文件夾路徑存在,則往上肯定都存在了,就不再向上一級父文件夾進(jìn)行判斷。

(2)倒著循環(huán)arr

即從上面記錄文件夾路徑的數(shù)組arr的最大下標(biāo)開始循環(huán),直到最小下標(biāo)結(jié)束,步長-1。

因為我們創(chuàng)建文件夾,是要按下面箭頭所示的順序由下向上逐級來操作的:

創(chuàng)建文件夾的秦順序

(3)創(chuàng)建文件夾

用【FSO.CreateFolder】方法逐級創(chuàng)建文件夾

(4)完成

循環(huán)arr完成,多層文件夾創(chuàng)建完成

三、創(chuàng)建任意多層文件夾示例代碼

四、批量對文件任意重命名

在上述創(chuàng)建多層文件夾的方法的基礎(chǔ)上,咱們可以對已經(jīng)存在的文件任意移動或重命名

操作方法:

1.整理新舊文件名

在Excel的【Sheet1】表格和A列寫原文件完整路徑,B列寫新文件名的完整路徑

注:第一行是標(biāo)題不會算在內(nèi)

2.執(zhí)行

點擊【Sheet1】表格里的【執(zhí) 行】按鈕,即可完成。

運行方法

或者打開文件,在代碼主程序處點擊運行也一樣。

3.示例代碼

五、文件

鏈接: https://pan.baidu.com/s/1zKAlHsCTd8fU33cxMVgtGw?pwd=uhsi 提取碼: uhsi 復(fù)制這段內(nèi)容后打開百度網(wǎng)盤手機(jī)App,操作更方便哦

打開文件直接操作即可。


Excel VBA:批量對文件任意重命名(移動)的評論 (共 條)

分享到微博請遵守國家法律
沁水县| 临沂市| 汉阴县| 康乐县| 彰武县| 昌图县| 米泉市| 马边| 卓资县| 宿州市| 鹿邑县| 平远县| 东源县| 三明市| 乌兰察布市| 竹溪县| 腾冲县| 曲沃县| 成都市| 乳山市| 双柏县| 呼玛县| 阜宁县| 亳州市| 乐亭县| 曲麻莱县| 新营市| 迁安市| 威宁| 泾川县| 个旧市| 扎囊县| 右玉县| 育儿| 澄城县| 沧州市| 益阳市| 博罗县| 崇仁县| 江西省| 磐安县|