S Supermay Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-20 #23 没有关闭Excel进程 Var WorkBooks: OleVariant; WorkSheets: OleVariant; begin inherited; if FSQLConnection = nil then Exit; Try Self.ExcelApplication1.Connect; WorkBooks := Self.ExcelApplication1.WorkBooks.Add(Null, 0); WorkSheets := WorkBooks.ActiveSheet; WorkSheets.Name := Self.Caption; do WriteReportTitles(WorkSheets); do WriteReportBody(WorkSheets); WorkBooks.SaveAs(Self.Caption + FormatDateTime('YYYYMMDDHHNNSS', Now) + '.xls'); Self.ExcelApplication1.Visible[0] := system.True; Finally Self.ExcelApplication1.Disconnect; end; end;
没有关闭Excel进程 Var WorkBooks: OleVariant; WorkSheets: OleVariant; begin inherited; if FSQLConnection = nil then Exit; Try Self.ExcelApplication1.Connect; WorkBooks := Self.ExcelApplication1.WorkBooks.Add(Null, 0); WorkSheets := WorkBooks.ActiveSheet; WorkSheets.Name := Self.Caption; do WriteReportTitles(WorkSheets); do WriteReportBody(WorkSheets); WorkBooks.SaveAs(Self.Caption + FormatDateTime('YYYYMMDDHHNNSS', Now) + '.xls'); Self.ExcelApplication1.Visible[0] := system.True; Finally Self.ExcelApplication1.Disconnect; end; end;
J janixd Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-20 #24 disconnect方法 不适用于我自己建的excel类哦 我原来用的D自带的控件 也用了disconnect 但好像也不成功哦
Z zhlfdm Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-20 #25 在每次掉用excel之前先关闭你的excel连接。
J janixd Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-20 #26 to zhlfdm 先谢谢你回答,我自己的程序已经可以解决程序自己调用excel 我的程序每次同时打开几个excel文件都不出问题 主要是打开程序 然后再单独用excel就不行 用程序调用可以的
Z zxy666666 Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-20 #27 我遇到过跟你一样的问题: v.Quit; 后面加上; v := Unassigned;
J janixd Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-23 #29 按照楼上的方法出现 有个错误 Method'Unassigned' not supported by automation object.
B boy2002cn Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-23 #30 关不了就是那个KILLTASK不就是多几行吗
J janixd Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-24 #31 楼上的说清楚具体该如何做好吗 谢谢 对前面答过的我觉得好像方法应该是可以的 就是我这个地方可能有什么地方不适用 也很感谢大家
A am2001 Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-24 #32 我是现在用的第一次用了后都好好的,第二、三次都可以很好用,在一次用完后关闭是这样写的,你可以参考一下 FWorkSheet := null; FXlApp.WorkBooks.Close; FXlApp.Quit; FXlApp := null;
我是现在用的第一次用了后都好好的,第二、三次都可以很好用,在一次用完后关闭是这样写的,你可以参考一下 FWorkSheet := null; FXlApp.WorkBooks.Close; FXlApp.Quit; FXlApp := null;
J janixd Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-24 #33 啊 楼上的偶像啊 终于解决部分问题了 但是还有个问题 我的excel如果是由用户自己关 而不是程序关 怎么办啊
D dongejkle Unregistered / Unconfirmed GUEST, unregistred user! 2006-01-28 #35 帮顶! http://www.source520.com 站长开发推广同盟 站长朋友的终极驿站 同时拥有海量源码电子经典书籍下载 http://www.source520.com/search/search.asp "编程.站长"论坛搜索引擎-----为中国站长注入动力!
帮顶! http://www.source520.com 站长开发推广同盟 站长朋友的终极驿站 同时拥有海量源码电子经典书籍下载 http://www.source520.com/search/search.asp "编程.站长"论坛搜索引擎-----为中国站长注入动力!
A am2001 Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-05 #36 今天回来上班才上来 刚我试了一下,如果把Excel窗口显示出来,那用户自己关闭Excel后还会有一个Excel的进程在的,在程序退出时用上面的代码关闭也可以正常关闭的 我就用二个按钮以下这几行程序测试都好的,运行后点N次Button1自己关闭Excel后再点Button2都能关闭Excel进程,第二次运行也都好好的 procedure TForm1.Button1Click(Sender: TObject); begin FXlApp := CreateOleObject('Excel.Application'); FXlApp.Visible := True; FXlApp.WorkBooks.Open('C:/Documents and Settings/Administrator/桌面/a.xls'); FWorkSheet := FXlApp.WorkBooks[1].WorkSheets[1]; end; procedure TForm1.Button2Click(Sender: TObject); begin FWorkSheet := null; FXlApp.WorkBooks.Close; FXlApp.Quit; FXlApp := null; end;
今天回来上班才上来 刚我试了一下,如果把Excel窗口显示出来,那用户自己关闭Excel后还会有一个Excel的进程在的,在程序退出时用上面的代码关闭也可以正常关闭的 我就用二个按钮以下这几行程序测试都好的,运行后点N次Button1自己关闭Excel后再点Button2都能关闭Excel进程,第二次运行也都好好的 procedure TForm1.Button1Click(Sender: TObject); begin FXlApp := CreateOleObject('Excel.Application'); FXlApp.Visible := True; FXlApp.WorkBooks.Open('C:/Documents and Settings/Administrator/桌面/a.xls'); FWorkSheet := FXlApp.WorkBooks[1].WorkSheets[1]; end; procedure TForm1.Button2Click(Sender: TObject); begin FWorkSheet := null; FXlApp.WorkBooks.Close; FXlApp.Quit; FXlApp := null; end;
衣 衣雪峰 Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-05 #37 你动态创建EXCEL控件。然后卸载干净就不会出现哪个问题了
J janixd Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-06 #38 to am2001: 可是程序里面button2的代码该放哪里呢 我不可能让用户自己关了EXCEL后又多按一个按钮
S SeekMyself Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-06 #39 procedure CloseAllExcelApps; var Hwnd : THandle; begin Hwnd := FindWindow('XLMAIN',nil); while Hwnd <> 0do begin SendMessage(Hwnd,WM_CLOSE,0,0); Hwnd := FindWindow('XLMAIN',nil); end; end;
procedure CloseAllExcelApps; var Hwnd : THandle; begin Hwnd := FindWindow('XLMAIN',nil); while Hwnd <> 0do begin SendMessage(Hwnd,WM_CLOSE,0,0); Hwnd := FindWindow('XLMAIN',nil); end; end;