如何使用VBA 批量打印同一文件夹下所有工作簿中的“报表”工作表,并把每张表调整打印在一页上
使用VBA批量打印同一文件夹下所有工作簿中的“报表”工作表,并把每张表调整打印在一页上附件下载百度网盘链接http://pan.baidu.com/s/1bng48m7希...
使用VBA 批量打印同一文件夹下所有工作簿中的“报表”工作表,并把每张表调整打印在一页上
附件下载百度网盘链接 http://pan.baidu.com/s/1bng48m7
希望得到大家的帮助 展开
附件下载百度网盘链接 http://pan.baidu.com/s/1bng48m7
希望得到大家的帮助 展开
2个回答
展开全部
可利用如下代码批量打印:
Sub Print_All_Excel()
On Error Resume Next
Dim my_Doc As String
Dim my_File As String
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
.AllowMultiSelect = False
my_Doc = .SelectedItems(1)
End With
my_File = Dir(my_Doc & "\" & "*.xls*")
Do While Len(my_File) <> 0
Workbooks.Open (my_Doc & "\" & my_File)
ActiveWorkbook.Worksheets("报表").Selected
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
ActiveWorkbook.Close
my_File = Dir
Loop
End Sub
追问
能否改成默认路径 为当前文件所在文件夹呢 谢谢
追答
Sub Print_All_Excel()
On Error Resume Next
Dim my_File As String
my_File = Dir(ThisWorkbook.Path & "\" & "*.xls*")
Do While Len(my_File) <> 0
Workbooks.Open (ThisWorkbook.Path & "\" & my_File)
ActiveWorkbook.Worksheets("报表").Selected
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
ActiveWorkbook.Close
my_File = Dir
Loop
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询