2017-04-25 6 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を使用して、変更内容を絞り込みます。あなたはA10にセルA1でのみ興味があるなら例えば:

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 

ターゲットは、影響を受けたセルの範囲です。もちろん、ユーザは一度に複数のセルに影響を及ぼすことができる。オートフィルでは、Target.Rows.Count> 1のようなロジックを追加する必要があるかもしれませんが、あなたはそのアイデアを得るでしょう。

+0

ありがとうございました!!! – Emily

関連する問題