我有个目录下有几百个日常工作中生成的文件,Excel中有没有什么公式可以快速把这些文件名提取出来,我可不想一个一个的去复制啊,请大神给个公式或快速简单易操作的方法啊。
第1个回答 2015-08-19
1、Mid函数MID(text, start_num, num_chars) text 文本or 文本位置 start_num 启始数字,num_chars 结束数字
使用格式:MID(text,start_num,num_chars)
参数说明:text代表一个文本字符串;start_num表示指定的起始位置;num_chars表示要截取的数目。
应用举例:假定A47单元格中保存了“我喜欢天极网”的字符串,我们在C47单元格中输入公式:=MID(A47,4,3),确认后即显示出“天极网”的字符。
SEARCH函数
功能:用来返回指定的字符串在原始字符串中首次出现的位置 ,从左到右查找,忽略英文字母的大小写。
使用格式:SEARCH(find_text,within_text,start_num)
find_text:要查找的文本字符串
within_text:要在哪一个字符串查找
start_num:从within_text的第几个字符开始查找。
注意:在find_text中,可以使用通配符,例如:问号“?”和星号“*”。其中问号“?”代表任何一个字符,而星号“*”可代表任何字符串。如果要查找的字符串就是问号或星号,则必须在这两个符号前加上“~”符号。
2、返回当前工作表的名称:=MID(CELL("filename"),SEARCH("]",CELL("filename"))+1,LEN(CELL("filename"))-SEARCH("]",CELL("filename")))
C:\Users\DA\Desktop\[B8035M-A0.00.001.xlsx]Sheet1
3、仅插入当前文件名:=MID(CELL("filename"),SEARCH("[",CELL("filename"))+1, SEARCH("]",CELL("filename"))-SEARCH("[",CELL("filename"))-1)
仅插入当前工作表明:
=RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename")))
使用格式:MID(text,start_num,num_chars)
参数说明:text代表一个文本字符串;start_num表示指定的起始位置;num_chars表示要截取的数目。
应用举例:假定A47单元格中保存了“我喜欢天极网”的字符串,我们在C47单元格中输入公式:=MID(A47,4,3),确认后即显示出“天极网”的字符。
SEARCH函数
功能:用来返回指定的字符串在原始字符串中首次出现的位置 ,从左到右查找,忽略英文字母的大小写。
使用格式:SEARCH(find_text,within_text,start_num)
find_text:要查找的文本字符串
within_text:要在哪一个字符串查找
start_num:从within_text的第几个字符开始查找。
注意:在find_text中,可以使用通配符,例如:问号“?”和星号“*”。其中问号“?”代表任何一个字符,而星号“*”可代表任何字符串。如果要查找的字符串就是问号或星号,则必须在这两个符号前加上“~”符号。
2、返回当前工作表的名称:=MID(CELL("filename"),SEARCH("]",CELL("filename"))+1,LEN(CELL("filename"))-SEARCH("]",CELL("filename")))
C:\Users\DA\Desktop\[B8035M-A0.00.001.xlsx]Sheet1
3、仅插入当前文件名:=MID(CELL("filename"),SEARCH("[",CELL("filename"))+1, SEARCH("]",CELL("filename"))-SEARCH("[",CELL("filename"))-1)
仅插入当前工作表明:
=RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename")))
第2个回答 2014-10-30
一 使用DOS命令,开始——系统工具——命令提示符,然后输入以下命令:
dir e:\data\* > e:\book1.txt
提取e:\data\目录下所有文件名到e:\book1.txt
二 然后打开e:\book1.txt,将文本复制到Excel中。追问
dir e:\data\* > e:\book1.txt
提取e:\data\目录下所有文件名到e:\book1.txt
二 然后打开e:\book1.txt,将文本复制到Excel中。追问
你和前面的朋友方法一样,谢谢你,热心的朋友
你和前面的朋友方法一样,谢谢你,热心的朋友
第3个回答 2014-10-30
截图看一下追问
就是D盘有个文件下面有6,7百个Excel文件,还有少数PDF文件,我现在要把这些文件名列个清单。
第4个回答 2014-10-30
用VBA轻松搞定,我等下贴代码给你追问
不懂这啊,有没有简单点的方法或公式
追答那用DOS命令,在运行那输入cmd,再按Enter键,然后输入以下命令
以下是提取d:\data\目录下所有文件名称
C:\users> dir "d:\data\*" /b /s > d:\book1.xls
以下是提取d:\data\目录下所有.xls文件名称
C:\users> dir "d:\data\*.xls" /b /s > d:\book1.xls
然后打开D盘下book1.xls这个文件,里面就有你要的文件名了
不行,提示出错,Data已换成我的文件夹temp了,还是不行,我提取excel文档就可以了。
追答应该没问题啊,在提示符下输 dir "d:\temp\*.xls" /b /s > d:\book1.xls
注意c:\user那个不用输,还有留意中间的空格
我把前面的也输了,怪不得。 谢谢,搞定了,你帮我大忙了。
本回答被提问者采纳