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

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

Excel, реализовать в Delphi VB'шный оператор Set [Delphi, Windows]


YCH.Del ©   (2006-12-07 17:36:00) 

Доброе время суток. Товарищи, есть вопрос:

1. Как на Delphi сэмулировать "Set" Excel'a
Set ActiveSheet.VPageBreaks(1).Location = Range("C1")
2. Если нет ответа на 1.
ActiveSheet.VPageBreaks.Add (???)
Что ставить в параметр? Пробовал "D1", Range("D1"), Range["D1"] - не помогает :(

По первому вопросу в тырнете ничего не нашел вообще :( По второму - только то, что написано в excel'евском хелпе (Add .before = ...). Если кто-нить сталкивался - выручите, плз...


YCH.Del   (2006-12-08 09:57:00) [1]

Всем спасибо, тема закрыта.
[code]
...
var B: IDispatch;
...
B := XL.ActiveWorkbook.WorkSheets[1].Range['D1:D3'];
XL.ActiveSheet.VPageBreaks.Add(B);
[/code]


Array   (2006-12-08 09:43:00) [2]


> YCH.Del ©   (08.12.06 09:32) [3]

ИМХО тут надо не Range присваивать , а Cells


YCH.Del   (2006-12-08 09:32:00) [3]

Блин, ну я все же чуть-чуть в Delphi разбираюсь... Пример привел из Excel'a (макрос под запись). И то, что ты предложил, уже пробовал. Вся засада именно в Set :( Без него в Excel не сработает (хотя ошибки и не будет)


umbra   (2006-12-07 18:37:00) [4]

т.е. в

XLApp.ActiveSheet.VPageBreaks[1].Location := Range['C1'];


umbra   (2006-12-07 18:34:00) [5]

в делфи все круглые скобки , в которых стоят индексы надо заменять на квадратные. Все двойные кавычки - на одинарные. В онце строк надо добавлять точку с запятой. Оператор присваивание выглядит как := . Кроме того, надо как-то создать экземпляр экселя.

таким образом,
Set ActiveSheet.VPageBreaks(1).Location = Range("C1")

превращается в

XLApp.ActiveSheet.VPageBreaks[1].Location := Range["C1"];


Наверх

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