问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我有1000个excel表格,每个excel表都有两个sheet,如何批量操作,打印时只打印sheet1?

发布网友 发布时间:2022-04-26 15:20

我来回答

4个回答

热心网友 时间:2023-10-11 12:33

附件已写好宏,可以实现按文件夹(含所有子文件夹)打印和按文件清单打印的功能:

1. 操作界面如图:

2. 代码如下,可以自行制作宏文件:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim iPath As String, i As Long

Dim t

Dim PathLen As Integer

Dim RunSignal As Variant, Reply As Variant

Dim Tr As Single, Tc As Single


    Tr = Target.Row

    Tc = Target.Column

    If Tr = 1 Then

        If Tc = 1 Then

            RunSignal = "List"

            Reply = MsgBox("This operation will print out files listed in column A! Please make sure your print setting is excellent enough!", vbOKCancel, "Warning")

            If Reply = vbCancel Then

            Exit Sub

            End If

        ElseIf Tc = 3 Then

            RunSignal = "Folder"

            Reply = MsgBox("This operation will list all files in specified folder first. And then, print out! Please make sure you choosed the right folder!", vbOKCancel, "Warning")

            If Reply = vbCancel Then

            Exit Sub

            End If

        Else

            Exit Sub

        End If

    Else

        Exit Sub

    End If

    

t = Timer

Application.ScreenUpdating = False

    If RunSignal = "List" Then

        GoTo Line1

    ElseIf RunSignal = "Folder" Then

        ActiveSheet.UsedRange.Offset(1, 2).ClearContents

    End If

    

    With Application.FileDialog(msoFileDialogFolderPicker)

        .Title = "Select a folder please!"

        If .Show Then

            iPath = .SelectedItems(1)

            PathLen = Len(iPath)

        Else

            Exit Sub

        End If

    End With

    

    If iPath = "False" Or Len(iPath) = 0 Then Exit Sub

        i = 1

        Call GetFolderFile(iPath, i)

Line1:  Call PrintFiles(RunSignal)

    MsgBox "Completed in " & Int((Timer - t) / 3600) & " hours " & Int(((Timer - t) Mod 3600) / 60) & " minutes " & (Timer - t) Mod 60 & " seconds!", vbOKOnly, "Time record"

Application.ScreenUpdating = True

End Sub


Private Sub GetFolderFile(ByVal nPath As String, ByRef iCount As Long)

Dim iFileSys


Dim J As Single

Dim Process As Variant, P As Integer

Dim ProcessLen As Integer


Set iFileSys = CreateObject("Scripting.FileSystemObject")

Set ifolder = iFileSys.GetFolder(nPath)

Set sfolder = ifolder.SubFolders

Set ifile = ifolder.Files

    

    

    With ActiveSheet

        For Each gfile In ifile

            

            If gfile.Type Like "*Excel*" And Not gfile.Path Like "*~$*" Then

            .Cells(iCount + 1, 3) = gfile.Path

            .Cells(iCount + 1, 4) = gfile.DateLastModified

            .Cells(iCount + 1, 5) = gfile.parentfolder

            .Hyperlinks.Add anchor:=.Cells(iCount + 1, 6), Address:=gfile.Path, TextToDisplay:=gfile.Name

            

            iCount = iCount + 1

            End If

        Next

       

    End With

      

    For Each nfolder In sfolder 'Search all the folders

        Call GetFolderFile(nfolder.Path, iCount)

    Next

End Sub



Sub PrintFiles(ByVal RunSignal As Variant)


Dim Wb As Workbook

Dim Sho As Worksheet

Dim Fs As Single, FCount As Single, C As Single


Application.DisplayAlerts = False


Set Sho = ActiveSheet

If RunSignal = "List" Then

    C = 1

ElseIf RunSignal = "Folder" Then

    C = 3

End If


FCount = Sho.Cells(10000, C).End(xlUp).Row


If FCount <= 2 Then

    MsgBox ("Nothing can be printed!")

    Exit Sub

Else

    For Fs = 2 To FCount

        Set Wb = Workbooks.Open(Sho.Cells(Fs, C).Text)

        Wb.Sheets(1).PrintOut

        Wb.Close savechanges = False

    Next

End If


Application.DisplayAlerts = True


End Sub

3. 想要现成文档可以在这个链接下载启用宏的文档

4. 没有CSDN积分的可以发消息给我用百度网盘下载,就是要收费喔!

热心网友 时间:2023-10-11 12:34

编写好

Excel怎样批量打印多个工作簿(文件)的每个表

热心网友 时间:2023-10-11 12:34

这是别人的,你改一改就能用有备注
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim Wb As Workbook '定义一个wb工作簿变量
On Error Resume Next '容错
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
'多选
.Filters.Clear
'清除文件过滤器
.Filters.Add ".Excel文件", "*.xlsx"
.Filters.Add ".Excel文件", "*.xlsm"
.Filters.Add ".Excel文件", "*.xls"
.Filters.Add "全部文件", "*.*"
'设置两个文件过滤器
If .Show = -1 Then
For i = 1 To .SelectedItems.Count
Set Wb = Workbooks.Open(.SelectedItems(i))
Wb.Sheets(1).PageSetup.PrintArea = Wb.Sheets(1).Range("A1:S35") '设置打印区域
Wb.Sheets(1).PrintOut copies:=1, from:=1, to:=1
Wb.Close
Next
Set Wb = Nothing
End If
End With
Application.ScreenUpdating = True
End Sub

热心网友 时间:2023-10-11 12:35

下载方方格子插件,批量打印
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
“定是李八百”的出处是哪里 李八百六种说法 李仙指道教传说中仙人 李八百 学习劈叉,每次静压压腿多久 六哥救的叫花子是谁的孩子 大智慧江恩三日图源码,找了无数公式,想在大智慧里用 ,一直没找到_百度... 测试类工具有哪些 服务器压力测试需要用的8种工具 8岁的小孩能玩什么游戏8岁男童和父母玩些什么互动游戏 摩尔庄园手游冲浪板凯文在哪里现在摩尔庄园凯文在哪 excel如何批量打印sheet1 如何将EXCEL中所有sheets一起打印出来? EXCEL里面的表SHEET1和SHEET2……怎么能同时打印出来? UEFI+GTP在win10下装win7双系统怎么装 excel如何行列互换 Excel中怎样将行列倒换? 大叶黄花梨越南黄花梨多少钱 大叶黄花梨价格 大叶黄花梨是什么? 大叶黄花梨是什么 大叶黄花梨是什么?大叶黄花梨是不是黄花梨? 武陟哪里有卖大叶黄杨 谁有大叶黄花梨芝麻点的珠子料 木条的那种 桂花都有哪些品种?主要生长在哪里? 越南大叶黄花梨是什么特征 大叶黄杨适合在哪生存 烤烟品种大叶黄特征特性 印尼产的大叶黄花梨印尼名叫什么? 大叶黄杨和大叶黄杨球(隔离带绿化)在北方栽植去哪里购苗最好,要求成活率要高,耐寒耐寒,生长快。 哪位高人知道哪里有大叶黄杨 excel表格的sheet1-5,怎么连续打印? 有一百多个Excel文件,只需要批量打印sheet1(表1) ?怎么搞?求助! 1个excel多个sheet打印 excel表格的sheet1-5 怎么连续打印 求教:excel中如何在sheet2中添加打印按钮,命令为打印sheet1 如何打印Excel成组工作表中的指定页? 在excel表中,如何将sheet1,sheet2同时打印出来 廊坊移动数据中心正常休息吗 请问移动公司的,数据中心是做什么的? 为什么中国移动、联通、电信要把数据中心建在贵州? 移动数据中心的税收是在当地的吗 如何做好黑龙江省移动数据中心的支撑服务工作? 中国移动(呼和浩特)数据中心 在哪里 中国移动公司的IDC与其他电信运营商的IDC的比较有那些特点和优势? 中国主权外币债券不采用国际债项评级会影响发行吗? 移动手机卡销户后还能用吗? 中国移动国际信息港数据中心怎么样是骗子公司吗?是那种打着招管理或技术岗位变相招销售或培训岗的那种吗 外币债券评级是什么,什么是B一级,什么是CCC级? 使用经济增长指标来描述主权的信用等级合理吗?为什么 美国三大信用评级机构的发展史?