Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2733|回复: 8

[已解决]谢谢爱疯老师和青城老师。能不能提取外部指定路径的的指定文档的一些属性

[复制链接]
发表于 2011-10-18 20:42 | 显示全部楼层 |阅读模式
本帖最后由 lhj323323 于 2011-10-18 22:50 编辑

老师:
本需求没有附件
能不能提取外部指定路径的的指定文档的一些属性(创建时间、修改时间、访问时间)
外部指定路径的的指定文档均由用户写在sheet1的A1单元格内。

如果能提取上述属性的话,又不能修改之?

请别提touchPro之类的软件方式。我只是想问问用VBA能否实现查询以及修改的方法。
最佳答案
2011-10-18 22:10

  1. Sub Test()
  2.     Dim fs As Object, fld As Object, fil As Object, f As Object
  3.     Dim p As String
  4.     Dim arr() As Variant
  5.     Dim i As Integer
  6.     Cells.Clear
  7.     Cells(1, 1) = "名称"
  8.     Cells(1, 2) = "创建日期"
  9.     Cells(1, 3) = "最后修改日期"
  10.     Cells(1, 4) = "最后访问日期"
  11.    
  12.     p = "C:\WINDOWS"
  13.     Set fs = CreateObject("Scripting.FileSystemObject")
  14.     Set fld = fs.GetFolder(p)
  15.     Set fil = fld.Files
  16.     ReDim Preserve arr(1 To fil.Count, 1 To 4)
  17.     For Each f In fil
  18.         i = i + 1
  19.         '设置或返回指定文件或文件夹名。读/写属性。
  20.         arr(i, 1) = f.Name
  21.         '返回指定文件或文件夹的创建日期和时间。只读。
  22.         arr(i, 2) = f.DateCreated
  23.         '返回最后一次修改指定文件或文件夹的日期和时间。只读。
  24.         arr(i, 3) = f.DateLastModified
  25.         '返回最后一次访问指定文件或文件夹的日期和时间。只读。
  26.         arr(i, 4) = f.DateLastAccessed
  27.     Next f
  28.     Range("A2").Resize(UBound(arr), UBound(arr, 2)) = arr
  29.     Range("A:D").EntireColumn.AutoFit
  30. End Sub
复制代码

比较实际问题,再修改吧

修改属性.zip

14.48 KB, 下载次数: 3

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2011-10-18 21:20 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2011-10-18 21:25 | 显示全部楼层
本帖最后由 lhj323323 于 2011-10-18 21:29 编辑

回复 青城山苦丁茶 的帖子

青城老师:
好久不见!
能否写得更完整?有点看不懂,如确能提取这些信息,又能否将其修改呢?
回复

使用道具 举报

发表于 2011-10-18 22:00 | 显示全部楼层
显示d:\a.docx的创建时间、最后访问时间、最后修改时间:
Set f = CreateObject("scripting.filesystemobject")
Set fi = f.getfile("d:\a.docx")
MsgBox fi.datecreated
MsgBox fi.datelastaccessed
MsgBox fi.datelastmodified
回复

使用道具 举报

发表于 2011-10-18 22:10 | 显示全部楼层    本楼为最佳答案   

  1. Sub Test()
  2.     Dim fs As Object, fld As Object, fil As Object, f As Object
  3.     Dim p As String
  4.     Dim arr() As Variant
  5.     Dim i As Integer
  6.     Cells.Clear
  7.     Cells(1, 1) = "名称"
  8.     Cells(1, 2) = "创建日期"
  9.     Cells(1, 3) = "最后修改日期"
  10.     Cells(1, 4) = "最后访问日期"
  11.    
  12.     p = "C:\WINDOWS"
  13.     Set fs = CreateObject("Scripting.FileSystemObject")
  14.     Set fld = fs.GetFolder(p)
  15.     Set fil = fld.Files
  16.     ReDim Preserve arr(1 To fil.Count, 1 To 4)
  17.     For Each f In fil
  18.         i = i + 1
  19.         '设置或返回指定文件或文件夹名。读/写属性。
  20.         arr(i, 1) = f.Name
  21.         '返回指定文件或文件夹的创建日期和时间。只读。
  22.         arr(i, 2) = f.DateCreated
  23.         '返回最后一次修改指定文件或文件夹的日期和时间。只读。
  24.         arr(i, 3) = f.DateLastModified
  25.         '返回最后一次访问指定文件或文件夹的日期和时间。只读。
  26.         arr(i, 4) = f.DateLastAccessed
  27.     Next f
  28.     Range("A2").Resize(UBound(arr), UBound(arr, 2)) = arr
  29.     Range("A:D").EntireColumn.AutoFit
  30. End Sub
复制代码

比较实际问题,再修改吧
回复

使用道具 举报

 楼主| 发表于 2011-10-18 22:35 | 显示全部楼层
回复 爱疯 的帖子

老师:
那能不能修改呢?不是有一种软件就能修改吗?
回复

使用道具 举报

发表于 2011-10-18 22:41 | 显示全部楼层
因为这不是知识概念问题,所以需要具体数据及明确的说明,才好往下讨论。

还是把你的问题用附件来表达,相信更利于快速解答。
回复

使用道具 举报

 楼主| 发表于 2011-10-18 22:48 | 显示全部楼层
回复 爱疯 的帖子

老师:
我把附件上传到1楼了,请看看,谢谢了。
回复

使用道具 举报

发表于 2015-12-18 11:00 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-29 23:51 , Processed in 1.888603 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表