当前代码如下: 帮忙看下,如何能把提示框 隐藏掉?
procedure TKBBD1.copyArea(ASource, ATarget: DispatchHelper);
var
sUsed, tUsed, sRange, tRange: DispatchHelper;
begin
sRange := DispatchHelper.Create(ASource.PropertyGet('Range', ['A1', 'Z999']));
sRange.InvokeMethod('Copy', []);
tRange := DispatchHelper.Create(ATarget.PropertyGet('Range', ['A1']));
tRange.InvokeMethod('PasteSpecial', []);
end;
function TKBBD1.AddWorksheet(AName: String; AWorkSheets: DispatchHelper): DispatchHelper;
begin
Result := DispatchHelper.Create(AWorkSheets.InvokeMethod('Add', []));
Result.PropertyPut('Name', [AName]);
end;
procedure TKBBD1.Button2Click(Sender: TObject);
var
lFileName, lSource: String;
oExcel, oWorksheet: object;
app, workbooks, sourceworkbook, sourceworksheets, sourceworksheet,
workbook, worksheets, worksheet: DispatchHelper;
begin
lfilename:='c:\a.xls';
lSource := 'c:\b.xls';
try
oExcel:= ComObj.CreateOleObject('Excel.Application');
app := DispatchHelper.Create(oExcel);
app.PropertyPut('Visible', [False]);
workbooks := DispatchHelper.Create(app.PropertyGet('Workbooks',[]));
sourceworkbook := DispatchHelper.Create(workbooks.InvokeMethod('Open',[lSource]));//打开文件
sourceworksheets := System.DispatchHelper.Create(sourceworkbook.PropertyGet('Sheets',[]));
sourceworksheet := System.DispatchHelper.Create(sourceworksheets.PropertyGet('Item',[1]));
workbook := DispatchHelper.Create(workbooks.InvokeMethod('Open',[lFileName]));//打开文件
worksheets := System.DispatchHelper.Create(workbook.PropertyGet('Sheets',[]));
// worksheet := AddWorksheet('newSheet', worksheets);
worksheet := System.DispatchHelper.Create(worksheets.PropertyGet('Item',[1]));
copyArea(sourceworksheet, worksheet);
finally
workbooks.InvokeMethod('Close', []);
oExcel := nil;
app := nil;
end; |