私は、自動的に新しいチェックボックスを生成し、それにセルをリンクするために、次のコードを使用します。戻りCheckBoxes.LinkedCellアドレスVBA
ActiveSheet.CheckBoxes.Add().LinkedCell = Selection.Address
私は.LinkedCell
セルの背景色を変更する必要のある別のsub
を作成したいです(青)またはチェックされていない(赤)のチェックボックスをオンにします。ワークシートに約200のチェックボックスがあります。
sub
がそのセルの背景色を変更できるように、現在チェック/チェックされていないチェックボックスの.LinkedCell
アドレスを取得/返信する方法はありますか?
たとえば、.LinkedCell
がチェックボックスが最初に配置されたセルであるとします。これは、各チェックボックスの初期状態のようになります。私はこのコードを使用し、今まで
:
と、これはユーザーの確認後の結果だろう/ checboxesのチェックを外しますチェックボックス自体の背景色を変更します。しかし、私はそれを望んでいない、私は.LinkedCell
の色を変更したい。
Sub SetMacro()
Dim cb
For Each cb In ActiveSheet.CheckBoxes
If cb.OnAction = "" Then cb.OnAction = "CheckedUnchecked"
Next cb
End Sub
と
Sub CheckedUnchecked()
With ActiveSheet.Shapes(Application.Caller).DrawingObject
If .Value = 1 Then
.Interior.ColorIndex = 5
Else
.Interior.ColorIndex = 3
End If
End With
End Sub
を、私はあなたが "現在チェック/未チェックチェックボックス" によって何を意味するかわからないんだけど?あなたはイベントをお探しですか? – Comintern
(a) 'TRUE'か' FALSE'かに基づいて条件付きでセルをフォーマットできますか? – YowE3K
(b)CheckBoxのClickイベントにリンクされたコードがありますか?その場合は、CheckBoxの.LinkedCellプロパティを使用し、そのセルの背景色を好きなものに設定するだけです。 – YowE3K