如题:以下是我的代码程序:
o:=ComObj.CreateOleObject('Excel.Application');
app := System.DispatchHelper.Create(o);
app.PropertyPut('Visible', [False]);
try
odocs:=app.PropertyGet('WorkBooks',[]);
docs := System.DispatchHelper.Create(odocs);
docs.InvokeMethod('Open', [DataSetBrokerSALES_RECORD_IMPORT_STYLE_DT.DataSet.FieldByName('FILE_NAME').AsString]);
odoc:= docs.PropertyGet('Item',[1]);
doc := System.DispatchHelper.Create(odoc);
sheet:= System.DispatchHelper.Create(doc.PropertyGet('Worksheets',[ComboBox1.ItemIndex+1]));
sheet.InvokeMethod('Select', []);
UsedRange:=System.DispatchHelper.Create(sheet.PropertyGet('UsedRange', []));
//cells:=System.DispatchHelper.Create(UsedRange.PropertyGet('Cells', []));
Rows:=System.DispatchHelper.Create(UsedRange.PropertyGet('Rows', []));
DataSetBrokerSALES_RECORD_IMPORT_STYLE_DT.DataSet.FieldByName('END_ROW').AsInteger:=objecthelper.ToInt(Rows.PropertyGet('count',[]));
finally
docs.InvokeMethod('close',[]);
end;
app.InvokeMethod('Quit',[]);
//(doc as System.IDisposable).Dispose;
(odoc as System.IDisposable).Dispose;
(odocs as System.IDisposable).Dispose;
(o as System.IDisposable).Dispose; |