下面我们就来看看在程序中的Excel VBA是通过全封闭工作簿和工作表圈在一个目录下,并显示所有的名字。
下载Book1.xlsx,Book2.xlsx,Book3.xlsx,Book4.xlsx和Book5.xlsx并将它们添加到“ C:\ test \”
情况:
将以下代码行添加到命令按钮:
1.首先,我们声明两个String类型的变量,一个Worksheet对象和两个Integer类型的变量。
昏暗的目录作为 字符串,文件名作为 字符串,工作表作为工作表,i 作为 整数,j 作为 整数
2.为避免屏幕闪烁,请关闭屏幕更新。
Application.ScreenUpdating = False
3.初始化变量目录。我们使用Dir函数查找第一个* .xl ?? 文件存储在此目录中。
目录=“ c:\ test \”
fileName = Dir(目录&“ * .xl ??”)
fileName = Dir(目录&“ * .xl ??”)
注意:Dir函数支持使用多个字符(*)和单个字符(?)通配符来搜索所有不同类型的Excel文件。
4.现在,变量fileName保存在目录中找到的第一个Excel文件的名称。添加Do While循环。
当 While FileName <>“”
循环
循环
将以下代码行(分别位于5、6、7、8和9)添加到循环中。
5.初始化Integer类型的变量,并将Excel文件的名称添加到第i行的第一列。
i = i + 1
j = 2个
单元格(i,1)= fileName
j = 2个
单元格(i,1)= fileName
6.没有简单的方法可以从封闭的Excel文件中提取数据(或工作表名称)。因此,我们打开Excel文件。
Workbooks.Open(目录和文件名)
7.将Excel文件的所有图纸名称添加到第i行的其他列。
对于 每个片在工作簿(文件名).Worksheets
工作簿( “文件-IN-A-directory.xlsm”)。工作表(1).Cells(I,J)。价值= sheet.Name
当J = J + 1个
接着片
工作簿( “文件-IN-A-directory.xlsm”)。工作表(1).Cells(I,J)。价值= sheet.Name
当J = J + 1个
接着片
8.关闭Excel文件。
工作簿(文件名)。关闭
9. Dir功能是一种特殊功能。要获取其他Excel文件,可以再次使用不带参数的Dir函数。
fileName = Dir()
注意:当没有更多文件名匹配时,Dir函数将返回零长度的字符串(“”)。如此一来,Excel VBA将离开Do While循环。
10.再次打开屏幕更新(循环外)。
Application.ScreenUpdating = 真
11.测试程序。
结果: