如何正确的向打开的excel文件写入数据? |
尚未結案
|
ffprince
初階會員 發表:66 回覆:62 積分:25 註冊:2003-08-16 發送簡訊給我 |
小弟作了一个程式:打开一张excel表格,往里面填数据。但是有个问题,如果原先已经开着若干excel文件,那么数据可能就会写错文件了。小弟试了以下两种方法,可是运行时都报错(无效索引)。不知有何良策?
1、
var thisbook:integer;
ExcelID:variant;
……
thisbook:=ExcelApplication1.Workbooks.Count 1;
ExcelID := CreateOleObject('Excel.Application');
ExcelID.Visible := true;
ExcelID.Workbooks.Open('D:\myexcel.xls');
ExcelID:=ExcelApplication1.Workbooks[thisbook].Worksheets[1];
2、
var ExcelID:variant;
……
if ExcelApplication1.Workbooks.Count<>0 then
showmessage(请关闭您现在正在使用的EXCEL程序!);
ExcelApplication1.quit;
ExcelApplication1.disconnect;
ExcelWorksheet1.disconnect;
ExcelWorkbook1.Disconnect;
ExcelID := CreateOleObject('Excel.Application');
ExcelID.Visible := true;
ExcelID.Workbooks.Open('D:\myexcel.xls');
ExcelID:=ExcelApplication1.Workbooks[1].Worksheets[1];
|
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
|
ffprince
初階會員 發表:66 回覆:62 積分:25 註冊:2003-08-16 發送簡訊給我 |
|
ffprince
初階會員 發表:66 回覆:62 積分:25 註冊:2003-08-16 發送簡訊給我 |
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
您好:
小弟都這樣使用,試試看
Try xlsApp:= CreateOleObject('Excel.Application'); WorkBook:= CreateOleobject('Excel.Sheet'); Except ShowMessage('請先安裝 Microsoft Excel 再執行本程式!'); WorkBook.Close; //關閉EXCEL xlsApp.Quit; //退出Excel Application xlsApp:=Unassigned; //free VARIANT Exit; End; WorkBook:= xlsApp.workBooks.Open(OpenDialog1.FileName); WorkBook.sheets[1].Select; ....................... WorkBook.Close; //關閉EXCEL xlsApp.Quit; //退出Excel Application xlsApp:=Unassigned; //free VARIANT~~應無所住而生其心~~ 發表人 - Terrychen 於 2004/04/05 08:40:41 |
ffprince
初階會員 發表:66 回覆:62 積分:25 註冊:2003-08-16 發送簡訊給我 |
多谢大侠指点,不过我已试过用GetActiveOleObject确实有效!可以这样实现对新开的EXCEL文件写入数据:
var thisbook:integer;
ExcelID:variant;
……
thisbook:=ExcelApplication1.Workbooks.Count 1;
ExcelID:=GetActiveOleObject('Excel.Application');
ExcelID.Visible:=true;
ExcelID.Workbooks.Open('D:\myexcel.xls');
ExcelID:=ExcelApplication1.Workbooks[thisbook].Worksheets[1];
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |