2016年8月

一个“优雅”的Excel进度条实现方法

声明:此篇中的代码是引用,出处:Progress bar in VBA Excel--stackoverflow

有时候我们在用vba处理excel中的大量计算时,由于程序在后台运行时间比较长,这期间没有任何反馈也无法和Excel交互,用户常常不知道Excel是否还“活着”,这时我们就想给用户显示一个进度条。虽然不管有没有进度条,程序运行的时间不会有变化,但至少能减少用户的焦虑。进度条实现的方式有很多种,网上搜索就可以找到一大把,通常见到的实现方法是使用窗体控件,用图片来模拟进度条。今天想和大家分享的是一个我认为非常优雅别致的方法,一图胜千言,先来看张图:

- 阅读剩余部分 -

VBA获取文件的创建、访问和最后修改时间

在论坛上帮人解决一个问题时,需要在Excel中使用vba提取指定文件的最后修改时间,参考文档写了一个函数,增加了“创建时间”、“最后访问时间”,记录在此备查:

Function FileInfo(fileDir)
    Dim ofile, myfile, info
    Set ofile = CreateObject("Scripting.FileSystemObject")
    Set myfile = ofile.GetFile(fileDir)
    info = "创建时间:" & myfile.DateCreated & vbCrLf
    info = info & "最后访问:" & myfile.DateLastAccessed & vbCrLf
    info = info & "最后修改:" & myfile.DateLastModified
    FileInfo = info
End Function