Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.13;
Скачать: CL | DM;

Вниз

Цвета в Excel   Найти похожие ветки 

 
Neket   (2007-04-19 17:45) [0]

Подскажите как быть?
Есть такой код

var
ClYell:TColor = ($ccffff);
ClGren:TColor = ($00a000);
begin
......
XLApp.ActiveSheet.Cells.Item[i, K+7].Interior.Color :=  clYell;
XLApp.ActiveSheet.Cells.Item[i+1, K+7].Interior.Color :=  clGren;
.......
if  XLApp.Cells[i,k].Interior.Color=clYell then showmessge("Hello World"); // Сдесь срабатывает
if  XLApp.Cells[i,k].Interior.Color=clGren then showmessge("By By World"); // А Сдесь Пропускает
end;

Причем если работаею со стандартными цветами (тип CLRed  или CLGreen) то все срабатывает.


 
Neket   (2007-04-20 08:09) [1]

Народ ну подскажите пожалуйста. Очень нада. Как с этим работать?


 
ЮЮ ©   (2007-04-20 08:21) [2]

для начала проверь (сразу, без ...), действительно установился или нет цвет в ячейке:

XLApp.ActiveSheet.Cells.Item[i + 1, K + 7].Interior.Color :=  clGren;
showmessge(IntToStr(clGren) + " " + IntToStr(XLApp.ActiveSheet.Cells.Item[i + 1, K + 7].Interior.Color));

Неужели без showmessge нелязя? Поставь брэкпоинт в отладчике.

З.Ы. боюсь при следующей итерации i ты перезатираешь clGren и снова ставишь clYell;


 
Neket   (2007-04-20 08:40) [3]


> showmessge(IntToStr(clGren) + " " + IntToStr(XLApp.ActiveSheet.
> Cells.Item[i + 1, K + 7].Interior.Color));


Странно но вы правы... Интересно а с чем это связано. Кстати что странно, ячейка сама по себе закрашивается.
И если я ставлю так

XLApp.ActiveSheet.Cells.Item[i + 1, K + 7].Interior.Color :=  clGreen;
showmessge(IntToStr(clGreen) + " " + IntToStr(XLApp.ActiveSheet.Cells.Item[i + 1, K + 7].Interior.Color));
// Т.е. задаю стандартый цвет.


то все совпадает.


 
ЮЮ ©   (2007-04-20 08:57) [4]

Странно но вы правы...

В чем? У меня было два предположения.
1) clGren не устанавливается, устанавлиыается какой-то близкий к нему.
 Возьми его в качестве clGren
2) clGren затирается по ходу делв другим цветом, хотя clGreen - нет.
 При затирании "анализируется" цвет, причем "коряво", т.е. сравнивается с clGren.


 
Neket   (2007-04-20 09:07) [5]

Все вроде разобрался.
Пришлось после установки в ClGren запоминать XLApp.ActiveSheet.Cells.Item[i + 1, K + 7].Interior.Color отдельно в другую переменную, а потом уже сверяться именно с этой переменной.



Страницы: 1 вся ветка

Текущий архив: 2007.05.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
3-1172298038
denissoft
2007-02-24 09:20
2007.05.13
Как установить связь


15-1175683320
data
2007-04-04 14:42
2007.05.13
нужен человек для доработки сайта


4-1166284681
Max_2006
2006-12-16 18:58
2007.05.13
Добавить ресурс в exe


2-1177291252
Abcdef123
2007-04-23 05:20
2007.05.13
Как организовать поиск по всему проекту на наличие имени таблицы


2-1177049800
allucard
2007-04-20 10:16
2007.05.13
Можно ли перевести прогу в Design-Time