Доброе утро, специалисты по экселю. Помогите решить вопрос, решение для которого - я сам найти не смог.
Написал макрос, который действует в двух столбцах - C и E. Этот макрос - окрашивает выделенную ячейку в этих столбцах в зеленый цвет.
Если выделить ячейку в других диапазонах (не столбцах C и E) - то зеленый цвет последней выделенной ячейки целевого столбца - не теряется. Проблема в том, что выделение зеленым цветом теряется - если выделить ячейку из другого целевого столбца (например если из столбца С - перейти в столбец E). Как сохранить выделение зеленым цветом ячейки целевых столбцов - при переходе из одного целевого столбца в другой ? (целевые столбцы - это C и E)
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect([c:c], Target) Is Nothing Then Static previous_selection As String If previous_selection <> "" Then Range(previous_selection).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection = Target.Address End If
If Not Intersect([e:e], Target) Is Nothing Then If previous_selection <> "" Then Range(previous_selection).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection = Target.Address End If End Sub
[/vba]
Доброе утро, специалисты по экселю. Помогите решить вопрос, решение для которого - я сам найти не смог.
Написал макрос, который действует в двух столбцах - C и E. Этот макрос - окрашивает выделенную ячейку в этих столбцах в зеленый цвет.
Если выделить ячейку в других диапазонах (не столбцах C и E) - то зеленый цвет последней выделенной ячейки целевого столбца - не теряется. Проблема в том, что выделение зеленым цветом теряется - если выделить ячейку из другого целевого столбца (например если из столбца С - перейти в столбец E). Как сохранить выделение зеленым цветом ячейки целевых столбцов - при переходе из одного целевого столбца в другой ? (целевые столбцы - это C и E)
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect([c:c], Target) Is Nothing Then Static previous_selection As String If previous_selection <> "" Then Range(previous_selection).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection = Target.Address End If
If Not Intersect([e:e], Target) Is Nothing Then If previous_selection <> "" Then Range(previous_selection).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection = Target.Address End If End Sub
Можно сделать для каждого столбца свою переменную [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect([c:c], Target) Is Nothing Then Static previous_selection As String If previous_selection <> "" Then Range(previous_selection).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection = Target.Address End If
If Not Intersect([e:e], Target) Is Nothing Then Static previous_selection1 As String If previous_selection1 <> "" Then Range(previous_selection1).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection1 = Target.Address End If End Sub
[/vba]
Можно сделать для каждого столбца свою переменную [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect([c:c], Target) Is Nothing Then Static previous_selection As String If previous_selection <> "" Then Range(previous_selection).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection = Target.Address End If
If Not Intersect([e:e], Target) Is Nothing Then Static previous_selection1 As String If previous_selection1 <> "" Then Range(previous_selection1).Interior.ColorIndex = xlColorIndexNone End If Target.Interior.Color = RGB(181, 244, 0) previous_selection1 = Target.Address End If End Sub