用EXCEL做好一个工作簿,然后想指定的单元格填数,可以实现,但是,我送完数据后,它老提示保存,这对于一条数据或数据量不大的时候,用户可以接受,但是,数据量大的

  • 主题发起人 hurryman
  • 开始时间
H

hurryman

Unregistered / Unconfirmed
GUEST, unregistred user!
用EXCEL做好一个工作簿,然后想指定的单元格填数,可以实现,但是,我送完数据后,它老提示保存,这对于一条数据或数据量不大的时候,用户可以接受,但是,数据量大的时候,老这样提示保存也不行?(有原码)(40分)<br />用EXCEL做好一个工作簿,然后想指定的单元格填数,可以实现,但是,
我送完数据后,它老提示保存,这对于一条数据或数据量不大的时候,
用户可以接受,但是,数据量大的时候,老这样提示保存也不行,
还有,当我要连续打印100份合同的时候(合同有几联),我如果放很多进去
它自动走纸会不准,现在我想象你请教的问题是,如何在数据量比较大的时候,
我象EXCEL里面添些数据后,不出现什么保存的提示,而一直打印下去。
~~~~~~~~~~~~~~~~~~~~~
直到打印完毕。

procedure TForm1.SpeedButton5Click(Sender: TObject);
var msexcel:eek:levariant ;
i,j:integer ;
temp ,fname :string;
wbook,wsheet:eek:levariant ;
workbook,worksheet :eek:levariant ;
day,month,year :word ;
begin
msexcel :=createoleobject('excel.application');
msexcel.visible :=true ;
workbook :=msexcel.application ;
workbook.workbooks.open('c:/2.xls');
worksheet :=workbook.activesheet ;
msexcel.cells(1,3):=edit6.Text ;
msexcel.cells(2,3):=edit7.text ;
msexcel.cells(2,4):=edit15.Text ;
msexcel.cells(2,5):=edit16.Text ;
msexcel.cells(3,2):=edit8.Text ;
msexcel.cells(4,3):=edit1.Text ;
msexcel.cells(4,6):=combobox1.Text ;
msexcel.cells(4,8):=edit2.Text ;
msexcel.cells(6,2):=edit3.Text ;
msexcel.cells(6,3):=edit4.Text ;
msexcel.cells(7,2):=''''+edit5.Text ;
decodedate(datetimepicker1.date,year,month,day);
msexcel.cells(11,4):=inttostr(year)+' '+inttostr(month)+' '+inttostr(day);
msexcel.cells(11,6):=edit9.Text ;
msexcel.cells(12,4):=edit10.Text ;
msexcel.cells(20,4):=edit11.Text ;
msexcel.cells(21,4):=edit12.Text ;
msexcel.cells(22,4):=edit13.Text ;
msexcel.cells(23,2):=edit14.Text ;
msexcel.activesheet.printout ;
msexcel.save ;
// msexcel.activeworkbook.saved :=true ;//abort to save disk
msexcel.workbooks.close ;
msexcel.quit ;
msexcel:=unassigned ;
//put the excel into ole control
olecontainer1.CreateLinkToFile('c:/2.xls',false);
end;
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
823
SUNSTONE的Delphi笔记
S
顶部