3

XE3 使用 delphi 和 excel ole 自动化。使用此代码,我在单元格中打开并读取/写入,但我无法选择不同的工作表(Sheet1、Sheet3 等)

begin
L_vi.Caption: = 'D: \ bd1 \ file_supporto \ Vi.xls';
Ex: = createoleobject ('Excel.Application');
Ex.visible: = true;
Ex.workbooks.open (L_vi.Caption);
Ex.cells [1,1]: = 'test';
Sheets: = Ex.Workbooks [1]. Worksheets ['Sheet3'];

你能帮我吗?

谢谢

PS我这样解决:

Ex.Workbooks [1]. Worksheets ['Sheet3'].select;

谢谢。

4

1 回答 1

4

这在 XE3 中对我很有效:

var
  XLApp: OleVariant;
  Sheet: OleVariant;
begin
  XLApp := CreateOleObject('Excel.Application');
  XLApp.Visible := True;
  XLApp.Workbooks.Open('C:\Test\Testing.xls');
  ShowMessage(XLApp.Workbooks[1].Worksheets[1].Name);  // Sheet1
  Sheet := XLApp.Worksheets.Item['Sheet3']; 
  ShowMessage(Sheet.Name);                             // Sheet3
  Sheet.Select;
  // This also works
  XLApp.WorkSheets.Item['Sheet1'].Select;              // Sheet1
end;
于 2013-03-30T16:50:08.227 回答