Excel VBA之FSO-2.6总结篇

Excel VBA之FSO-2.6总结篇

前景提要

很巧合,今天是周末,正好也碰到了我们的第二系列收尾的这天,本系列重要讲述的就是VBA中FSO的运用,通过本系列的学习,相信大家已经对于FSO有了一定的了解了,在VBA的世界中,FSO主要用于文件夹方面的操作,在日常的工作中,当我们碰到文件夹方面的操作的时候,首先想到的应该就是FSO,FSO可以实现创建文件,删除文件夹,判断文件夹是否存在,同时可以操作文件夹的移动,复制,可以获得文件夹的各种属性,参数,功能是非常的强大的,细心的童鞋应该已经留意到了,在我们第一系列的分享中,最后几篇即用型的代码中,也有使用关于一些FSO的方法,在文章的最后,将会附上相关的链接,方便大家回顾。

来回顾一下本系列,首先我们先了解了下,什么是FSO,他在VBA中是属于ADO范畴的,并不能直接使用的,需要通过声明,然后才可以使用的,而在使用的过程中,我们有两种方法来绑定,一种是前期绑定,通过工具栏来实现的,另外一种方式就是通过后期绑定的,在这里小编推荐大家使用后期绑定的方法来使用FSO,因为我们的代码并不一定是我们使用的,当我们将自己的代码分享给其他同时使用的时候,可能其他同事的电脑并按照相关的配置,它的电脑可能就没有办法来使用FSO方面的功能了,这样的代码通用性非常的差,如果是使用后期绑定的话,不管是谁的电脑都可以使用,只要配置齐全,安装的是完整的office就可以了。

最开始学习的是通过FSO来创建文件夹,和第一系列相对比,在创建文件夹的过程中,FSO更加的严谨,它可以直接通过FolderExists(filename)来判断同名文件夹是否存在,如果存在的话,我们可以通过DeleteFolder(filename)的方法来删除同名文件夹,之后再通过createfolder(filename)的方法来创建文件夹,相对于第一系列的mkdir()函数来说,功能全面了很多。

当然创建文件夹之后呢,我们可能不仅仅是创建一个空白文件夹,文件夹里面肯定有很多的文件夹,可能在我们创建文件夹的时候,为了图使用的方便,放在了桌面,我们都知道重要文件不应该放在桌面的,这样万一碰到重装系统等操作的时候,重要的文件就会完全丢失了,那么怎么办呢?两种选择,第一:我们可以通过FSO的CopyFolder的方法将文件夹从桌面位置复制到到我们想要的位置上,这样就是先了文件夹的复制,如果我不想要复制怎么办,那也可以选择移动,通过FSO的MoveFolder的方法,就可以文件夹移动到我们想要的位置了,

文件夹的移动和复制,看起来功能和效果是差不多的,但是两者之间还是有一定的区别的,移动之后,原始位置并不会存在这个文件夹了,而复制的话,两个地方都会存在相同的文件夹,如果数据比较大的话,可能会造成内存空间的紧张,大家在使用的时候,根据自己的实际场景来选择。

FSO仅仅可以用来操作文件夹嘛?当然不是,它还可以用来创建TXT文件,TXT文件在日常的工作中是非常的常用的,一些并不算是太大的数据,或者并不算是很重要的数据,都是放置在txt文件中,VBA可以实现txt的读取和写入,在后面我们会单独说这个功能,那么想要一个txt数据,自然是先要创建一个txt文件了,那么FSO可以实现嘛?CreateTextFile(path)完全可以满足我们的要求。

最后我们照旧分享了一些关于FSO方面的即用型的代码,为什么我一直都喜欢在最后分享一些即用型的代码呢?其实我在之前也是说过了,VBA的世界是非常的大的,虽然现在很多的程序员看不起VBA,但是在日常的工作中,尤其是在操作office这方面,VBA还是有很大的优势的,python的pandas虽然也可以达到这样的效果,但是在理解和使用上面,VBA还是简单一点,但是我们可能并没有太多的时间去深入学习VBA的方方面面的知识,就算是学了不一定用到,久而久之就忘记了,也没有这个必要,所以我也是会分享一些即用型的代码,方便大家拿来就可以使用,不需要太深入的理解,稍微更换一点关键代码和字段,就可以满足我们工作中的需求了,这也是提升效率的一种方法。

总结

==========================================================================

OK ,关于FSO的最后一篇的总结就到这里了,下一系列我们将会进入VBA中各种函数的介绍和使用了,VBA的函数有很多,当然我们不可能面面俱到,一个不拉的全部讲完,我们更多的还是侧重于日常工作中比较常用的一些函数来使用,函数的学习就相对比较的枯燥了,不过打好基础还是非常的重要的,后面的很多的代码都是通过这些一个个的函数来完成的,好了,今天就到这里,祝大家周末愉快,明晚19:00,我们准时再见。

==========================================================================

