Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Автоматизация и 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;


Наверх

Титульная страница Поиск, карта сайта Написать письмо