Intentando implementar esta macro -Cambiar un número cada vez que imprimo.
Actualmente estoy intentando utilizar una macro para cambiar un número de factura cuando imprimo un lote.
***Sub PrintCopies_ActiveSheet()
Dim CopiesCount As Long
Dim copynumber As Long
CopiesCount = Application.InputBox("How many copies do you want?", Type:=1)
'Now the program wants you to input how many pages you like to print.
'You can input 100 here.
For copynumber = 1 To CopiesCount
With ActiveSheet
.Range("E1").Value = copynumber 'I assume your invoice number is in cell E1.
.PrintOut 'Print the sheet
End With
Next copynumber
End Sub***
Funciona como está, pero quiero imprimir un lote de facturas a partir del número de factura 400. Cuando intento cambiar esta parte
For copynumber = 1 To CopiesCount
a
For copynumber = 400 To CopiesCount
no funciona. (Este cambio se sugirió en un comentario sobre la respuesta aceptada en la pregunta vinculada).
¿Cómo puedo cambiar el código para permitirme especificar el número de factura inicial?
Respuesta1
Pruebe este código modificado. Agregué dos nuevas variables ( start
y limit
) que hacen que este código se personalice más fácilmente para imprimir números de factura. Ahora hay un segundo mensaje de usuario para el número de factura inicial. limit
se calcula a partir de las dos entradas del usuario.
Sub PrintCopies_ActiveSheet()
Dim CopiesCount As Long
Dim copynumber As Long
Dim start as Variant, limit As Long
CopiesCount = Application.InputBox("How many copies do you want?", Type:=1)
'Now the program wants you to input how many pages you like to print.
'You can input 100 here.
'starting invoice number
start = Application.InputBox("Start sequence at what invoice number?", Type:=1)
'This gives you the ability to cancel the macro by clicking Cancel.
If start = "False" Then
Exit Sub
End If
limit = start + CopiesCount - 1 'last invoice number to print
For copynumber = start To limit
With ActiveSheet
.Range("E1").Value = copynumber 'I assume your invoice number is in cell E1.
.PrintOut 'Print the sheet
End With
Next copynumber
End Sub