Изменить фон MS Excel 2003 - PullRequest
1 голос
/ 03 июня 2011

Я - кодер на C #, и на данный момент это лучший способ выразить то, что я хотел. Я думаю сделать этот код ниже на листе Microsoft Excel 2003. Может ли это быть возможно?

1-й шаг

if(CellA1 == "Sunday" || CellA1== "Saturday"){
    // code to set background color of 
    // CellB1 to CellF1 to background color red
}

2-й шаг

// Execute this process from CellA1 until CellA10    
for(CellA1 up to CellA10){
    // do first step
}

Итак, код, который я хотел сделать на MSExcel 2003, выглядел бы так:

for(int CellCount = 1;CellCount<10;CellCount++){

    if("CellA"+CellCount.ToString() == "Sunday" || 
       "CellA"+CellCount.ToString() == "Sunday"){

        // set ["CellB"+CellCount.ToString()].CellBackgroundColor="#FF0000";
        // set ["CellC"+CellCount.ToString()].CellBackgroundColor="#FF0000";
        // set ["CellD"+CellCount.ToString()].CellBackgroundColor="#FF0000";
        // set ["CellE"+CellCount.ToString()].CellBackgroundColor="#FF0000";
        // set ["CellF"+CellCount.ToString()].CellBackgroundColor="#FF0000";
    }

}

Я не уверен, возможно ли это. Или, если есть другие способы, эквивалентные тому, что я хотел сделать, не могли бы вы мне помочь. :) Спасибо!

Ответы [ 2 ]

3 голосов
/ 03 июня 2011

Если все, что вы хотите сделать, это изменить цвет ячейки на основе ее значения, просто используйте условное форматирование в Excel, не нужно никакого программирования.

2 голосов
/ 03 июня 2011
Sub backcolor()
Range("a1:a10").Interior.ColorIndex = xlNone
For Each cell In Range("a1:a10")
    If cell.Value = "Sunday" Or cell.Value = "Saturday" Then
        cell.Interior.ColorIndex = 3
    End If
Next cell
End Sub

Список цветов вы можете найти здесь

http://dmcritchie.mvps.org/excel/colors.htm

...