Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Servers (https://www.clubdelphi.com/foros/forumdisplay.php?f=9)
-   -   Proteger y desproteger hoja en excel (https://www.clubdelphi.com/foros/showthread.php?t=36921)

karla 27-10-2006 21:59:31

Proteger y desproteger hoja en excel
 
hola:

Estoy haciendo una aplicacion en la cual introduzco datos a un documneto en excel, pero necesito que una vez lleno no se pueda modificar, si me pudieran brindar alguna ayuda

edelphi 11-11-2006 02:24:46

bueno amiguita lo ke puedes hacer es en el mismo excel entrar al menu herramientas, opciones, ficha seguridad ahi le puedes colocar un clave de seguridad para proteger el documento evitar modificaciones e incluso la apertura del documento,
espero haber soucionado tu problema

karla 28-11-2006 22:59:20

Gracias::

pero en realidad lo que queria era portegerlo desde delphi, porque si lo protejo desde excel entonces mi programa tampoco puedo acceder a el y llenarlo

pero ya encontre como y es muy facil

ExcelApplication1 := TExcelApplication.Create(Application);
ExcelApplication1.ConnectKind := ckNewInstance;
ExcelWorkbook1 := TExcelWorkbook.Create(Application);
ExcelWorksheet1 := TExcelWorksheet.Create(ExcelWorkbook1);
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(camino, Lcid));
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.ActiveSheet as ExcelWorkSheet);
ExcelModelo.DisplayAlerts[Lcid];
ExcelWorksheet1.Unprotect('clave'); // aqui lo desprotejo para poder llenarlo

lo lleno y despues lo vuelvo a proteger
ExcelWorksheet1.protect('clave');

de todas fromas gracias por la ayuda

arasay17 12-07-2007 20:39:36

Hola :
Estoy tratando de hacer lo mismo que karla pero me da una excepcion de casteo en la siguiente instruccion: ExcelWorksheet1.protect('clave');
Alguien sabe que es lo que esta pasando?????????

DarkBlue 06-08-2010 13:20:14

Me imagino que tiene que es por ...
 
Para manejar lo que tu quieras dentro de excel te tienes que dirigir a la parte que quieras y todo esta estructurado asi

XLS<----es el contenedor o mejor dicho el propio programa de excel (sin hojas ni nada, para que lo veas mejor abre excel y cierra la hoja que trae por default y asi queda siempre que creas uno nuevo)
.workbooks <---son tus libros de trabajo
.sheets<---son las hojas de tus libros

prueba con esto a mi me funciono

XLS.ActiveSheet.Unprotect('clave');
XLS.ActiveSheet.Unprotect.protect('clave');
espero que aun no sea tarde, Exito!!!


La franja horaria es GMT +2. Ahora son las 01:35:37.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi