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

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

Сообщение при форматировании области в Excel [D5]


Jony ©   (2002-09-11 13:15:00) 

При программном форматировании области (Range) в Excel Практически по каждой строчке кода при установке параметров границ области выдает сообщение:

(Warning) ... Constsnt expression violates subrange bounds.

Вот часть кода:

var
ISheet: Excel2000.ExcelWorksheet;
IRange: Excel2000.Range;
begin
ISheet := IWorkbook.Worksheets.Item["Лист1"] as Excel2000.ExcelWorksheet;
IRange := ISheet.Range["A4:G15"), EmptyParam];
with IRange do begin
Borders.item[xlDiagonalDown].LineStyle := xlNone;
Borders.item[xlDiagonalUp].LineStyle := xlNone;

With Borders.item[xlEdgeLeft] do begin
LineStyle := xlContinuous;
Weight := xlMedium;
ColorIndex := xlAutomatic;

End;
...
end;
end;


По выделенным строкам и проходит это сообщение. Хотя программа работает нормально и форматирование выполняет правильно.
Почему проходит это сообщение и как от него избавиться?


Jony   (2002-09-11 18:35:00) [1]

> id_privin
Большое спасибо! OleVariant помогло.


id_privin   (2002-09-11 17:20:00) [2]

Попробуй так
Borders.item[xlDiagonalDown].LineStyle := OleVariant(xlNone);


Рыжик   (2002-09-11 14:43:00) [3]


> AFrolov © (11.09.02 13:29)

Малость не то. Речь идёт о сообщении компилятора. DisplayAlerts тут не при чём.

> Jony © (11.09.02 13:15)

У меня такого не возникает. Может быть это из-за использования with. Попробуй навести мышкой в Design-time на Borders в выделенных строчках и посмотри, что за Borders он рассматривает. Должно быть prop Range.Borders:Borders. А вообще-то это сообщение возникает, когда константа выходит за границы допустимых значений, чего в данном примере вроде не наблюдается.


Jony   (2002-09-11 14:21:00) [4]

> AFrolov
Требует еще какие-то параметры в квадратных скобках после DisplayAlerts. А попытка поставить туда что-то от фонаря ситуации не меняет.


AFrolov   (2002-09-11 13:29:00) [5]

ISheet.Application. DisplayAlerts:=False;


Наверх

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