22.07.2009, 13:03
общий
это ответ
Здравствуйте, MaksimDenisov.
Я сделал с помощью макросов.
Открываем Сервис --> Макрос --> Редактор Visual Basic. В списке Microsoft Excel Object есть текущий лист. Открываем код и помещаем текст процедуры из приложения. С цветом и прочим можно поэксперементировать, создав новый макрос на запись и проделав все операции для образца, а потом просмотрев код макроса.
Проверил работу в Excel2000.
С уважением.
Приложение:
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Source As Range)
'работаем с выделеным диапазоном ( одна или больше ячеек )
With Source.Interior
'сначала проверяем на возможность преобразования в число
If IsNumeric(Source.Text) Then
'если преобразование возможно, проверяем условия
Select Case CLng(Source.Text)
'для первого условия
Case 1
'здесь можно задавать и другие параметры форматирования ячейки, я ограничился цветом
.ColorIndex = 36
Case 2
.ColorIndex = 6
Case 3
.ColorIndex = 35
Case 4
.ColorIndex = 4
Case 5
.ColorIndex = 34
Case 6
.ColorIndex = 8
Case Else
.ColorIndex = 2
End Select
Else
.ColorIndex = 2
End If
End With
End Sub