Las macros de VBA en las hojas de cálculo de Excel se utilizan para automatizar diferentes operaciones mediante programación. Por ejemplo, puede programar una tarea que se va a realizar repetidamente, generar gráficos mediante código, etc. Sin embargo, la protección de las macros de VBA frente a usuarios no autorizados es un aspecto importante. Para manejar este problema, este artículo cubre cómo proteger macros de VBA en hojas de cálculo de Excel mediante programación usando C#.
- API para proteger macros VBA de Excel
- Proteger macros de Excel VBA
- Obtenga una licencia de API gratuita
API de C# para proteger las macros VBA de Excel
Para proteger las macros de Excel VBA, utilizaremos Aspose.Cells for .NET API. Es una poderosa API de manipulación de hojas de cálculo que le permite implementar la automatización de Excel desde sus aplicaciones .NET. Además, la API le permite trabajar sin problemas con macros de VBA en archivos de Excel. Puede descargar la DLL de la API o instalarla mediante NuGet.
PM> Install-Package Aspose.Cells
Proteja las macros de Excel VBA usando C#
Las macros de VBA en las hojas de cálculo de Excel están encapsuladas por proyectos de VBA, donde cada proyecto de VBA puede contener una o más macros (o módulos) de VBA. Por lo tanto, para proteger las macros de VBA, simplemente necesita aplicar la protección en el proyecto de VBA.
Los siguientes son los pasos para proteger un proyecto de Excel VBA.
- Cargue el archivo de Excel usando la clase Workbook.
- Acceda al proyecto de VBA en un objeto VbaProject mediante la propiedad Workbook.VbaProject.
- Proteja el proyecto de VBA con una contraseña mediante el método VbaProject.Protect(bool, string).
- Guarde el archivo de Excel actualizado usando el método Workbook.Save(String).
El siguiente ejemplo de código muestra cómo proteger el proyecto de Excel VBA mediante C#.
// Cargue su archivo fuente de Excel
Workbook wb = new Workbook("Workbook.xlsm");
// Acceda al proyecto VBA del Workbook
Aspose.Cells.Vba.VbaProject vbaProject = wb.VbaProject;
// Bloquee el proyecto VBA para verlo con contraseña
vbaProject.Protect(true, "11");
// Guarde el archivo de salida de Excel
wb.Save("ProtectedVBA.xlsm");
MS Excel muestra el siguiente mensaje cuando intenta ver el proyecto VBA protegido con contraseña.
Obtenga una licencia de API gratuita
Puede obtener una licencia temporal gratuita para utilizar la API sin limitaciones de evaluación.
Conclusión
En este artículo, aprendió cómo proteger las macros de VBA en archivos de Excel usando C#. La guía paso a paso junto con las referencias de la API y el ejemplo de código muestran cómo aplicar una contraseña a un proyecto de VBA. Puede explorar más sobre Aspose.Cells for .NET utilizando la documentación. En caso de que tenga alguna consulta, no dude en hacérnosla saber a través de nuestro foro.
Ver también
Sugerencia: es posible que desee consultar Aspose aplicación web de eliminación de macros GRATUITA.