Ⅰ EXCEL 問題:如何把某一文件夾內所有文件的文件名讀取出來
1.執行菜單操作「開始」→「運行」,彈出運行對話框,在裡面輸入 CMD 並按「確定」鍵,這個時候,會打開如下圖的MS-DOS窗口。
7.看到了沒有,文件夾中的照片名稱,自動就顯示在excel表格中了。
Ⅱ Excel列出文件夾內的文件名-僅使用公式
原文鏈接
在文件夾中列出文件名,是使用常規Excel公式無法完成的任務。我們可以使用VBA宏或PowerQuery,很多人一聽到VBA就頭大,更別說沒聽過的PowerQuery。那除了以上兩種方法,是否有能簡單實現的方式呢?
其實我們可以使用Excel中一個鮮為人知的函數,該功能今天仍然有效,即FILES函數。
如果在「插入函數」中直接搜索,Excel不會列出FILES。FILES函數使用方法比較特殊。以下說明將逐步指導您使用方法。
第一步是創建一個包含FILES函數的命名范圍。在Excel功能區中,單擊 「公式」->「定義名稱」
在 「新建名稱」 窗口中,按照下圖進行設置:
單擊 「確定」 關閉 「 新建名稱」 窗口。
第二步是使用listFiles命名范圍。
在「單元格A1」(或「 新建名稱/引用位置」 框中使用的單元格引用)中,輸入文件夾路徑,後跟一個星號(*)。星號是查找任何文本的通配符,因此將會列出文件夾中的所有文件。
選擇單元格(下面的截圖中的是A3單元格),輸入以下公式。
將會返回A1單元格路徑下的第一個文件名稱。
要提取第二個文件名稱,請輸入以下公式
單獨更改每個公式中的文件序號會很磨人,所以我們可以把公式寫成如下
ROW()函數返回單元格所在的行號。
如果將公式向下復制,超出了文件夾中文件總數時,將返回#REF!錯誤。
最後,我們可以使用IFERROR函數,對整個函數進行包裝美化。
FILES函數不僅能列出Excel文件,還列出了各種類型格式的文件,包括:pdf,csv,mp3,zip。在文件路徑中使用通配符,將能返回特定文件類型或特定含有特定字元的文件名。
下面的截屏,顯示如何列出所有的PDF文件。
可以應用的通配符為:
下面的截屏顯示了???通配符的用法。
下面是一些有關如何使用FILES函數的想法。
要計算文件夾中的文件數或滿足特定文件數,請使用以下公式:
只需添加HYPERLINK函數即可。
單元格A3中的公式為:
MATCH函數將返迴文件在文件夾中的位置。
B3單元格中的公式為:
在上面的示例中,包含文本「 New Yor * 」的文件是在文件夾內第七個文件,因此返回7。單元格B4顯示#N / A錯誤,因為文件夾中不存在「Seattle*」的文件。
可以使用INDEX / MATCH組合查找下一個或上一個文件。
「 Denver.xlsx 」 之後的下一個文件是「 New York.pdf 」。單元格B3中的公式為:
INDIRECT函數可以得到文本字元串指向的引用。
單元格B3中的公式為:
為了使INDIRECT正確計算,需要打開被引用的Excel文件,因此,此方法有重大缺陷。
使用FILES函數時,需要注意以下幾點:
Ⅲ 如何使用excel提取文件夾中的所有文件名稱
1、首先我們打開excel,點擊公式tab,找到「定義名稱」並點擊
2、在「編輯名稱」彈窗中,輸入名稱「文件名稱列表,引用位置輸入「
=FILES("D:\R語言學習20161118\*.*"),點擊「確定」
」
3、然後,我們在A1單元格輸入「=INDEX(文件名稱列表,ROW(A1))」,回車。就完成了。INDEX是在指定區域中,返回行列交叉值,ROW返回的是行號,A1 返回 1
4、如果首行不在A1,在A3的話,公式 「=INDEX(文件名稱列表,ROW(A3)-2)「。INDEX是在指定區域中,返回行列交叉值,ROW返回的是行號,A1 返回 1 ,如果首行不在A1,在A3的話,公式 「=INDEX(文件名稱列表,ROW(A3)-2)「,回車,下拉,完成。
5、進入D盤位置,去"R語言學習20161118"文件夾驗證一下,發現數據只提取了單個文件,未提取裡面的文件夾的名稱,大家借鑒的時候要注意。
6、關於分享經驗中用到的函數,大家可以下載 excel幫助文檔,查看各個函數的使用方法,含義。 或者大家在輸入函數的時候,也會出現簡單的提醒。
Ⅳ Excel怎樣批量提取文件夾和子文件夾所有文件
主要的方法有:
一、編程的方法,如Excel自帶的VBA,以及其他編程方法,如Python
二、Excel自帶的Power Qurey數據處理工具,Excel2010以上版本支持,但2010和2013要另外下載安裝,而2016以上版本安裝後就已默認安裝。
新建一個Excel工作簿,在工作簿的工作表中,數據菜單——獲取和轉換數據——獲取數據——來自文件——從文件夾,瀏覽到要提到文件名的文件夾,打開。就會把文件夾(包括子文件夾)下的所有文件導入到一個預覽對話框中,對話框中已可預覽到每個文件的文件名及各種文件屬性,如創建時間、完整路徑等。在此對話框中,選擇「轉換數據」(Excel版本不同,對話框稍有不同,但大同小異),進入到Power Qurey界面,在PQ界面工作界面中,刪除不需要的列,如果文件名不需要擴展名,就對文件名以小數點為分隔符拆分,再刪除擴展名列。反正你想怎麼整就怎麼整。整好後,從PQ的文件菜單中選擇關閉並上載到,上載到目錄工作表中。
以後文件夾內文件有增減變化,或文件名有修改,只要在工作表中右擊,選擇「刷新」即可得到更新。
Power Qurey的方法簡單快捷,基本上就點幾下滑鼠。不需要去這編程語言。按上面說的步驟一步步去操作,任何只要對Windows資源管理器有些了解,對Excel有基本了解的人都能完成。
三、DOS時代的方法,度友「二性北B」有介紹。
Ⅳ 使用WPS(Excel表格)批量提取本地文件名
可以看到「 數組 」、「 行序數 」、「 列序數 」、「 區域序數 」,index看起來需要四個參數,其實就兩個參數即可,第一個參數,( 必要的 ) 數組, 其次第二參數:要麼指定一行,要麼指定一列,要麼是指定一段區域。
先著重看一下 「數組」 ,這個數組可以是表中的單元格區域,也可以是數組常量。這樣的話,我們本來就是想要提取本地文件夾所有文件名,這個一堆文件名正是我們想要拿到的「數組」,那現在怎麼辦? 我們定義一個數組,請看下方 ↓ ↓ ↓ ↓ ↓ ↓ ↓
無論是WPS還是office大同小異,基本一致,只是部分功能名不同。
1)位置:公式--名稱管理器
2)使用名稱管理器來創建這個「未知」數組,打開名稱管理器後,點擊「新建」
3)出現以下界面,名稱自己隨意起,叫什麼都行。待會兒這個名字,就是安排給index函數的第一個參數,比如我起了個「測試數據」。
4)接下來 「 引用位置 」 又是 重點 ,這里使用Files函數來確定引用位置
例如:我想引用的文件夾位置如下,裡面各種文件
6)所以,我在引用位置處輸入: =FILES("你的文件路徑\*.文件格式")
7)當你確定要讀取「 某一種 」格式的文件,則可在路徑後面加上文件格式,例如我想要讀取文件夾下格式為.png的全部文件,
則可以這么寫 = FILES(" C:\Users\FH0003919\Desktop\測試\*.png")
8)若讀取文件夾下全部格式的文件,便可使用 *.* ,前一個*號表示不論什麼文件名都被讀取,後一個*號表示的是所有格式的文件被讀取。
於是,可以這樣寫 = FILES(" C:\Users\FH0003919\Desktop\測試\*.*")
1)比如,在B1單元格輸入公式 =index 後,開始填寫相應的參數,第一個參數當然是我之前編輯好的,名為「測試數據」。
2)接著再輸入行序數參數,ROW(B1),如圖所示
3)輸入完畢,回車!第一個文件名已經被提取,如圖
我文件夾下的第一個文件就是「test.xlsx」
4)再接著,直接將一列的數據全拖出來,一直拖到出錯,為啥出錯?當然是文件讀完啦,讀完了Excel會報錯
出錯的行刪掉即可,好了名稱提取完畢!
1)首先,將上一步提取到的文件名復制一列出來,選擇粘貼性中選擇只復制「值」(因為直接拿公式算出來的做分列的話,不說了,你可以試試)
2)選中粘貼好的數據,點 數據 - 分列
3)選擇「分隔符號」,下一步
4)勾選其他,輸入英文的點 「 . 」 此時你在數據預覽中已經可以看到效果。點下一步
5)忽略列,選擇完畢後,點完成
Ⅵ Excel 如何遍歷一個文件夾下的所有文件並得到文件名
如要提取「我的文檔」下所有文件名,先定義一個名稱,如Files
=FILES("C:\Users\用戶名\Documents\"&"*.*")
然後比如A列是序號,B列是文件名,就在B2中輸入公式:
=HYPERLINK("C:\Users\用戶名\Documents\"&INDEX(Files,ROW(A1)),INDEX(Files,ROW(A1)))
下拉