通过将 Excel 设为 OLE 对象来打开 Excel 电子表格

Opening an Excel spreadsheet by making Excel an OLE object

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

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

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