Я просто хочу, чтобы выбранный диапазон был желтым и возвращался к бесцветному, когда он был отменен. Код выглядит следующим образом:Выделить текущий выделение желтым
Option Explicit
Public previouscell As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Selection.Interior.Color = vbYellow
previouscell.Interior.ColorIndex = xlNone
Set previouscell = Selection
End Sub
Проблема заключается в настройке предыдущей ячейки в первую очередь. Я попытался поместить его в Worksheet_Activate(), но он не сработает, как только я открою книгу (только когда я сменил лист, после этого он будет работать отлично).
Поэтому я попытался объявить его публичным в ThisWorkbook.Workbook_open, а также:
Option Explicit
Public previouscell As Range
Private Sub Workbook_Open()
Set previouscell = ActiveCell
ActiveCell.Interior.Color = vbYellow
End Sub
Но он не признает переменную previouscell то, потому что я считаю, что это не передается от ThisWorkbook (я закрыть и снова открыть книгу перед испытанием). Кто-нибудь знает, что мне нужно изменить для этой простой задачи?
Где вы разместите код? Не помещайте его в свой модуль. Поместите его в лист, где вы хотите, чтобы он работал. – findwindow