如何锁定excel 文档 一个excel 文档不让改动 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是要用程序写还是手工设置,如果是用手工设置的话,只要使用“工具”->“保护”->“保护工作薄”就行了如果要用程序写的话?你录制一个宏不就知道了?ActiveWorkbook.Protect Structure:=True, Windows:=False这是宏,用DELPHI写:uses comobj;var ExcelApp,MyWorkBook: OLEVariant;begin num:=0; if opendialog1.Execute then begin try ExcelApp:=CreateOleObject('Excel.Application'); MyWorkBook:=CreateOleobject('Excel.Sheet'); except application.Messagebox('无法打开Xls文件,请确认已经安装EXCEL.','', mb_OK+mb_IconStop); Exit; end; MyworkBook:= ExcelApp.workBooks.Open(opendialog1.FileName); MyworkBook.Protect('',true,true,true,true,true,true);...VBA中关于protect的说明:Protect 方法 保护图表或工作表(语法 1)或工作簿(语法 2),使之不能被修改。语法 1expression.Protect(Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly)语法 2expression.Protect(Password, Structure, Windows)expression 必选。返回 Chart 或 Worksheet 对象(语法 1)或 Workbook 对象(语法 2)的表达式。Password Variant 类型,可选。加在工作表或工作簿上区分大小写的密码字符串。如果省略本参数,不用密码就可以取消对该工作表或工作簿的保护。否则,取消对该工作表或工作簿的保护时必须提供该密码。如果忘记了密码,就无法取消对该工作表或工作簿的保护。最好在安全的地方保存一份密码及其对应文档名的列表。DrawingObjects Variant 类型,可选。若为 True 则保护形状。默认值为 False。Contents Variant 类型,可选。若为 True 则保护内容。对于图表工作表,这样将保护整个图表。对于工作表,这样将保护每个单元格。默认值为 True。Scenarios Variant 类型,可选。若为 True 则保护方案。本参数仅对工作表有效。默认值为 True。Structure Variant 类型,可选。若为 True 则保护工作簿结构(工作簿中工作表的相对位置)。默认值为 False。UserInterfaceOnly Variant 类型,可选。若为 True 则保护用户界面,但不保护宏。如果省略本参数,则即保护宏也保护用户界面。Windows Variant 类型,可选。若为 True 则保护工作簿窗口。如果省略本参数,则不保护该窗口。说明如果对工作表使用 Protect 方法时,将 UserInterfaceOnly 参数设置为 True ,然后又保存了工作簿,那么再次打开工作簿时,整个工作表将被完全保护,而非仅仅保护用户界面。若想在再次打开工作簿后仅保留该工作表的用户界面保护,必须再次将 UserInterfaceOnly 参数设置为 True 并应用 Protect 方法。 如何判断D中的EDIT框中的内容是不是数字格式? 调用COM组件时,怎样才能显示函数列表以及参数列表,实现自动完成功能.Delphi 7 TSearchRec 问题 全新开放精品源码 怎样截获系统的关机消息? 如何在qreport中打印网页上的图片? dll中使用数据模块的问题。 D7可以实现这个吗? 关于报表控件 用过VclZip捆件的过来看看! 怎么多曲播放? 如何控制文本框中只能输入最多小数点后两位的数字,等!谢谢!
如果是用手工设置的话,只要使用“工具”->“保护”->“保护工作薄”就行了如果要用程序写的话?你录制一个宏不就知道了?ActiveWorkbook.Protect Structure:=True, Windows:=False
这是宏,用DELPHI写:
uses comobj;
var
ExcelApp,MyWorkBook: OLEVariant;
begin
num:=0;
if opendialog1.Execute then
begin
try
ExcelApp:=CreateOleObject('Excel.Application');
MyWorkBook:=CreateOleobject('Excel.Sheet');
except
application.Messagebox('无法打开Xls文件,请确认已经安装EXCEL.','',
mb_OK+mb_IconStop);
Exit;
end;
MyworkBook:= ExcelApp.workBooks.Open(opendialog1.FileName);
MyworkBook.Protect('',true,true,true,true,true,true);
...
VBA中关于protect的说明:
Protect 方法
保护图表或工作表(语法 1)或工作簿(语法 2),使之不能被修改。语法 1expression.Protect(Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly)语法 2expression.Protect(Password, Structure, Windows)expression 必选。返回 Chart 或 Worksheet 对象(语法 1)或 Workbook 对象(语法 2)的表达式。Password Variant 类型,可选。加在工作表或工作簿上区分大小写的密码字符串。如果省略本参数,不用密码就可以取消对该工作表或工作簿的保护。否则,取消对该工作表或工作簿的保护时必须提供该密码。如果忘记了密码,就无法取消对该工作表或工作簿的保护。最好在安全的地方保存一份密码及其对应文档名的列表。DrawingObjects Variant 类型,可选。若为 True 则保护形状。默认值为 False。Contents Variant 类型,可选。若为 True 则保护内容。对于图表工作表,这样将保护整个图表。对于工作表,这样将保护每个单元格。默认值为 True。Scenarios Variant 类型,可选。若为 True 则保护方案。本参数仅对工作表有效。默认值为 True。Structure Variant 类型,可选。若为 True 则保护工作簿结构(工作簿中工作表的相对位置)。默认值为 False。UserInterfaceOnly Variant 类型,可选。若为 True 则保护用户界面,但不保护宏。如果省略本参数,则即保护宏也保护用户界面。Windows Variant 类型,可选。若为 True 则保护工作簿窗口。如果省略本参数,则不保护该窗口。说明如果对工作表使用 Protect 方法时,将 UserInterfaceOnly 参数设置为 True ,然后又保存了工作簿,那么再次打开工作簿时,整个工作表将被完全保护,而非仅仅保护用户界面。若想在再次打开工作簿后仅保留该工作表的用户界面保护,必须再次将 UserInterfaceOnly 参数设置为 True 并应用 Protect 方法。