1,183
社区成员
发帖
与我相关
我的任务
分享
procedure opExcel();
var
vXLS :Variant;
WorkSheet :variant;
begin
vXLS := CreateOleObject('Excel.Application');
Try
vXLS.DisplayAlerts :=false;
vXLS.WorKBooks.Close;
vXLS.WorkBooks.Open( 'd:\123.xls' );
WorkSheet := vXLS.WorKBooks[1].Sheets[1];
WorkSheet.Cells[28,3].Select;
WorkSheet.Pictures.Insert ('D:\1.png');
vXLS.WorKBooks[1].Save;
vXLS.WorKBooks[1].Close;
Finally
if Not Varisempty(vXLS) then vXLS.Quit;
end;
end;
procedure opExcel();
var
vXLS :Variant;
WorkSheet :variant;
begin
CoInitialize(nil);
Writeln('come in ');
vXLS := CreateOleObject('Excel.Application');
Writeln('come in 1===');
//vXLS := getactiveoleobject('Excel.Application');
Try
vXLS.DisplayAlerts :=false;
vXLS.WorKBooks.Close;
vXLS.WorkBooks.Open( 'd:\123.xls' );
WorkSheet := vXLS.WorKBooks[1].Sheets[1];
WorkSheet.Cells[28,3].Select;
WorkSheet.Pictures.Insert ('D:\1.png');
vXLS.WorKBooks[1].Save;
vXLS.WorKBooks[1].Close;
Finally
if Not Varisempty(vXLS) then vXLS.Quit;
end;
CoUninitialize();
end;
另外,若在dll中涉及到ADOQuery等数据库操作,由于这些控件也都属于com组件,因此都需要在程序前后加上一句代码。关于这两句代码的含义究竟如何,大家自己去调研吧,相信你会收获很多