tft每日頭條

 > 科技

 > 批量顯示子文件夾下的文件名

批量顯示子文件夾下的文件名

科技 更新时间:2024-07-19 15:12:37

如何在Excel工作表中列出某個文件夾下的所有文件名稱呢?本文介紹兩種方法。

第一種方法使用浏覽器,操作非常簡單,不需要使用函數,缺點是不能自動更新。

第二種方法使用Files函數,用法并不複雜。當文件夾中的文件增加或減少時,可以更新文件名稱。當文件夾内有多種類型的文件時,可以隻列出特定類型的文件,比如隻列出Excel文件。此外,還可以創建對文件的超鍊接,單擊超鍊接,即可打開對應的文件。

1

方法一:使用浏覽器

如下圖所示,要求在工作表中列出“示例”文件夾中的所有文件。

批量顯示子文件夾下的文件名(這個函數真強大)1

(1)複制路徑“E:\示例”,打開浏覽器,将複制的路徑粘貼到地址欄,按<Enter>鍵,如下圖所示

批量顯示子文件夾下的文件名(這個函數真強大)2

(2)按<Ctrl A>全選浏覽器中列出的文件名稱,然後複制粘貼到工作表中。

這種方法操作非常簡單,不需要使用函數,缺點是不能自動更新。粘貼到工作表中的文件名稱雖然看上去是一個超鍊接,不過單擊并不能打開相應的文件。

批量顯示子文件夾下的文件名(這個函數真強大)3

2

方法二:使用Files函數

Files函數是宏表函數,不能直接在單元格中使用,需要先定義名稱,然後才能在單元格中使用。

1、定義名稱

在B1單元格輸入文件路徑,注意最後的“*”不要省略。“*”是通配符,表示任意長度的字符。這樣可以提取“示例”文件夾中的所有文件名稱。

單擊【公式】-【定義名稱】,在【名稱】框中輸入名稱,本例為“myfiles”。【引用位置】處輸入公式:=FILES(方法二!$B$1)&T(NOW()),注意公式中的B1單元格必須使用絕對引用。

批量顯示子文件夾下的文件名(這個函數真強大)4

公式解析:

(1)FILES(方法二!$B$1)可以提取B1單元格指定文件夾下的所有文件名稱。但是當文件夾中的文件增加或減少時,Files函數不能自動更新結果,所以需要引入“&T(NOW())”。

(2)T函數用于檢測是否為文本,是文本,則原樣返回文本;不是文本,則返回空文本。Now()返回當前時間,在Excel中,時間的本質是數值。因此T(Now())返回空文本。由于Now()函數是易失性函數,當在單元格中輸入值或修改單元格時,可以強制Files函數自動重算,從而更新Files函數的計算結果。

當文件夾中的文件增加或減少時,單獨使用Files函數不能更新提取的文件名稱。但是Files函數搭配T(Now())使用,則可以實現自動更新提取的文件名稱。

2、提取文件名

B3單元格輸入公式:=INDEX(myfiles,ROW(A1))

向下複制公式至B10單元格。

批量顯示子文件夾下的文件名(這個函數真強大)5

公式解析:

(1)Files函數返回的是一個包含所有文件名稱的水平數組。因此使用Index函數依次提取每個文件名稱。

(2)當已列出所有文件名稱時,函數返回錯誤值。可以使用IFERROR函數屏蔽錯誤值。B3單元格輸入公式:=IFERROR(INDEX(myfiles,ROW(A1)),"")。

當所有文件名都已列出後,返回空文本。

批量顯示子文件夾下的文件名(這個函數真強大)6

(3)當文件夾中新增文件時,雙擊任意一個單元格或按<F9>鍵,提取的文件名稱會更新。

批量顯示子文件夾下的文件名(這個函數真強大)7

(4)如果隻需要提取某種類型的文件,比如Excel文件,可以将B1單元格數據修改為:E:\示例\*.xls*,表示隻提取擴展名為“xls*”的文件名稱,也就是Excel文件。

批量顯示子文件夾下的文件名(這個函數真強大)8

(5)如果希望創建指向文件的超鍊接,可以搭配hyperlink函數使用。

B3單元格輸入公式:

=HYPERLINK(LEFT($B$1,LEN($B$1)-1)&IFERROR(INDEX(myfiles,ROW(A1)),""),IFERROR(INDEX(myfiles,ROW(A1)),""))

批量顯示子文件夾下的文件名(這個函數真強大)9

Hyperlink函數的語法為hyperlink(link_location,[Friendly_name])。link_location指鍊接文件存放位置,先使用LEFT函數從B1單元格提取文件存放路徑,然後和Index函數提取的文件名連接。

friendly_name表示鍊接顯示的文本,本例中顯示的文本是使用Index函數提取的文件名。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved