Ejecutar macro cuando una carpeta está como solo lectura

Tengo un problema con un libro que se aloja en la carpeta ubicada en la unidad C, la cual en ocasiones no sé porqué, se bloquea y queda como solo lectura, por ello permite abrir el libro de Excel y trabajar normalmente, pero cuando se intenta cerrar, dice que no se pueden guardar el archivo, y genera otros problemas, por ello he intentado ejecutar una macro que al abrir el libro ejecute la instrucción ActiveWorkbook. Save para si falla que se ejecute alguna instrucción que cierre el libro o impida que se intente registrar algo; la macro es la siguiente:

Sub Probar()
On Error GoTo NOTA

ActiveWorkbook. Save
NOTA:

MsgBox "El documento no se guardará, por favor cierre el libro y reinicie el equipo."
Exit Sub

End Sub

El problema es que en ocasiones los usuarios hacen caso omiso al mensaje y continúan registrando, y al final se presenta el problema al tratar de cerrarlo.

Cómo podría agregar una instrucción para que en si la tarea presenta error y se ejecuta el GoTo, aparte del mensaje se pueda agregar alguna otra macro que force el cierre o algo así'.

1 Respuesta

Respuesta
1

Al abrir el libro podés controlar el modo en que se abrió, con estas instrucciones:

Private Sub Workbook_Open()
If ActiveWorkbook.ReadOnly Then
    MsgBox "El archivo se abrió como 'solo lectura' y se cerrará."
    ActiveWorkbook.Close
Else
    'a continuación las instrucciones que tengas de apertura... sino solamente end if
    Sheets(1).Select
End If
End Sub

Te recuerdo que la consulta sigue abierta... si el tema quedó comprendido y resuelto no olvides valorarla... sino comenta.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas