建議你使用Worksheet_BeforeDoubleClick
方法通過將雙來跟蹤「突出」細胞然後單擊隱藏表單上的單元格引用在事件處理程序中使用條件格式或顯式檢查來根據隱藏工作表上的值突出顯示相關單元格(或「單元格」,如果您允許選擇多行上的單個單元格)。如果您選擇使用條件格式設置,則無論何時「雙擊」新單元格,引用都將在隱藏表格上更新,條件格式將自動重新計算。給定行上只有一個單元格將永遠保持「突出顯示」狀態。
或者,您也可以通過沿線的調整您雙擊事件處理代碼做明確如下:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If (Not (IsEmpty(Worksheets("Sheet2").Cells(1, 1).Value))) Then
ActiveSheet.Range(Worksheets("Sheet2").Cells(1, 1).Value).Interior.ColorIndex = 0
End If
Worksheets("Sheet2").Cells(1, 1).Value = Target.Address
ActiveSheet.Range(Worksheets("Sheet2").Cells(1, 1).Value).Interior.ColorIndex = 3
End Sub
這種方式,你也可以檢查在加載紙張任何突出顯示單元格並在適當的情況下重置它們(假設允許用戶保存更改)。
爲了突出在任何給定的行只有一個單元格(但允許多行有一個單一的高亮單元格),你可以使用下面的(這也將切換亮點已經突出顯示單元):
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If (Not (IsEmpty(Worksheets("Sheet2").Cells(Target.Row, 1).Value))) Then
ActiveSheet.Range(Worksheets("Sheet2").Cells(Target.Row, 1).Value).Interior.ColorIndex = 0
If (Worksheets("Sheet2").Cells(Target.Row, 1).Value = Target.Address) Then
Worksheets("Sheet2").Cells(Target.Row, 1).Value = ""
Target.Interior.ColorIndex = 0
Else
Worksheets("Sheet2").Cells(Target.Row, 1).Value = Target.Address
Target.Interior.ColorIndex = 3
End If
Else
Worksheets("Sheet2").Cells(Target.Row, 1).Value = Target.Address
Target.Interior.ColorIndex = 3
End If
Cancel = True
End Sub
非常感謝,現在的工作:) –
很高興聽到@Mohammad Mbydeen。也許你可以對它表示感謝:) – VirtualMichael