admin 管理员组

文章数量: 1087139


2024年5月19日发(作者:createfile failed with 5)

如何用Excel VBA批量打印文件

有时候一个文件夹内有很多Excel文件,几十个,上百个,如果一个个的打开,然后

再打印,显然重复劳动,效率低下。

能不能用Excel VBA批量打印同一文件夹内的所有文件?

答案当然是肯定的。

假设我们的桌面上有个名叫“材料”的文件夹,内有上百个EXCEL文件需要打印

打开EXCEL文件→Visual Basic编辑器(Alt+F11)→插入→模块

以下是VBA代码

***********************************************************************

Sub test()

Set rrr = CreateObject("stemObject")

Set r = der("C:Documents and SettingsAdministrator桌面材料")

For Each i In

Filename:=("C:Documents and SettingsAdministrator桌面

材料" + + "")

rea = ""

ut Copies:=1, Collate:=True

saveChanges:=False

Next

End Sub

*********************************************************************************

**

注释:rea = "" 的目的是“取消打印区域”

因为有时候这些excel文件并不是我们自己写得,可能已经被别人设定好了打印区域,

并保存在文件中,这是我们所看不到的。(好比方所,其中某个文件的主人由于需要,设定

从Excel表的5行到第10行为打印区域,但是我们并看不到。当我们点击“文件”-->打

印,把材料打印出来时,才发现打印的并不是整张表格,而是别人设定的打印区域,这显

然不符合我们的要求,所以我们要取消打印区域)。

附:如果先是存在多级目录,大文件夹套很多小文件夹,小文件夹里装的才是文件,

怎么办?

解:以大文件为根目录,把此根目录下的所有文件拷贝到同一文件夹内再进行操作。

可以用Windows带的“搜索”功能找到大文件夹内的所有文件,再复制。


本文标签: 打印 文件夹 文件 区域 设定