|
Получение конкретного листа книги
Используя раннее связывание
var
ISheet: Excel8_TLB._Worksheet;
...
ISheet := IWorkbook.Worksheets.Item['Лист1'] as Excel8_TLB._Worksheet;
Коллекция Worksheet подобна всем остальным коллекциям из Excel TLB.
В ней вы можете удалять листы, вставлять новые, изменять их порядок.
Лучший способ узнать, как это сделать - справка по Excel VBA.
Вот, например, обход всех листов книги:
var
IWorksheets: Excel8_TLB.Worksheets;
...
IWorksheets := IWorkbook.Worksheets;
for i := 1 to IWorksheets.Count do begin
ISheet := IWorksheets.Item[i] as Excel8_TLB._Worksheet;
ISheet.Range['A1', 'B5'].Value := 'Я здесь!';
end;
Используя позднее связывание
var
Worksheet: OLEVariant;
...
Worksheet := Workbook.Worksheets.Item(1);
Примечание:
Рекомендуем всегда и везде работать с ячейками и областями (Range) в контексте
их листа, получив предварительно интерфейс на этот лист.
От использования свойств ActiveSheet и ActiveWorkbook желательно
совсем отказаться, разве что за исключением каких-то особых случаев.
Сделать лист активным (будет доступен через ActiveSheet)
Используя раннее связывание
Обращаться к листу можно либо по его названию, либо по номеру в коллекции:
(IWorkbook.Worksheets.Item['Лист1'] as Excel8TLB._Worksheet).Activate(xlLCID);
или
(IWorkbook.Worksheets.Item[1] as Excel8TLB._Worksheet).Activate(xlLCID);
Используя позднее связывание
Workbook.Worksheets.Item(1).Activate;
|