# DESHABILITAR Y HABILITAR IMPRESORA



## oscar_igor (Apr 7, 2003)

NECESITO SU  AYUDA CON LO SIGUIENTE:
TENGO UNA PLANTILLA EN EXCEL PERO NECESITO SABER COMO PUEDO IMPEDIR LA IMPRESION Y UNA VEZ QUE SE LLENEN TODOS LOS CAMPOS DE LA PLANTILLA SE PERMITA LA IMPRESION
POR SU ATENCION MIL GRACIAS


----------



## Juan Pablo González (Apr 7, 2003)

Algo así en el módulo del libro, donde MiValidacion es una función que devuelve Falso o Verdadero, dependiendo si se llenaron todos los datos.

Option Explicit

Private Sub Workbook_BeforePrint(Cancel As Boolean)
If MiValidacion() = False Then
        Cancel = False
        MsgBox "Por favor llene todos los datos"
End If
End Sub


----------



## oscar_igor (Apr 8, 2003)

TODAVIA NO ME SALE MUY BIEN, TENGO BRONCAS CON LA VALIDACION.
Option Explicit
Dim mivalidacion
Validacion = Val("A1")
lO QUE QUIERO HACER ES QUE EL VALOR DE A1 SI NO ES 1 NO SE IMPRIMA, VOY A SEGUIR INTENTANDO Y HABER SI SE PUEDE HACER.
MUCHAS GRACIAS Y SALUDOS


----------



## Juan Pablo González (Apr 8, 2003)

Lo que yo quise decir es crear una función llamada "MiValidacion", que sea la que haga las respectivas validaciones... para este caso sería algo así:


```
Function MiValidacion() As Boolean
    MiValudacion = (Range("A1").Value = 1)
End Function
```

Lo que haría esto sería devolver VERDADERO únicamente en el caso que A1 (Esto asume la hoja Activa por si acaso) sea igual a 1, y FALSO en el resto de las veces.  Esto, combinado con el código anterior, haría que cada vez que MiValidacion devuelva FALSO, se cancele la impresión.


----------



## oscar_igor (Apr 9, 2003)

Ahora si, ya quedo listo.
Mil gracias por la ayuda en verdad me fue de mucha utilidad.
Mil gracias de nuevo y saludos desde Mexico.


----------

