程序如下
按照程序打开了己存的EXECL文件,我想让用户修改后保存。前面都 对了,用户修改完自己在EXECL中选另存为也对,就是在关闭EXECL时保存时出错,高手看看
procedure Tfrm_rslr.DBGrid1CellClick(Column: TColumn);
var MSExcel :variant ;
begin
SaveDialog1.Filter:='*.xls|*.xls';
SaveDialog1.DefaultExt:='xls';
if (dbgrid1.Fields[1].AsString='pcm') or (dbgrid1.Fields[6].AsString='阿克苏') then
begin
if application.MessageBox('你确认要启动excel界面吗?','请你回答',mb_yesno+mb_defbutton2)<> idno then
begin
MSExcel := CreateOleObject( 'Excel.Application' );
MSExcel.Visible := True;
MSExcel.Caption := '阿克苏通讯管理系统正在调用 Microsoft Excel';
MSExcel.WorkBooks.Open(ExtractFilePath(Application.ExeName )+'mess\SDH光通讯配线表\阿克苏城网配线表.xls');
end
else
try
excelapplication1.Connect;
except
messagedlg('excel 可能未安装!',mterror,[mbok],0);
abort;
end;
if savedialog1.Execute then
begin
MSExcel.ActiveWorkBook.SaveAs(SaveDialog1.FileName);
MSExcel.ActiveWorkBook.Saved:=True;
MSExcel.Quit;
end
else
ShowMessage('保存失败,错误警报');
end;
end;end.
按照程序打开了己存的EXECL文件,我想让用户修改后保存。前面都 对了,用户修改完自己在EXECL中选另存为也对,就是在关闭EXECL时保存时出错,高手看看
procedure Tfrm_rslr.DBGrid1CellClick(Column: TColumn);
var MSExcel :variant ;
begin
SaveDialog1.Filter:='*.xls|*.xls';
SaveDialog1.DefaultExt:='xls';
if (dbgrid1.Fields[1].AsString='pcm') or (dbgrid1.Fields[6].AsString='阿克苏') then
begin
if application.MessageBox('你确认要启动excel界面吗?','请你回答',mb_yesno+mb_defbutton2)<> idno then
begin
MSExcel := CreateOleObject( 'Excel.Application' );
MSExcel.Visible := True;
MSExcel.Caption := '阿克苏通讯管理系统正在调用 Microsoft Excel';
MSExcel.WorkBooks.Open(ExtractFilePath(Application.ExeName )+'mess\SDH光通讯配线表\阿克苏城网配线表.xls');
end
else
try
excelapplication1.Connect;
except
messagedlg('excel 可能未安装!',mterror,[mbok],0);
abort;
end;
if savedialog1.Execute then
begin
MSExcel.ActiveWorkBook.SaveAs(SaveDialog1.FileName);
MSExcel.ActiveWorkBook.Saved:=True;
MSExcel.Quit;
end
else
ShowMessage('保存失败,错误警报');
end;
end;end.
解决方案 »
- 请教如何追加子行??我已经想不出来了!!!
- delphi中xml节点属性内容的类型问题
- 谁知道LPVOID在哪个单元定义
- 关于active form在浏览器中下载的问题!
- 那位大哥有reportmachine2.4以后的版本
- 如何用midiOutShortMsg,midiOutOpen使电脑发音?
- 查找隐藏
- 各位大师:为什么我的delphi5打了补丁后仍报错:bof或eof有一个是'真'...错误,提出解决方案及彻底解决重重奖励
- 小弟正准备从VB转Delphi,听说要先学好object pascal,谁能给我讲讲何谓object pascal?
- 注册10多年,老规矩,祝福大家新年快乐,万事如意!
- 各位高手兄弟帮忙!
- 请教各位专家
ExcelApplication1.WorkBooks.Close;26) 退出 Excel:
ExcelApplication1.Quit;
ExcelApplication1.Disconnect;MSExcel := unsigned;
var MSExcel,WorkBook :variant ; begin
if (dbgrid1.Fields[1].AsString='PCM') and (dbgrid1.Fields[6].AsString='阿克苏') then
begin
if application.MessageBox('你要启动excel界面吗?','请你确认',mb_yesno+mb_defbutton2)<>
idno then
begin
MSExcel := CreateOleObject( 'Excel.Application' );
WorkBook :=CreateOleObject('Excel.Sheet');
MSExcel.Visible := True;
MSExcel.Caption := '阿克苏通讯管理系统正在调用 Microsoft Excel';
MSExcel.WorkBooks.Open(ExtractFilePath(Application.ExeName )+'mess\SDH光通讯配线表\阿克苏城网配线表.xls');
end
else
exit;
try
excelapplication1.Connect;
except
messagedlg('Microsoft Excel 可能未安装!',mterror,[mbok],0);
abort;
end;
excelapplication1.Caption := '阿克苏电力通讯系统正在调用Microsoft Excel';
begin
if savedialog1.Execute then
begin
try
ExcelWorksheet1.SaveAs(savedialog1.FileName);
application.MessageBox('保存成功','恭喜',mb_ok);
except
application.MessageBox('保存失败','错误警报',mb_ok);
end;
end;
// excelapplication1.Disconnect;
// excelapplication1.Quit;
end;
end; end; end.