大家好,我们今日讲解“VBA信息获取与处理”教程中第十七个专题“文件及文件夹信息的获取及操作”的第三节“利用VBA获取文件的信息和属性”,这个专题是非常实用的知识点,希望大家能掌握利用。教程会提供配套的程序文件。

第四节  利用VBA获取驱动器的信息

大家好,我们这节讲解利用VBA获取驱动器的信息。这个知识点也是利用FSO对象的方法或者属性来完成的。在本专题的第2讲内容中讲到了FileSystemObject(FSO)对象的GetDrive方法返回对应于指定路径中的驱动器的Drive对象。我们这讲的内容就是用这个对象的属性来获取驱动器的信息。

1  FSO驱动器对象的获得

我们一般用FSO对象的GetDrive方法获得驱动器对象,如:objFso.GetDrive("c"),这种方法返回对应于指定路径中驱动器的“驱动器”对象。 语法:object.GetDrive (drivespec) 参数: object       必需,是FileSystemObject对象的名称 drivespec必需,Drivespec参数可以是驱动器号(c)、追加冒号的驱动器号(c:)以及追加了冒号和路径分隔符 (c:)或任何网络共享规范 (\computer2\share1) 的驱动器号。

2  FSO驱动器对象的属性信息

1)AvailableSpace属性,返回指定驱动器或网络共享上用户可用的空间量。 语法:object.AvailableSpace 备注:由AvailableSpace属性返回的值通常与可空间属性返回的值相同。支持配额的计算机系统的两个值可能有差异。 2 )DriveLetter属性返回物理本地驱动器或网络共享的驱动器盘符。此为只读属性。 语法:object.DriveLetter 备注:如果指定的驱动器与驱动器盘符不关联(如尚未映射到驱动器盘符的网络共享),则DriveLetter属性将返回零长度字符串 ("")。 3 )DriveType属性,返回指示指定驱动器类型的值。 语法:object.DriveType 一般来讲返回的值及代码的意义有如下: 0:  "Unknown" 1:  "Removable" 2:  "Fixed" 3:  "Network" 4:  "CD-ROM" 5:  "RAM Disk" 4)FileSystem属性,返回用于指定驱动器的文件系统类型。 语法:object.FileSystem 可以返回的值有: FAT、NTFS 和 CDFS。 5)FreeSpace属性返回指定驱动器或网络共享中可供用户使用的可用空间量。此为只读属性。 语法:object.FreeSpace 备注:可用空间属性返回的值通常与AvailableSpace属性返回的值相同。两者之间的差别在于支持配额的操作系统。 6)IsReady属性,如果已准备好指定的驱动器,则返回 True;否则返回 False。 语法:object.IsReady 备注:对于可移动的媒体驱动器和CD-ROM 驱动器,IsReady仅在插入适当的媒体并准备好进行访问时返回 True。 7)RootFolder属性,返回一个folder对象, 该对象代表指定驱动器的根文件夹。此为只读属性。 语法:object.RootFolder 备注:可以使用返回的Folder对象访问驱动器上包含的所有文件和文件夹。 8)SerialNumber属性,返回用于单独标识磁盘卷的十进制序列号。 语法:object.SerialNumber 9)ShareName属性,返回指定驱动器的网络共享名称。 语法:object.ShareName 10)ShareName属性,返回驱动器或网络共享的总空间(以字节为单位) 语法:object. TotalSize 11)VolumeName属性,设置或返回指定驱动器的卷名称。读/写。 语法object.VolumeName[= newname ]

3  FSO驱动器对象的属性信息的代码获得

下面的代码将利用上述的属性获得驱动器的信息: Sub mynzC() '获取驱动器的信息 Dim objFso As Object Dim objDrive As Object Sheets("sheet4").Select Cells.ClearContents Set objFso = CreateObject("Scripting.FileSystemObject") Set objDrive = objFso.GetDrive("c") Range("a1") = "是否可用:" If objDrive.IsReady = False Then Range("b1") = "不可用" Else Range("b1") = "可用" If objDrive.DriveType = 3 Then Range("a2") = "名称:": Range("b2") = objDrive.ShareName Else Range("a2") = "卷标:": Range("b2") = objDrive.VolumeName End If Range("a3") = "文件系统:": Range("b3") = objDrive.FileSystem Range("a4") = "总容量:": Range("b4") = objDrive.TotalSize Range("a5") = "可用容量:": Range("b5") = objDrive.AvailableSpace Range("a6") = "序列号:": Range("b6") = Hex(objDrive.SerialNumber) End If MsgBox "解析完毕!" Set objDrive = Nothing Set objFso = Nothing End Sub 代码的部分截图: 代码讲解: 1)Range("b6") = Hex(objDrive.SerialNumber) 以上代码是将10十进制的数组转化为十六进制。

4  FSO驱动器对象的属性信息的实现效果

