![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Автоматизация и Excel [D5]
ДимкаН © (2002-05-15 09:33:00)Здравствуйте, Мастера. Ссори за глупый вопрос, но... пропадаю!
Добавил на форму компоненты TExcelApplication и TExcelWorkBook со страницы Servers. Пытаюсь открыть книгу, добавить туда несколько листов и присвоить им имена, которые в списке:
var n, odin: OleVariant;
i: integer;
...
n:="c:\mydoc.xls";
ExcelApplication1.Workbooks.Add(n,0);
ExcelWorkBook1.ConnectTo(ExcelApplication1.ActiveWorkbook);
for i:=0 to Form1.SGF.Count-1 do
begin
odin:=1;
ExcelApplication1.ActiveWorkbook.Worksheets.Add(odin, EmptyPAram, EmptyPAram, EmptyPAram, EmptyPAram);
ExcelApplication1.ActiveWorkbook.ActiveSheet.Name:=Form1.SGF[i];
end;
Дык вот, свойство Name не проходит :(. Как присвоить имя?
Везде написано, что свойства описаны в офисных файлах vba*.*. У меня стоит 2000 Office, я смотрел файл VBAXL9.CHM, но ничего про свойства объекта COM MS Excel не нашел. Подскажите, пожалуйста, где конкретно искать в этом файле?
Спасибо.
AFROLOV (2002-05-15 10:22:00) [1]Посмотри свойства и методы объекта Aplication, Workbook, Worksheet. На сколько я знаю через компоненты TExcelApplication и TExcelWorkBook можно получить доступ не до всех свойств и методов. Лучше (на мой взгляд) работать через OLE. Вот пример как это делается.
uses ..., ComObj;
var
XL:Variant;
begin
XL:=CreateOLEObject("Excel.Application");
XL.WorkBooks.add;
XL.visible:=true;
XL.ActiveSheet.Hyperlinks.Add(XL.ActiveSheet.Cells[1,1]," http://www.yandex.ru","yandex","yandex");
end;