Impedir impresión

Hola nuevamente a todos, necesito otra ayudita más, cada vez se me complica más esto..
En mi libro de Excel, inserte un botón en el cual al hacer clic, se imprime una planilla, pero si alguno de los valores no están dentro de un rango, me aparece un msgbox avisándome del error y no imprime.
Pero si voy y hago clic en el botón de imprimir en la barra de excel, o en Archivo>imprimir, si me lo imprime, ¿hay alguna forma de que no me deshabilite cual forma de impresión si no se dan tales condiciones?
Aquí va el código que tengo para imprimir.
Sub Botón54_AlHacerClic()
If Range("g5") <> 0 Or Range("g6") <> 0 Or Range("AS29") <> 0 Or Range("AS30") <> 0 Or Range("AS31") <> 0 Or Range("AS28") <> 0 Or Range("AS33") <> 0 Or Range("AS34") <> 0 Or Range("AS35") <> 0 Or Range("AS36") <> 0 Or Range("AS38") <> 0 Or Range("AS39") <> 0 Or Range("AS40") <> 0 Or Range("AS41") <> 0 Or Range("bp6") > 1045 Or Range("bq6") > 1225 Or Range("br6") > 1132 Or Range("bs6") > 1301 Or Range("bp8") > 1125 Or Range("bq8") > 929 Or Range("br8") > 1182 Or Range("bs8") > 374 Or Range("bp10") > 353 Or Range("bq10") > 770 Or Range("ag47") > Range("ag45") Or Range("o61") > Range("a63") Or Range("o56") > Range("a58") Or Range("o51") > Range("a53") Or Range("ag61") <> 0 Or Range("br10") <> Range("br9") Or Range("g10") = 0 Or Range("u10") = 0 Then
sino = MsgBox("VALORES FUERA DE LOS PERMITIDO, CHEQUEE LOADSHEET (Celdas en rojo) E INTENTE NUEVAMENTE", vbCritical + vbOKOnly, "ATENCIÓN")
If sino <> vbYes Then Exit Sub 'si no es SI cancela la rutina
Application.ScreenUpdating = False
Sheets("Loadsheet for print").Select
Range("aq10") = Time
ActiveWindow.SelectedSheets.PrintOut Copies:=Range("B1"), Collate:=True
Worksheets("loadsheet for print").Visible = False
Sheets("LOADSHEET").Select
Application.ScreenUpdating = True
Else
Application.ScreenUpdating = False
Worksheets("loadsheet for print").Visible = True
Sheets("Loadsheet for print").Select
Range("aq10") = Time
ActiveWindow.SelectedSheets.PrintOut Copies:=Range("B1"), Collate:=True
Worksheets("loadsheet for print").Visible = xlSheetVeryHidden
Sheets("LOADSHEET").Select
Application.ScreenUpdating = True
End If
End Sub

Muchas gracias por la ayuda.

1 respuesta

Respuesta
1
Hi amigoq tal, bueo si me cuentas que tienes un menú, entones debes tener elnomnre de ese menú que lo imprime.
Bueno en ese caso lo que debes hacer para que no lo imprima es hacer toda esa bloque de código--- de validación en un Sub, y una vez obtenido en un sub,.. indicarle que se bloque
Menu.Enabled=false
Ahora seria algo asi...
Sub VerificaCajas()
If Range("g5") <> 0 Or Range("g6") <> 0 Or Range("AS29") <> 0 Or Range("AS30") <> 0 Or Range("AS31") <> 0 Or Range("AS28") <>  ... then
else
menu_enabled =False
nombredelboton.Ebsanñed =False
end if
End Sub
Hola, gracias por tu pronta respuesta, pero la verdad no entendí bien, como hacerlo,
El meno clásico de excel, donde esta imprimir, pegar, copiar, etc
y en mi hoja de trabajo tengo un botón que ejecuta el código de la primera respuesta.
Pero como hago si ese if de las celdas es verdadero, me impida imprimir ya sea por mi botón o por el botón imprimir propio de excel
Gracias
Dejame ver un momento amigo... ok---
Regreso en 4 hoas para ver tengo que salir a trabajar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas