Delphi, What do I do about "no GetEnumerator present" error when using a for loop over Excel Interop
- by Ryan
Hello,
I'm trying to write a Delphi program that will loop through each worksheet in an Excel file and format some cells. I'm receiving an error while trying to use the for-in loop over the Workbook.Worksheets collection, though. The error is specifically:
[DCC Error] Office.pas(36): E2431
for-in statement cannot operate on
collection type 'Sheets' because
'Sheets' does not contain a member for
'GetEnumerator', or it is inaccessible
The line of code this occurs for is:
for Worksheet in Workbook.Worksheets do
The definition of Worksheet and Workbook is as follows:
var ExcelApp: ExcelApplication;
var Workbook: ExcelWorkbook;
var Worksheet: ExcelWorksheet;
I'm porting this code to Delphi from C#, in which it works. Does anyone know why I'd be getting this GetEnumerator error? I'm using the Office 2007 Excel Interop file and Embarcadero® Delphi® 2010 Version 14.0.3593.25826.
Thanks in advance.