最終,我試圖在焦點遠離工作簿時突出顯示單元格。如何在工作表和書籍之間發送變量?
這裏是我的代碼(在ThisWorkbook
):
Public s As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
s = Selection
End Sub
Private Sub Workbook_Deactivate()
s.Interior.ColorIndex = xlColorIndexNone
s.Interior.Color = RGB(0, 0, 0)
End Sub
Private Sub Workbook_Activate()
s.Interior.ColorIndex = xlColorIndexNone
s.Interior.Color = RGB(100, 204, 204) ' Blue
End Sub
但我發現了遇到第一s.Interior.ColorIndex
錯誤:
Object variable or With block variable not set
下面是一些我的環境圖像:
's = Selection' ==>'Set s = Selection',雖然'Set s = Target'也可以。 –
@JohnColeman我嘗試了'Set s = Selection'並且得到了'運行時錯誤'91':對象變量或With block variable not set'與以前一樣。 –
*這些模塊在哪裏?我複製了你的代碼:1)標準代碼模塊中的公共'''聲明,2)工作表模塊中的'selection_change',以及3)工作簿模塊中的'activate' /'deactivate' - 以及它們全部爲我工作(使用'Set'後)。我的猜測是你沒有使用Option Explicit。公共變量應該在標準代碼模塊中聲明。如果沒有,變量's'在'workbook'模塊中將不可見。 –