Excel y .NET, malos amigos (II): Proteger un Excel y su contenido

Por desgracia, mis problemas con el maldito Excel no han acabado. Pero ni mucho menos.

Nuevo problema, nueva comedura de cabeza. Necesito proteger el contenido de un Excel, mediante programación (en C#) para que un usuario no pueda ni modificar sus valores ni el formato de las celdas.

Existen varias protecciones que se pueden aplicar: a Celda, a Hoja (Worksheet en MSDN) y a Libro (Workbook en MSDN).

La protección del libro, nos permite proteger la estructura general del libro, el orden de las hojas, añadir mas, o eliminar. El protección de la hoja, es la parte mas interesante, nos permite un montón de cosas, desde prohibir modificar contenido, hasta ordenar las filas/columnas.

Un código de ejemplo es este, que restringe por completo las acciones del usuario:

// Protejo una hoja en particular:
objSheet = (Microsoft.Office.Interop.Excel.Worksheet)objWorkbook.Sheets["Hoja 1"];
objSheet.Activate();
objSheet.Protect("clave", true, true, true, false, false, false, false, false, false, false, false, false, false, false, false);
// Protejo el libro completo:
m_Excel.Application.ActiveWorkbook.Protect("clave 2", true, false);

Si queréis, saber mas, solo visitar las urls que os he dejamos mas arriba para dar los permisos que queráis, y no los mas restrictivos.

Please follow and like us:

Un pensamiento en “Excel y .NET, malos amigos (II): Proteger un Excel y su contenido

  1. Pingback: Bitacoras.com

Deja un comentario

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