今天是公元: 20250504日 星期   农历: 乙巳初七 2加入收藏 | 设为首页 | 会员中心
您当前的位置:首页 > 科文与生活 > 软硬件学习

Excel宏:一列自动筛选打印,两列自动筛选打印

日期:2024-05-10   来源:本站整理   点击:61

一列筛选打印
Sub 一列自动筛选打印()
   Dim slt_col
   Dim arr, brr, i As Long
   Dim rg As Range
   Dim objDic As Object

   Set slt_rng = Application.InputBox("请选拆分依据列!只能选择单列!", Title:="提示", Type:=8)
   slt_col = slt_rng.Column
 
   MsgBox " 准备按【" & ActiveSheet.Cells(1, slt_col) & "】列进行分类筛选,并打印"
   Set rg = ActiveSheet.Range("a1").CurrentRegion
   arr = ActiveSheet.Range("a1").CurrentRegion
   Set objDic = CreateObject("scripting.dictionary")
 
   '首先按第一拆分依据列进行筛选
   For i = 2 To UBound(arr)
       objDic(arr(i, slt_col)) = ""
   Next
   brr = objDic.keys
   For i = LBound(brr) To UBound(brr)
       rg.AutoFilter field:=slt_col, Criteria1:=brr(i) '其中的“slt_col”就是第一要筛选的列
       ActiveSheet.PrintPreview
       'ActiveSheet.PrintOut
   Next i
   rg.AutoFilter

  MsgBox "【" & ActiveSheet.Cells(1, slt_col) & "】列分类筛选打印,完成!"
End Sub

上一篇: 返回列表
下一篇: Excel退出时不提示保存的解决方法
相关文章
热门文章
  1. Excel宏:一列自动筛选打印,两列自动筛
  2. Excel批量取消超链接的方法
  3. Excel退出时不提示保存的解决方法
  4. 软件版本命名规范
   关于我们
服务联系
新闻公告
好正好教育
好正好软件(教育管理)
Copyright (c) 2024 好正好教育