2017-04-25 124 views
0

我想知道是否有可能在條件格式中編寫代碼或規則,如果我更改了單元格中的值,該單元格會突出顯示或將顏色更改爲很明顯,我改變了模型中的輸入條件。如何基於相同的單元格更改值/覆蓋條件格式

我有一個模型,我的某些假設是我的輸入。例如,如果他們想要改變增長率,那麼我也有一個覆蓋部分,只需輸入單元格即可。在覆蓋該單元格中的值之後,是否可以讓該單元格改變顏色?

謝謝!當事情已經改變

+0

你可以用它來做。條件格式類似於'= A1 <> 0'或者你的默認值是什麼。或者你可以用vba在worksheet_change事件上做到這一點。 –

+0

@ScottCraner你將如何着手編寫worksheet_change事件?我知道這個基本概要,但是具體的代碼是什麼會改變一個單元格,因爲我改變了單元格中的數字? – Emily

回答

0

使用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,但你明白了。

+0

非常感謝你! – Emily

相關問題