通过使Excel成为OLE对象打开Excel电子表格

通过使Excel成为OLE对象打开Excel电子表格,excel,delphi,pascal,lazarus,ole-automation,Excel,Delphi,Pascal,Lazarus,Ole Automation,我尝试使用以下代码打开我在Excel中创建的电子表格。它运行,但弹出窗口不断出现,说我的文件已被删除或移动。该文件肯定仍然存在。我尝试用其他名称创建新文件。它们都不起作用 procedure TForm1.Button1Click(Sender: TObject); var Excelfile: Variant; Workbook: Variant; begin Excelfile := CreateOleObject('Excel.Application'); Workbook

我尝试使用以下代码打开我在Excel中创建的电子表格。它运行,但弹出窗口不断出现,说我的文件已被删除或移动。该文件肯定仍然存在。我尝试用其他名称创建新文件。它们都不起作用

procedure TForm1.Button1Click(Sender: TObject);
var
  Excelfile: Variant;
  Workbook: Variant;
begin
  Excelfile := CreateOleObject('Excel.Application');
  Workbook := Excelfile.workbooks.open('filename.xls');
end;

您应该使用完全限定(绝对)路径,而不是相对路径

  • 好:
    C:\Users\Andreas Rejbrand\Documents\Report.xls
  • 错误:
    Report.xls

(事实上,如果我让你去瑞典的红色小屋,你肯定会问我确切的地址。)

Tavastehusgatan 26,164 79 Kista,瑞典,对吗?:-)@杰瑞:不,那好像是“红色小屋”(大写!)