Страница 1 из 1

Цвет ячейки - как условие. EXEL

Добавлено: 21 дек 2005, 10:01
Alex-55
На форуме есть вопросы как закрасить ячейку, а вот решение обратной задачи я не нашел ни в форуме, ни в помощи EXELя. Я новичок в данном деле возможно что-то не досмотрел. Можно ли использовать цвет ячеки как условие, например используя формулы вычислить сумму значений в желтых ячеках и из нее вычесть сумму в синих ячейках?
С уважением Александр.

Добавлено: 21 дек 2005, 11:48
Avsha
Вариант с использованием макроса может быть таким -
объект Interior.ColorIndex "интерьер" вообщем используется...

Код: Выделить всё

Sub Макрос1()
    Dim r1 As Range
    Set r1 = Range("A1:A10")
    
    Dim Summa As Double
    For Each icell In r1
        If icell.Interior.ColorIndex = 36 Then Summa = Summa + icell.Value
    Next

    Range("D5").Value = Summa
    
End Sub
Для определения ColorIndex для определенной ячейки, встаньте на ячейку и выполните макрос ...

Код: Выделить всё

Sub Макрос2()
    MsgBox Selection.Interior.ColorIndex
End Sub

Добавлено: 21 дек 2005, 12:04
Avsha
Или может удобнее будет импользовать пользовательскую функцию -

$D$5=ЦветЯчейки($A$4)
Public Function ЦветЯчейки(Ячейка As Range)
Application.Volatile True
ЦветЯчейки = Ячейка.Interior.ColorIndex
End Function