我们点击运行按钮,就可以看到下面的运行结果: 以上代码实现了读取驱动器信息的目的。 本节知识点回向: ①  本例中讲了哪些FSO驱动器对象的属性信息? ②  这些属性信息在代码中如何利用? 本讲代码参考文件:017工作表.xlsm

积木编程的思路内涵:

在我的系列书籍中一直在强调“搭积木”的编程思路,这也是学习利用VBA的主要方法,特别是职场人员,更是要采用这种方案。其主要的内涵: 1  代码不要自己全部的录入。你要做的是把积木放在合适的位置然后去修正代码,一定要拷贝,从你的积木库中去拷贝,然后修正代码,把时间利用到高效的思考上。 2  建立自己的“积木库”。平时在学习过程中,把自己认为有用的代码放在一起,多积累,在用到的时候,可以随时拿来。你的积木库资料越多,你做程序的思路就会越广。

VBA的应用界定及学习教程:

VBA是利用Office实现个人小型办公自动化的有效手段(工具)。这是我对VBA的应用界定。在取代OFFICE新的办公软件没有到来之前,谁能在数据处理方面做到极致,谁就是王者。其中登峰至极的技能非VBA莫属! 我记得20年前自己初学VBA时,那时的资料甚少,只能看源码自己琢磨,真的很难。20年过去了,为了不让学习VBA的朋友重复我之前的经历,我根据自己多年VBA实际利用经验,推出了六部VBA专门教程,目前教程均通过32位和64位两种OFFICE系统测试。 第一套:VBA代码解决方案是VBA中各个知识点的讲解,教程共147讲,覆盖绝大多数的VBA知识点,提供的程序文件更是一座不可多得的代码宝库,是初学及中级人员必备教程;目前这套教程提供的版本是修订第二版,程序文件通过32位和64位两种OFFICE系统测试。 第二套:VBA数据库解决方案数据库是数据处理的专业利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作,适合中级人员的学习。目前这套教程提供的是修订第一版教程,程序文件通过32位和64位两种OFFICE系统测试。 第三套:VBA数组与字典解决方案   数组和字典是VBA的精华,字典是VBA代码水平提高的有效手段,值得深入的学习,是初级及中级人员代码精进的手段。目前这套教程提供的版本是修订第一版,程序文件通过32位和64位两种OFFICE系统测试。 第四套:VBA代码解决方案之视频是专门面向初学者的视频讲解,可以快速入门,更快的掌握这门技能。这套教程是第一套教程(修订一版)的视频讲解,听元音更易接受。这套教程还会额外提供通过32位和64位两种OFFICE系统测试的程序文件。 第五套:VBA中类的解读和利用 这是一部高级教程,讲解类的虚无与肉身的度化,类的利用虽然较少,但仔细的学习可以促进自己VBA理论的提高。这套教程的领会主要是读者的领悟了,领悟一种佛学的哲理。目前这套教程提供的版本是修订第一版,程序文件通过32位和64位两种OFFICE系统测试。 第六套教程:《VBA信息获取与处理》,这是一部高级教程,涉及范围更广,实用性更强,面向中高级人员。教程共二十个专题,包括:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪切板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。 上述教程的学习顺序:1→3→2→6→5或者4→3→2→6→5。提供的程序文件更是一座巨大的代码库,供读者使用,如需要可以WeChat: NZ9668

学习VBA是个过程,也需要经历一种枯燥的感觉

“众鸟高飞尽,孤云独去闲。相看两不厌,只有敬亭山”。学习的过程也是修心的过程,修一个平静的心。在代码的世界中,心平静了,心情好了,身体自然而然就好。心静则正,内心里没有那么多邪知邪见,也就没有那么多妄想。利人就是利己。我的教程助力给正在努力的朋友。 “水善利万物而不争”,绵绵密密,微则无声,巨则汹涌。学习亦如此,知道什么是自己所需要的,不要蜷缩在一小块自认为天堂的世界里,待到暮年时再去做自欺欺人的言论。要努力提高自己,用一颗充满生机的心灵,把握现在,这才是进取。越是有意义的事情,困难会越多。愿力决定始终,智慧决定成败。不管遇到什么,都是风景。看淡纷争,看轻得失。学习时微而无声,利用时则巨则汹涌。“路漫漫其修远兮,吾将上下而求索” 每一分收获都是成长的记录,怎无凭,正是这种执着,成就了朝霞的灿烂。最后将一阙词送给致力于VBA学习的朋友,让大家感受一下学习过程的枯燥与执着: 浮云掠过,暗语无声, 唯有清风,惊了梦中啼莺。 望星,疏移北斗, 奈将往事雁同行。 阡陌人,昏灯明暗, 忍顾长亭。 多少VBA人, 暗夜中,悄声寻梦,盼却天明。 怎无凭! 分享我多年工作实际经验的成果,随喜这些有用的东西,给确实需要利用VBA的同路人。回向学习利用VBA的历历往事,不胜感慨,谨以这些文字以纪念, 分享成果,随喜正能量

加微信NZ9668可获得详细资料信息

_______________________________


