我的项目在Excel中创建了一个邮件合并表单(我是从某人复制的)。
我想更改打印宏以执行以下操作之一:
循环遍历并将每个记录打印到文件(唯一名称)或
自动打印所有记录(一次)
现在,当我运行宏时,每次都必须手动打印。我有200多个记录,所以很费时间。
Sub PrintForms()
Dim StartRow As Integer
Dim EndRow As Integer
Dim Msg As String
Dim i As Integer
Sheets("Form").Activate
StartRow = Range("StartRow")
EndRow = Range("EndRow")
If StartRow > EndRow Then
Msg = "ERROR" & vbCrLf & "The starting row must be less than the ending row!"
MsgBox Msg, vbCritical, APPNAME
End If
For i = StartRow To EndRow
Range("RowIndex") = i
If Range("Preview") Then
ActiveSheet.PrintPreview
Else
ActiveSheet.PrintOut
End If
Next i
End Sub