Форум: "Начинающим";
Текущий архив: 2007.07.01;
Скачать: [xml.tar.bz2];
ВнизПроблема с синтаксисом.... :-(((( Найти похожие ветки
← →
Neket (2007-06-06 08:53) [0]Подскажите как правельно использовать "with" ?
Делаю так:XLApp:= CreateOleObject("Excel.Application");
XL:=XLApp.Workbooks.Add();
with XL.Sheets[2].Range["A2:AE2"] do
begin
.Font.Name:="Arial Cyr";
.Font.Size:=16;
.Font.Bold:=true;
.HorizontalAlignment:=3;
end;
Вылетает отшибка "Record, object or class type required".
При этом, если делвю так:XLApp:= CreateOleObject("Excel.Application");
XL:=XLApp.Workbooks.Add();
XL.Sheets[2].Range["A2:AE2"].Font.Name:="Arial Cyr";
XL.Sheets[2].Range["A2:AE2"].Font.Size:=10;
XL.Sheets[2].Range["A2:AE2"].Font.Bold:=true;
XL.Sheets[2].Range["A2:AE2"].HorizontalAlignment:=3;
то все нормально.
← →
MBo © (2007-06-06 08:55) [1]begin
.Font
зачем точки-то поставил?
← →
Neket (2007-06-06 08:55) [2]Ды без разницы...
XLApp:= CreateOleObject("Excel.Application");
XL:=XLApp.Workbooks.Add();
with XL.Sheets[2].Range["A2:AE2"] do
begin
Font.Name:="Arial Cyr";
Font.Size:=16;
Font.Bold:=true;
HorizontalAlignment:=3;
end;
Тоже самое.
← →
Neket (2007-06-06 08:57) [3]Компилятор ругается на
with XL.Sheets[2].Range["A2:AE2"] do
← →
MBo © (2007-06-06 09:01) [4]и правда.
для позднего связывания компилятор не может такое сделать.
← →
Neket (2007-06-06 09:05) [5]Т.е. Придется делать так? :-(
XLApp:= CreateOleObject("Excel.Application");
XL:=XLApp.Workbooks.Add();
XL.Sheets[2].Range["A2:AE2"].Font.Name:="Arial Cyr";
XL.Sheets[2].Range["A2:AE2"].Font.Size:=10;
XL.Sheets[2].Range["A2:AE2"].Font.Bold:=true;
XL.Sheets[2].Range["A2:AE2"].HorizontalAlignment:=3;
Просто когда приходиться задавать большое колличество параметров для ячеек, код увелличивается... А соответственно и рамер проги.
← →
sniknik © (2007-06-06 09:07) [6]> Record, object or class type required
требуется запись, обьект или класс.
а кокого типа у тебя XLApp или XL.Sheets[2].Range["A2:AE2"]? догадываюсь что вариант (ole...).
хочеш писать с with, работай с библиотекой типов (см. импорт type library), иначе откуда компилятору знать к чему относится обращения внутри with если это определяется только на этапе выполнения...
← →
Сергей М. © (2007-06-06 09:07) [7]
> Neket (06.06.07 08:57) [3]
И правильно ругается.
Оператор with неприменим для OleVariant-типа.
← →
sniknik © (2007-06-06 09:11) [8]> Т.е. Придется делать так? :-(
лучше предварительно присвоить "ранж" переменной ->
Rg:= XL.Sheets[2].Range["A2:AE2"];
Rg.Font.Name:="Arial Cyr";
Rg.Font.Size:=10;
Rg.Font.Bold:=true;
Rg.HorizontalAlignment:=3;
и код короче и длинные переходы по вариантам уберешь.
← →
Neket (2007-06-06 09:12) [9]
> Сергей М. © (06.06.07 09:07) [7]
>
> > Neket (06.06.07 08:57) [3]
>
>
> И правильно ругается.
>
> Оператор with неприменим для OleVariant-типа.
Даа но насколько я понимаю и для Variant-типа тоже?
← →
Сергей М. © (2007-06-06 09:19) [10]
> и для Variant-типа тоже?
Разумеется !
← →
Neket (2007-06-06 09:21) [11]Жаль
:-((((
← →
Сергей М. © (2007-06-06 09:24) [12]
> Neket (06.06.07 09:21) [11]
Что мешает бросить на форму компонент TExcelApplication и работать с Excel с использованием библ-ки типов ?
← →
Neket (2007-06-06 09:34) [13]
> Сергей М. © (06.06.07 09:24) [12]
>
> > Neket (06.06.07 09:21) [11]
>
>
> Что мешает бросить на форму компонент TExcelApplication
> и работать с Excel с использованием библ-ки типов ?
Опыт... а точнее его отсутствие ;-)
Вот еслиб было где почитать про использование этого компонента.
← →
Сергей М. © (2007-06-06 09:53) [14]
> Вот еслиб было где почитать про использование этого компонента
Здесь
http://www.google.ru/search?q=Delphi+TExcelApplication&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ru:official&client=firefox-a
был ?
← →
clickmaker © (2007-06-06 10:24) [15]
> [13] Neket (06.06.07 09:34)
хм... а работать вслепую через variant проще что-ли? когда для ExcelApplication хотя бы юниты есть со списком методов
← →
Amoeba © (2007-06-06 10:48) [16]Можно почитать здесь:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=249
← →
Anatoly Podgoretsky © (2007-06-06 11:36) [17]
> Вот еслиб было где почитать про использование этого компонента.
А чего там читать то, пара свойств, остальное одинаково
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.07.01;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.004 c