有启发 点在看,转给朋友  约作者 请留言,直接交流

更多关联阅读

igs无法分配驱动器映射表_利用VBA获取驱动器的信息相关推荐

  1. vba monthview控件64位_利用VBA获取文件的信息和属性

    大家好,我们今日讲解"VBA信息获取与处理"教程中第十七个专题"文件及文件夹信息的获取及操作"的第三节"利用VBA获取文件的信息和属性",这 ...

  2. igs无法分配驱动器映射表_左神算法基础:哈希函数和哈希表

    笔者在读研刚开始的时候,偶尔看面经,有这样一个问题:只用2GB内存在20亿个整数中找到出现次数最多的数,当时的我一脸懵逼,怎么去思考,20亿个数?What The Fuck! 但是,看完今天的文章,你 ...

  3. igs无法分配驱动器映射表_项目超过255个摄像机怎么分配IP地址

    ------ 欢迎新老朋友们加入微信群,方便技术讨论,信息互通,行业交流:智能弱电行业专家群:智能弱电行业技术群:智能弱电行业信息群:申请加入请加小编微信:15537112161------- 我们做 ...

  4. igs无法分配驱动器映射表_硬盘无法使用,用DiskPart进行分区和格式化,非常简单...

    如果计算机硬盘出现问题,有时不是硬件上出现了错误,很可能只是逻辑上出现了问题,这时就可以使用DiskPart来快速解决. 在Windows 10上,当外部存储(例如U盘.可移动硬盘或SD卡)由于数据损 ...

  5. igs无法分配驱动器映射表_如何同步本地文件到网络驱动器/NAS?

    ​在我们的生活中,有多种原因促使我们需要将文件夹同步到(网络驱动器)共享文件夹或NAS.例如,想要脱机查看先前可用的文件夹.同步文件夹的作用:自动保存两个或多个相同的文件夹,并将所有更改的文件夹从源目 ...

  6. igs无法分配驱动器映射表_关于光盘读取二三事(解决UDF多次刻录无法读取问题)...

    点击关注上方"消遣杂谈",关注后了解更多内容. 目的:修改注册表的相关信息,实现光盘自由的读取,减少资源的浪费. 前言:在平时工作中,经常遇到别的电脑刻录的光盘放到另外一台电脑中无 ...

  7. geoip php 获取城市,Laravel 中利用 GeoIP 获取用户地理位置信息

    这篇文章主要介绍了关于Laravel 中利用 GeoIP 获取用户地理位置信息,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 我最近需要一个用户地域检测来设置用户的默认区域和货币.由 ...

  8. oracle中修改多个字段默认值_利用VBA代码在已有的数据表中删除、添加、修改字段...

    大家好,今日继续给大家讲解VBA数据库解决方案的第21讲,如何利用VBA代码在已有的数据表中删除,添加,修改字段.这个内容是操作数据库的一项必修的内容,还望大家在实际工作中多利用,所以这节的知识,对于 ...

  9. sql 发送邮件网络附件_利用VBA发送附件电子邮件

    大家好,我们今日讲解"利用VBA发送附件电子邮件",这节内容是"VBA信息获取与处理"教程中第五个专题"利用VBA发送电子邮件"的第一节. ...

最新文章

  1. 别再一知半解啦!索引其实就这么回事!
  2. PHOTOSHOP 快捷键
  3. Sqlserver 游标的写法记录
  4. Win7 安装资料及教程
  5. Shell 变量的作用域
  6. qemu模拟imx6用户态环境
  7. 机器人学习--定位、建图和导航问题从古至今
  8. 数据结构的简单理解(2)
  9. iframe中跨域页面访问parent的方法
  10. 360浏览器怎么添加应用 360安全浏览器应用添加教程
  11. Netflix工程总监眼中的分类算法:深度学习优先级最低
  12. 【C#】byte[]数据转化相关操作
  13. 鸿蒙os2.0怎么报名,我想问一下各位,怎么报名鸿蒙os2.0
  14. Leetcode每日一题:172.factorial-trailing-zeroes(阶乘后的0)
  15. Redis 安装部署介绍
  16. 编译 framework.jar包
  17. 有些人,理他就输了!
  18. java 随机数算法_Java随机数算法原理与实现方法实例详解
  19. 机器之心深度研学社每周干货:2017年第13周
  20. Win10下OMNeT 5.X 遇到Simulating tictoc-tictoc1-“ has encountereda problemFinished with Error问题

热门文章

  1. Facebook-H5授权登录步骤
  2. HMR(热模块代替)原理和react实践
  3. 后端与前端架构设计的区别
  4. 是谁在我的心里打了个结(二十七)责任 【结局】
  5. linux缺页处理步骤,Linux缺页中断处理
  6. DotNet Bar 之 bubbleBar 使用方法
  7. 阿里P7晒工资条,看完好扎心了……
  8. linux ip转发如何设置,如何在Linux上启用IP转发
  9. 智慧工地测评:实用性强吗?
  10. python绘制sigmoid及tanh函数