NO.1

通常在办公当中,Excel会自动保存以前编辑过的文件,通过“打开”菜单就可以找到最近打开的文件。

这个功能,对于一些记忆不好的人来说,十分有用,因为在电脑里查找一个文件也十分困扰的事情。

如果你常常为了找不到文件而烦恼,那么下面的内容对你一定有帮助。




如何找回之前打开过的容器 怎么找曾经打开的文件_打开文件


NO.2

针对使用过的文件记录,Excel有一个自己的储存方式,我们要学习的就是,很好地利用这个方法,把曾经编辑过的文件找出来。

用到两个对象:RecentFiles和RecentFile

是不是感觉一样,其实这两个对象前者是后者的集合。

使用上有些不相同,下图为具体对象的方法和属性。


如何找回之前打开过的容器 怎么找曾经打开的文件_如何找回之前打开过的容器_02


NO.3

使用方法

Application.RecentFiles

一定要是Application下使用,表示Excel应用下的对象。

如要查看有多少个文件:

Application.RecentFiles.Count

后面加属性(.Count)即可。

某一个文件用如下代码:

Application.RecentFiles.Item(1)'代表第一个文件

如果要设置文件数,如下代码:

Application.RecentFiles.Maximum = 8

数字8代表最多可以查看8个曾经打开的文件。

这里根据Excel版本不同数量也不相同,2016版32位最多50个文件。


如何找回之前打开过的容器 怎么找曾经打开的文件_VBA_03


NO.4

上图为一个示例,将以列表形式把最近打开过的Excel文件列出来,双击文件名打开文件。

功能上还是可以的,使用起来很方便。

增加一个文本框可以自定义打开的文件数。


如何找回之前打开过的容器 怎么找曾经打开的文件_打开文件_04


显示文件按钮代码

Private Sub CommandButton1_Click()Dim Fx As VariantFx = ActiveSheet.TextBox1.Value'文件数量设置If VBA.Len(Fx) = 0 Then Exit SubIf VBA.Trim(Fx) <= 0 Then Exit SubIf VBA.Trim(Fx) > 50 Then'设置文件数量最大为50    Fx = 50    TextBox1.Value = FxEnd IfIf Not VBA.IsNumeric(Fx) Then Exit SubApplication.RecentFiles.Maximum = FxDim x As Longx = Application.RecentFiles.CountDim xArrReDim xArr(0 To x - 1)'定义文件数组For i = 1 To x    xArr(i - 1) = Application.RecentFiles.Item(i).Path'数组赋值Next iActiveSheet.ListBox1.List = xArr'列表框赋值End Sub

双击列表框功能代码

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)Dim Finx As Long, Fpath As VariantFinx = ActiveSheet.ListBox1.ListCountFpath = ActiveSheet.ListBox1.ValueIf Finx = 0 Then Exit SubWorkbooks.Open Fpath'打开文件End Sub

NO.5

这个小功能很方便,特别是平时办公的时候,对于文件打开方式是一个不错的选择。

其实这个功能在Excel菜单里就有,但是使用起来可能没有如此快捷,毕竟Excel设置文件数量固定以后,就是那么多,不能灵活查看更多。