1
我想用excel表格中的宏突出顯示當前選中的行與模式(不是顏色,因爲該行上的某些單元格可能已被着色)。 我已經寫了下面的VBA宏,但是,當選中一個新單元格時,它將重置整個工作表的顏色。如果它清除了圖紙上的所有圖案(因爲沒有單元格使用圖案進行格式化),但即使指定僅清除圖案(使用ActiveSheet.Cells.Interior.Pattern = xlPatternNone
),它也會清除顏色和邊框。使用VBA高亮選中的行而不改變Excel中的顏色
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'remove past colors
ActiveSheet.Cells.Interior.Pattern = xlPatternNone
With Me
.Rows(Target.Row).Interior.Pattern = XlPattern.xlPatternChecker
End With
End Sub
你有沒有試過指定font/fill/etc的默認設置?這將允許您清楚地更改所需的特定參數。另外,ActiveSheet.Cells.Interior指向整個工作表。你需要指定你想要工作的範圍。 – Cyril
此外,你可以設置一個條件格式,它可以在Change Event上激活......我的想法是在單元格選擇上,活動行在列中會有一些值1,所以由Change Event應用的條件格式公式將所有行(任意)填充爲淡藍色,但不會更改基本顏色。您的更改事件條件格式化將從刪除條件格式開始,然後應用您想要的activerow。 – Cyril