Excel怎样批量提取文件夹和子文件夹所有文件?

做一个文件索引目录,把文件夹下面的文件夹里的所有表格数据都可以在一张表格里查询,发给对方时,对方也能查看

题意理解:希望批量提取所有文件(注:特定某类文件),并批量建立超链接,当发给对方时,对方可以直接打开文件(注:双方对于文件路径均有共享权)

解法(该解法针对批量提取某类特定文件或所有文件,并批量建立超链接):
一. 批量提取文件
方法一. 微软WIN 8或者WIN 10 操作系统,可以借助自带功能实现批量获取文件夹内文件路径:选择全部文件或某类文件,同时按住shift和鼠标右键,会出现“复制为路径”的选项。

WIN 8或者WIN 10 操作系统获取文件路径

然后将路径粘贴到Excel中:

路径粘贴到Excel中

方法二. 没有“复制至路径”功能的微软电脑操作系统,可以通过文件内容为“dir *.xlsx/s/on/b>文件路径dirxlsxsonb.txt”的.bat文件" highlight="true">bat文件获得,步骤如下:
1. 在欲得到文件路径的文件夹内新建一个txt文件
2. 在该文件内输入内容为“dir /s/on/b>获取路径.txt”
3. 该文件保存后改后缀为“.bat”
4. 运行该 bat 文件
5. 在“xlsx文件路径.txt”中复制所有内容
6. 粘贴在 Excel 文件中
7. 以“简历表”所有文件为例(若是“dir”改成“dir *.xlsx”则提取所有 xlsx文件的路径)
● 在“简历表”文件夹内新建一个TXT文档;
● 输入内容:“dir /s/on/b>获取路径.txt”;
● 保存后关闭,将txt文档后缀名改为.bat
● 双击生成的bat文件运行,将得到一个命名为“获取路径.txt”文件,打开后,可看到文件列表路径,复制到Excel中即可。

“简历表”文件夹内所有文件

二. 批量超链接
1. 在粘贴了文件路径的 Excel 文件内,在含文件路径的文件名单元格的相邻单元格内键入公式“=Hyperlink(Link-location,[Friendly-name])”
2. 以“简历表”的路径为例(注:公式中的“[Friendly-name]”即“A2”可以省去)

批量超链接公式

三. 针对题述要求的解法
1. 从图片上看,题述文件所在电脑操作系统应该是 win7,所以可以用上述“批量提取文件”的“方法一”,即:
2. 在“A0101板材类”文件夹下,选取所有 .xlsx 文件,同时按住shift和鼠标右键,当出现“复制为路径”的选项时,鼠标左键点击该选项。
3. 在 Excel 文件内粘贴后,在其右边相邻的单元格内,键入公式“=Hyperlink(Link-location,[Friendly-name])”并下拉

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-03-15
主要的方法有:
一、编程的方法,如Excel自带的VBA,以及其他编程方法,如Python
二、Excel自带的Power Qurey数据处理工具,Excel2010以上版本支持,但2010和2013要另外下载安装,而2016以上版本安装后就已默认安装。
新建一个Excel工作簿,在工作簿的工作表中,数据菜单——获取和转换数据——获取数据——来自文件——从文件夹,浏览到要提到文件名的文件夹,打开。就会把文件夹(包括子文件夹)下的所有文件导入到一个预览对话框中,对话框中已可预览到每个文件的文件名及各种文件属性,如创建时间、完整路径等。在此对话框中,选择“转换数据”(Excel版本不同,对话框稍有不同,但大同小异),进入到Power Qurey界面,在PQ界面工作界面中,删除不需要的列,如果文件名不需要扩展名,就对文件名以小数点为分隔符拆分,再删除扩展名列。反正你想怎么整就怎么整。整好后,从PQ的文件菜单中选择关闭并上载到,上载到目录工作表中。
以后文件夹内文件有增减变化,或文件名有修改,只要在工作表中右击,选择“刷新”即可得到更新。
Power Qurey的方法简单快捷,基本上就点几下鼠标。不需要去这编程语言。按上面说的步骤一步步去操作,任何只要对Windows资源管理器有些了解,对Excel有基本了解的人都能完成。
三、DOS时代的方法,度友“二性北B”有介绍。
第2个回答  2022-03-15
excel不好弄,用下面这个方法
第一步,新建一个txt格式的记事本文件。
第二步,在记事本文件中输入:DIR *.* /B >LIST.TXT
第三步,将此记事本文件后辍名,由txt改为bat。会弹出重命名对话框,单击“是”
第四步,复制这文件到需要提取的文件夹里,双击,该文件夹会出现一个名为LIST.TXT的文本文件,你要的文件名全在里面了
相似回答