小兔网

下面我们将看一下Excel VBA中的一个程序,该程序可以将图纸从其他Excel文件导入一个Excel文件

下载Book4.xlsx,Book5.xlsx并将它们添加到“ C:\ test \”

情况:

使用Excel VBA导入图纸

将以下代码行添加到命令按钮:

1.首先,我们声明两个String类型的变量,一个Worksheet对象和一个Integer类型的变量。

昏暗的目录作为 字符串,文件名作为 字符串工作作为工作表,总计作为 整数

2.关闭屏幕更新并显示警报。

Application.ScreenUpdating = False
Application.DisplayAlerts = False

3.初始化变量目录。我们使用Dir函数查找第一个* .xl ?? 文件存储在此目录中。

目录=“ c:\ test \”
fileName = Dir(目录&“ * .xl ??”)

注意:Dir函数支持使用多个字符(*)和单个字符(?)通配符来搜索所有不同类型的Excel文件。

4.现在,变量fileName保存在目录中找到的第一个Excel文件的名称。添加Do While循环

 While FileName <>“”

循环

将以下代码行(分别位于5、6、7和8)添加到循环中。

5.没有简单的方法可以从关闭的Excel文件中复制工作表。因此,我们打开Excel文件。

Workbooks.Open(目录和文件名)

6.将工作表从Excel文件导入import-sheet.xlsm。

对于 每个工作簿(文件名).Worksheets
    TOTAL =工作簿( “进口sheets.xlsm”)Worksheets.count。
    工作簿(文件名).Worksheets(sheet.Name).Copy _
    后:=工作簿(“进口纸。 XLSM“)。工作表(总)
接着

说明:变量total跟踪import-sheet.xlsm的工作表总数。我们使用Worksheet对象的Copy方法复制每个工作表并将其粘贴到import-sheets.xlsm的最后一个工作表之后。

7.关闭Excel文件。

工作簿(文件名)。关闭

8. Dir功能是一种特殊功能。要获取其他Excel文件,可以再次使用不带参数的Dir函数。

fileName = Dir()

注意:如果没有其他文件名匹配,则Dir函数将返回长度为零的字符串(“”)。如此一来,Excel VBA将离开Do While循环。

9.打开屏幕更新并再次显示警报(在循环外部)。

Application.ScreenUpdating = 真实
Application.DisplayAlerts = 真实

10.测试程序。

结果:

导入图纸结果