本人已经打算长期分享一些网络搜集的各种VBA知识,如果大家有问题也可以提出来共同解决,一起进步,毕竟VBA的世界还是很大的。

(0)

相关推荐

  • 分享 | 又是一波可以直接调用VBA代码(源码)

    最近我们分享了几篇常用的VBA代码,每篇基本都是保姆级的,告诉你怎么调用,如果你是VBA开发者,可能拿到代码,只要一句调用即可完成常见的一些复杂需求! 当然也适合0基础同学来使用,就好像使用VLOOK ...

  • VBA代码库09:增强的CELL函数和INFO函数

    excelperfect 本文介绍的自定义函数来源于wellsr.com,以Excel的CELL函数和INFO函数为样板,可直接返回工作表或工作簿的名称或工作簿路径,以及与Excel及其操作环境有关的 ...

  • vba获取文件夹下所有文件名

    VBA编程知识点(10)--Dir函数 学习自杨洋老师<全民一起VBA> 1. 在VBA中,dir函数可以返回一个文件夹下一个文件的名字(包含后缀). 示例代码: filename = D ...

  • VBA实用小程序72:遍历文件夹(和子文件夹)中的文件

    excelperfect 很多时候,我们都想要遍历文件夹中的每个文件,例如在工作表中列出所有文件名.对每个文件进行修改.VBA给我们提供了一些方式:(1)Dir函数:(2)File System Ob ...

  • Excel VBA 7.75行列冻结完结篇,行列同时操作

    行列冻结完结篇,行列同时操作 点击上方"Excel和VBA",选择"置顶公众号" 致力于原创分享Excel的相关知识,源码,源文件打包提供 一起学习,一起进步~ ...

  • Excel VBA工作薄 6.4番外篇 横列分别计算 vba和函数强强联手

    前景提要 通过昨天的分享,大家对于行列分别计算的场景需求量还是挺大的,我的初衷也是满足大家的日常工作的需求,既然大家有相关方面的需求,关于msgbox这一系列的内容也比较的简单,趁着还有一点余温,我们 ...

  • Excel VBA之日期篇 4.6 临时工结算无烦恼 月末日期是关键

    前景提要 每到年末都是每个公司人员流动比较大的月份,因为这几个月都是人员离职,入职的高峰期,在这样的情况下,公司的某些岗位可能就会出现人手不足的情况,在这样的情况下,一些公司就会不得不招聘一些兼职或者 ...

  • Excel VBA之日期篇 4.5利用身份证获得员工基础信息 甚至籍贯

    场景分析 今天的这些方法,主要集中在员工个人信息方面的一些处理,比方说性别,年龄,出生年月日等,同时顺带分享一个我收藏了好久的大招,籍贯的处理,这个需求是非常的偏门少见的,所以我当初也是百度了很久,翻 ...

  • Excel VBA之日期篇 4.4合同到期时间计算 HR必备方法

    前景提要 今天我们继续来分享一些日期方面的问题,今天公司的HR过来找我,向我请教有没有什么好的方法能够快速的计算出合同到期的时间,他说之前小编虽然分享过一篇关于计算员工在职时间方面的文章,他也看过,但 ...

  • Excel VBA之日期篇 4.3 自定义提醒闹钟 提高工作效率好帮手

    前景提要 昨天我们分享了如何设置一个excel的提醒功能,也是收到了不错的反馈,有很多的童鞋就表示这样的功能虽然是不错,但是并不是很实用,因为在现在的紧张的工作环境中,都非常的强调效率,大多数的公司老 ...

  • Excel VBA之日期篇 4.2重要日程提醒 让你不再手忙脚乱

    前景提要 昨天和大家分享了计算日期之间的差距的方法,相信能够在一定的程度上帮助广大HR工作者在时间计算上面的问题,今天我们继续前进,日期之间的差距等于使用的是日期之间的减法,那么有减法自然会有加法了, ...

  • Excel VBA之日期篇 4.1 在职时间计算 专为HR量身打造

    前景提要 经过了大半个月左右的时间,我们终于完成了VBA函数篇的分享,在函数篇中,我们需要的都是一些非常基础的知识,这些非常基础的知识,可能大家并不是很感兴趣,毕竟能够解决的问题并不是很多,后面我们将 ...

  • Excel VBA之函数篇-3.22 轻松转换单元格格式

    前景提要 最近在工作的时候,经常碰到不少的同事跑过来让我帮忙看看单元格的格式之类的修饰问题,其实这也算是大家日常工作中比较常见的操作,因为不同的工作环节不同的要求,就算是相同的数据,大家对于展示上面的 ...

  • Excel VBA之函数篇-3.21简易数字提取法 用的好方便过正则

    前景提要 最近有一些童鞋后台留言反馈,自己在日常的工作中需要做一些数据的提取,手工操作的话,是比较的麻烦并且浪费时间,既然VBA如何强大,是不是有一些比较好的方法呢?小编写了下,还真有一个比较简单的函 ...