EXCEL数据有效性里面怎样实现批量打印?如何一键完成打印第一页跟第二页?

2024-11-01 02:54:14
推荐回答(2个)
回答1:

假设用于显示第一页与第二页的数据有效性单元格位于C2单元格,应当是数据显示区域(考核内容与考核项目等)通过公式(或宏)以C2格显示的内容来更新,所以只要用一段宏,改变C2格的内容并打印当前页就可以了,试试下面代码:

Sub 自动打印()

Range("c2") = "第一页"

ActiveSheet.PrintOut '打印

Range("c2") = "第二页"

ActiveSheet.PrintOut '打印

End Sub

在表格中添加一个按钮,指定宏名“自动打印”就行了。

回答2:

Sub 批量提取数据有效性下拉列表项目并打印()
Dim rCell As Range
Dim Arr, m
On Error Resume Next
Set rCell = Worksheets("Sheet1").Range("C1")
'将单元格中的数据有效性序列提取到数组
With rCell.Validation
If .Type = 3 Then
If Range(.Formula1) Is Nothing Then
'当数据有效性序列的来源不是单元格区域时
Arr = Split(.Formula1, ",")
Else
Arr = Range(.Formula1).Value
End If
'批量打印
If IsArray(Arr) Then
For Each m In Arr
If m <> "" Then
rCell.Value = m
Worksheets("Sheet1").PrintOut
End If
Next
Else
rCell.Value = Arr
Worksheets("Sheet1").PrintOut
End If
End If
End With
End Sub
运行后即可将每个员工的资料页依次打印出来。