Modificación de macro que imprime

Necesito modificar una macro que ud. Me creo para imprimir en una impresora matricial, Estoy usando la misma macro para imprimir en una impresora térmica y deseo que la impresora me imprima el mismo recibo dos veces consecutivamente porque no tienen copias. El asunto es que configure la impresora para que lo hiciera pero no lo hace al parecer es porque la macro tiene una protección luego de imprimir.

¿Cómo puedo hacer para que la macro permita imprimir dos veces antes de bloquearse?

Anexo macro

Saludos,

MG

Sub Imprimir()
'Por.DAM -
If ActiveSheet.Name = "." Then
    Set h1 = ActiveSheet
    'EM: QUITAR PARA QUE MUESTRE MENSAJE DE ARCHIVO EXISTE
    'Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    boton = True
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
    num = Range("A9")
    ActiveSheet.Copy
    If ActiveSheet.ProtectContents Then
        ActiveSheet.Unprotect "gomez"
    End If
    h1.Range("E9").Copy
    Range("E9").PasteSpecial Paste:=xlValues
    ActiveSheet.Protect "gomez"
    'em: si se presenta mensaje pasa a la línea de cierre y allí se permite guardar con otro nombre
    On Error Resume Next
    ActiveWorkbook.SaveAs _
        Filename:="D:\CENTRO EDUCATIVO ADONAI\CARPETA DE FACTURA-25-26\" & num & ".xls", _
        FileFormat:=xlNormal
    ActiveWorkbook.SaveAs _
        Filename:="D:\CENTRO EDUCATIVO ADONAI\CARPETA DE FACTURA-24-25\" & num & ".xls", _
        FileFormat:=xlNormal
    ActiveWorkbook.SaveAs _
        Filename:="F:\CARPETA DE FACTURA\" & num & ".xls", _
        FileFormat:=xlNormal
    ActiveWorkbook.Close True
    'EM: SI SE CANCELA EL GUARDADO QUEDA COMO LIBRO ACTIVO y hay que forzar el cerrado.
    If Left(ActiveWorkbook.Name, 5) = "Libro" Then
        ActiveWorkbook.Close False
    End If
    ActiveSheet.Unprotect "gomez"
        Range("D5") = Range("D5") + 1
    ActiveSheet.Protect "gomez"
    'Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End If
boton = False
End Sub
Sub printprev()
'Por.dam
boton = True
ActiveWindow.SelectedSheets.PrintPreview
boton = False
End Sub

1 respuesta

Respuesta

Has probado cambiando

Copies:=1
Por
Copies :=2

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas