В общем задача следующая. Есть кнопка. При нажатии на кнопку меняется цвет ячейки А1 на серый. Если еще раз нажать на кнопку, то меняется цвет ячейки А2 на серый, а А1 в исходный - на белый. Если еще раз нажать, то А3 на серый, А2 на белый и тд. Лучше вместо "на белый" применять "на исходный".Прикрепляю файл с диапазоном ячеек. Подскажите, пожалуйста решение.
Или другой вариант: для диапазона ячеек (объединенных) при выделении производится заливка в серый цвет. Нажал стрелку "вниз" залилась нижняя ячейка, "в верх" верхняя, а нижняя окрасилась в исходный цвет. Вот такой код для заливки нашел:
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Target.Interior.ColorIndex = 5
End Sub
Заливка синим. Но при выделении любой другой ячейки цвет должен поменяться на исходный. Как это сделать помогите?
Подскажите как в моем коде задать диапазон ячеек? У меня не получается.
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static CurrentCell As Range
If Not CurrentCell Is Nothing Then
CurrentCell.Interior.ColorIndex = 15
CurrentCell.Font.ColorIndex = 1
End If
Set CurrentCell = Target
If CurrentCell Is Target Then
Target.Interior.ColorIndex = 55
Target.Font.ColorIndex = 6
End If
End Sub
этот код выполняется по определенному событию листа. Можно в какой нибудь ячейке устанавливать какой нибудь флаг (вкл/выкл, 1/0, и т.п.) и проверять содержимое ячейки перед выполнением кода
Нет, поспешил с выводом. Код не работает с объединенными ячейками. Подскажите решение для объединенных ячеек. Как правильно записать диапазон? Тут только изменить диапазон, но я не знаю синтаксис.
А как, к примеру, указать диапазон через один столбец. Т.е. чтобы столбец B игнорировался? А столбец А и С, и D одновременно выделялись цветом, можно так сделать?
Напишу по-другому. Есть ячейки A1, B1, C1, D1. Ячейки C1 и D1 объединены. Запускаем код с помощью "вкл" и выделяем любую из ячеек: A1 или объединенные C1,D1. При этом все три ячейки выделяются цветом, а ячейка B1 игнорируется.