Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Окрашивание активной ячейки - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Окрашивание активной ячейки
ivanov1974 Дата: Вторник, 07.02.2017, 15:00 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

Уважаемые знатоки Excel. Manyasha написала код, который я немного подкорректировал под свои нужды, но его еще надо немного подправить. Активные ячейки окрашиваются только в столбце С. Проблема в том, что в этом столбце есть окрашенные ячейки и надо, чтобы после того, как ячейка стала не активной, она приобретала свой предыдущий цвет. Если такое возможно, прошу помощи. Не знаю, правильно ли, что создал новую тему.
К сообщению приложен файл: 5559532.xls (32.0 Kb)
 
Ответить
СообщениеУважаемые знатоки Excel. Manyasha написала код, который я немного подкорректировал под свои нужды, но его еще надо немного подправить. Активные ячейки окрашиваются только в столбце С. Проблема в том, что в этом столбце есть окрашенные ячейки и надо, чтобы после того, как ячейка стала не активной, она приобретала свой предыдущий цвет. Если такое возможно, прошу помощи. Не знаю, правильно ли, что создал новую тему.

Автор - ivanov1974
Дата добавления - 07.02.2017 в 15:00
Manyasha Дата: Вторник, 07.02.2017, 16:26 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 902 ±
Замечаний: 0% ±

Excel 2010, 2016
ivanov1974, здравствуйте, так хотите?
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'Если выделено больше 1-й строки, то выходим из макроса
    If Target.Rows.Count > 1 Then Exit Sub
    'Если ячейки не из столбца С не закрашивать, то расскомментировать следующую строчку'
    'If Target.Column > 15 Then Exit Sub
    Static rn_Prev As Range, clr_Prev As Long
    Dim rn As Range
    
    If Not rn_Prev Is Nothing Then
        Range("c" & rn_Prev.Row).Interior.Color = clr_Prev
    End If
    'закрашиваем активную ячейку в столбце С'
    clr_Prev = Range("c" & Target.Row).Interior.Color
    Range("c" & Target.Row).Interior.ColorIndex = 34
    Set rn_Prev = Target
End Sub
[/vba]


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеivanov1974, здравствуйте, так хотите?
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'Если выделено больше 1-й строки, то выходим из макроса
    If Target.Rows.Count > 1 Then Exit Sub
    'Если ячейки не из столбца С не закрашивать, то расскомментировать следующую строчку'
    'If Target.Column > 15 Then Exit Sub
    Static rn_Prev As Range, clr_Prev As Long
    Dim rn As Range
    
    If Not rn_Prev Is Nothing Then
        Range("c" & rn_Prev.Row).Interior.Color = clr_Prev
    End If
    'закрашиваем активную ячейку в столбце С'
    clr_Prev = Range("c" & Target.Row).Interior.Color
    Range("c" & Target.Row).Interior.ColorIndex = 34
    Set rn_Prev = Target
End Sub
[/vba]

Автор - Manyasha
Дата добавления - 07.02.2017 в 16:26
ivanov1974 Дата: Вторник, 07.02.2017, 17:03 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

Manyasha, здравствуйте. Точно так, за исключением одного нюанса. Пример: делаем активной ячейку С1, сохраняем и закрываем файл. При открытии файла вводим данные в ячейки С1, С2, С3 и т.д. При этом ячейка С1 остается закрашенной этим же цветом, что и активная ячейка. Нельзя ли сделать так, чтобы она тоже приобретала первоначальный цвет?
 
Ответить
СообщениеManyasha, здравствуйте. Точно так, за исключением одного нюанса. Пример: делаем активной ячейку С1, сохраняем и закрываем файл. При открытии файла вводим данные в ячейки С1, С2, С3 и т.д. При этом ячейка С1 остается закрашенной этим же цветом, что и активная ячейка. Нельзя ли сделать так, чтобы она тоже приобретала первоначальный цвет?

Автор - ivanov1974
Дата добавления - 07.02.2017 в 17:03
Manyasha Дата: Вторник, 07.02.2017, 17:28 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 902 ±
Замечаний: 0% ±

Excel 2010, 2016
ivanov1974, так?
К сообщению приложен файл: 5559532-1.xls (38.5 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеivanov1974, так?

Автор - Manyasha
Дата добавления - 07.02.2017 в 17:28
ivanov1974 Дата: Вторник, 07.02.2017, 17:48 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

Да, Manyasha, то, что надо. Спасибо огромное.
 
Ответить
СообщениеДа, Manyasha, то, что надо. Спасибо огромное.

Автор - ivanov1974
Дата добавления - 07.02.2017 в 17:48
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2026 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!