我想知道是否有可能在條件格式中編寫代碼或規則,如果我更改了單元格中的值,該單元格會突出顯示或將顏色更改爲很明顯,我改變了模型中的輸入條件。如何基於相同的單元格更改值/覆蓋條件格式
我有一個模型,我的某些假設是我的輸入。例如,如果他們想要改變增長率,那麼我也有一個覆蓋部分,只需輸入單元格即可。在覆蓋該單元格中的值之後,是否可以讓該單元格改變顏色?
謝謝!當事情已經改變
我想知道是否有可能在條件格式中編寫代碼或規則,如果我更改了單元格中的值,該單元格會突出顯示或將顏色更改爲很明顯,我改變了模型中的輸入條件。如何基於相同的單元格更改值/覆蓋條件格式
我有一個模型,我的某些假設是我的輸入。例如,如果他們想要改變增長率,那麼我也有一個覆蓋部分,只需輸入單元格即可。在覆蓋該單元格中的值之後,是否可以讓該單元格改變顏色?
謝謝!當事情已經改變
使用WorksheetChangeEvent檢測:
Private Sub Worksheet_Change(ByVal Target As Range)
' do stuff
End Sub
把上面的代碼插入工作表對象(雙擊在工作表上的代碼編輯器)。
使用Application.Intersect可以縮小已更改的範圍。例如,如果你只在單元格A1至A10感興趣:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1:A10")) Is Nothing Then
' do stuff
End If
End Sub
然後格式化改變細胞的味道:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1:A10")) Is Nothing Then
With Target.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End Sub
目標是爲受影響的小區範圍內。當然,用戶可以一次影響多於一個的細胞,例如,通過autofilling,所以你可能需要添加一些額外的邏輯,例如,如果Target.Rows.Count> 1,但你明白了。
非常感謝你! – Emily
你可以用它來做。條件格式類似於'= A1 <> 0'或者你的默認值是什麼。或者你可以用vba在worksheet_change事件上做到這一點。 –
@ScottCraner你將如何着手編寫worksheet_change事件?我知道這個基本概要,但是具體的代碼是什麼會改變一個單元格,因爲我改變了單元格中的數字? – Emily