• 首页   /  职场   /  
  • 发表日期 2019-10-03

    今天我们一起来看一个很实用的示例,也是我们在工作中经常会遇到的一种情况,就是如何来批量提取指定文件夹下的所有文件名,如下图:

    我们在桌面上有一个文件夹(具体位置可以根据情况设定),文件夹里面放置了一批员工照片,现在我们要把这些员工的照片名字全部提取到表格中,便于后续的工作处理,因为所要处理的照片太多,如果一个一个去录入,不仅效率低下,而且也容易出错,那今天我们一起来看下如何批量把名称提取出来,今天所用到的也是一个宏表函数,这个也是需要在公式的名称定义下才能使用,我们新建一个工作薄或工作表,在表头取完名字后,如下操作:

    这里名称我们随便起一个,只要容易记忆就可以,尽量简短一些,下面的引用位置,我们的公式=files(“C:\Users\Administrator\Desktop\员工照片\*.*”),这里使用了宏表函数files,其实个人觉得很容易理解,里面的参数就是一个完整路径,后面再加一个星号和文件的扩展名,我这里写的是*.*,就是所有文件的意思,不管是什么样的文件,当然,如果我们只取扩展名为.jpg的,那这里的公式就会变为=files(“C:\Users\Administrator\Desktop\员工照片\*.jpg”),前面的这个星号,我们在之前的课程中也分享过了,就是代表任意一个或多个字符,这里的意思就是所有的文件名,定义好后,我们继续返回到工作表中:

    我们在表中输入公式=INDEX(照片,ROW(A1)),参数照片就是我们在前面定义过的名称,它相当于指定文件夹下的所有文件名的集合,参数ROW(A1)就是返回当前的行号,当公式向下遍历时,取出照片集合下的所有成员,最后完成的效果如下:

    如果不想表的最后出现错误值(文件名已经取完,多填充了),可以对函数进行如下修改:

    利用IFERROR()函数来进行转化一下,使得表格看上去更严谨一些,最后再利用相应技巧去掉名称后缀即可。

    这个操作看似很简单,但是正是因为它,可以简化我们很多繁琐的工作,比如,我们可以用这个方法提出文件名后,再利用批处理文件(即.bat文件)对所有的文件进行批量重命名处理,而不用一个一个的去手工改名。

    好了,今天的函数课程就和大家分享到这里,喜欢的朋友请关注、转发,期待下期精彩课程。


    ————————————————