怎样把导出到EXECL的数据,用程序控制让它不能修改?

xmchw 2004-12-24 05:27:34
最近客户要求把数据报表导人EXECL后,防此导人到EXECL后,有又到EXECL里把数据改掉。DELPHI是否有这样的控制。
...全文
113 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wholesale 2005-07-03
  • 打赏
  • 举报
回复
学习。。过一会而我就用的到了。。
xthmpro_cn 2005-07-02
  • 打赏
  • 举报
回复
有密码保护啊,没有密码怎么更改啊@!
delphi_liu 2005-07-02
  • 打赏
  • 举报
回复
用临时表来存储,再导出就可以保存了
Randomize 2005-07-02
  • 打赏
  • 举报
回复
恐怕总有办法更改被保护的单元格吧。
xthmpro_cn 2005-07-02
  • 打赏
  • 举报
回复
先将下面的拷贝到窗体上:
object ExcelApplication1: TExcelApplication
AutoConnect = False
ConnectKind = ckRunningOrNew
AutoQuit = False
Left = 200
Top = 424
end
object ExcelWorksheet1: TExcelWorksheet
AutoConnect = False
ConnectKind = ckRunningOrNew
Left = 232
Top = 424
end
object ExcelWorkbook1: TExcelWorkbook
AutoConnect = False
ConnectKind = ckRunningOrNew
Left = 264
Top = 424
end


代码如下:
ExcelApplication1.Connect;
ExcelApplication1.Visible[0]:=true;
ExcelApplication1.Workbooks.Add(null,0);
Excelworkbook1.ConnectTo(ExcelApplication1.workbooks[ExcelApplication1.Workbooks.count]);
Excelworksheet1.ConnectTo(ExcelWorkbook1.Sheets[1] as _worksheet);
// ExcelWorkSheet1.Unprotect('fxfzp');
ExcelWorkSheet1.Cells.Locked:=false;
ExcelWorkSheet1.Range['B3', 'M20'].Locked:=true;
ExcelWorkSheet1.Protect('fxfzp');
//最后断开连接
Excelworksheet1.Disconnect;
Excelworkbook1.Disconnect;
ExcelApplication1.Disconnect;

效果是B3到M20的矩形单元格被保护。
  • 打赏
  • 举报
回复
導出之後 設文件只讀!

SetFileAttributes('c:\a.xls',FILE_ATTRIBUTE_READONLY );

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