Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Rng As Range Set Rng = Target.Range("a1") Cells.Interior.ColorIndex = 0 '清除所有背景色 Rng.EntireColumn.Interior.ColorIndex = 40 '設(shè)置當(dāng)前列顏色 Rng.EntireRow.Interior.ColorIndex = 36 '設(shè)置當(dāng)前行顏色 End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Dim Rng As Range Set Rng = Target.Range("a1") Cells.Interior.ColorIndex = 0 '清除所有背景色 Rng.EntireColumn.Interior.ColorIndex = 40 '設(shè)置當(dāng)前列顏色 Rng.EntireRow.Interior.ColorIndex = 36 '設(shè)置當(dāng)前行顏色 End Sub
使用了這個代碼后,表中的“復(fù)制”和“拷貝”功能就被禁止了,不知有無辦法可以解決? 可在代碼第二行(清除顏色之前就行)插入一行代碼: If Application.CutCopyMode Then Exit Sub '如果處于選取狀態(tài)則退出程序 代碼:
復(fù)制代碼 代碼如下:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) If Application.CutCopyMode Then Exit Sub '如果處于選取狀態(tài)則退出程序 Dim Rng As Range Set Rng = Target.Range("a1") Cells.Interior.ColorIndex = 0 '清除所有背景色 Rng.EntireColumn.Interior.ColorIndex = 40 '設(shè)置當(dāng)前列顏色 Rng.EntireRow.Interior.ColorIndex = 36 '設(shè)置當(dāng)前行顏色 End Sub