ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何使用VBA中的API返回文件的类型?

如何使用VBA中的API返回文件的类型?

作者:绿色风 分类: 时间:2022-08-17 浏览:87
楼主
wise
Q:如何使用VBA中的API返回文件的类型?
A:ALT+F11→插入模块→模块输入以下代码:

  1. Private Const MAX_PATH = 260
  2. Private Const SHGFI_TYPENAME = &H400 '获得类型名称
  3. Private Type SHFILEINFO
  4.     hIcon As Long '显示图标
  5.     iIcon As Long '显示图标指数
  6.     dwAttributes As Long '资料上说,这个参数仅用于uFlags中包含SHGFI_USEFILEATTRIBUTES标志的情况。如
  7. 此,它应该是文件属性的组合:存档,只读,目录,系统等
  8.     szDisplayName As String * MAX_PATH '显示名称(或路径)
  9.     szTypeName As String * 80 '显示类型名称
  10. End Type
  11. Private Declare Function SHGetFileInfo Lib "shell32.dll" Alias "SHGetFileInfoA" (ByVal pszPath As
  12. String, ByVal dwFileAttributes As Long, psfi As SHFILEINFO, ByVal cbFileInfo As Long, ByVal uFlags
  13. As Long) As Long
  14. Private Sub test()
  15.     Dim shFInfo As SHFILEINFO
  16.     SHGetFileInfo ThisWorkbook.Path & "\mytest.doc", 0, shFInfo, Len(shFInfo), SHGFI_TYPENAME
  17.     MsgBox shFInfo.szTypeName
  18.     '以当期路径下的mytest.doc为例,返回该文件的类型
  19. End Sub



这个博客有C++说明这个API函数的东西:
2楼
xyf2210
API学习下
3楼
水星钓鱼
学习了

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap