2012-01-17 2 views
1

Использование FlexGridКак найти цвет фона ячейки

Я хочу, чтобы проверить цвет фона конкретной ячейки ...

код

if flexgrid1.TextMatrix(1, 2).CellBackColor = vbCyan then 
msgbox vbcyan 
else 
msgbox vbwhite 
End if 

Приведенный выше код показывает ошибку как " Invalid Qualifier»

Другой путь ....

if flexgrid1.row = 1 and flexgrid1.col = 2 and .CellBackColor = vbCyan then 
    msgbox vbcyan 
    else 
    msgbox vbwhite 
    End if 

Приведенный выше код не отображается окно сообщения

Как решить эту проблему ...

Что неправильно в моем коде.

+0

Для TextMatrix нет свойства CellBackColor. – jac

ответ

2

.CellBackColor получает/устанавливает цвет для текущего .Row/.Col, поэтому, прежде чем спрашивать, вы должны установить .Row/.Col на тот, который вы смотрите:

With flexgrid1 
    .Row = 1 
    .Col = 2 
    If .CellBackColor = vbCyan Then 
     msgbox vbCyan 
    Else 
     msgbox vbWhite 
    End If 
End With 
0

Ваши заявления MsgBox кошерным ? msgbox принимает строку в качестве аргумента.

msgbox "colour is Cyan" 
+0

msgbox vbCyan покажет окно сообщения с 16776960 (числовое значение константы vbCyan). –

+0

Если это то, чего вы хотите, зачем беспокоиться о том, что делать с оператором if. msgbox .CellBackColor – ChrisPadgham

Смежные вопросы