VBA – Archivo con Permiso de Escritura. Comprobación.

A veces cometemos el error de trabajar en un archivo de sólo lectura. Y la sorpresa viene cuando le damos a guardar, Excel nos dirá que «No se Puede Guardar ya que el archivo es de Sólo Lectura». Es cierto que podemos hacer un «Guardar Como» y ponerle el mismo nombre para machacar el archivo original. Pero a veces esto no es posible porque el archivo está siendo utilizado por otro usuario de red.

Para asegurarnos de que estamos trabajando en un archivo con permiso de escritura podemos utilizar el siguiente código VBA:

VB
Private Sub Workbook_Open()
If ThisWorkbook.ReadOnly = True Then
MsgBox "Archivo de sólo Lectura. Para Modificar: Cerrar y volver a abrir con permiso de ESCRITURA"
ThisWorkbook.Close
End If
End Sub

O que no nos deje ejecutar una macro cuando, por ejemplo, pulsemos un botón:

VB
Private Sub CommandButton1_Click()
If ThisWorkbook.ReadOnly = True Then
MsgBox "Archivo de sólo Lectura. Para Modificar: Cerrar y volver a abrir con permiso de ESCRITURA"
Exit Sub
End If
'Código de la macro:
'
'
End Sub

A parte del posible error de trabajar con un archivo de sólo lectura también puede ocurrir que el usuario trabaje sobre la copia de una hoja, en lugar de trabajar sobre el archivo original. Para evitarlo recomiendo la lectura de este post: VBA – Trabajar en la hoja de Excel Original


Publicado

en

por

Etiquetas:

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *