![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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"];