|
>1行1行に対して、カラムAにチェックボックスを割り当てて(関連付けて)、
>チェックが入った場合に、その行の色を変えたいと思っています。
>新しく行が増えた場合にも新たにチェックボックスを作成し、
>割り当てたいと考えています。
チェックボックスという形にこだわりますか。
もし形はどうでもいいというのであれば、右クリックで処理する手もあります。
これなら行が増えても減っても自動で追従します。^d^
===== ThisWorkbookモジュール =====
Private Sub Workbook_SheetBeforeRightClick _
(ByVal Sh As Object, ByVal Target As Range, _
Cancel As Boolean)
Dim myCell As Range
Dim myRange As Range
With Target
'二列以上選択していたら
If .Columns.Count >= 2 Then Exit Sub
'A列以外だったら
If .Column <> 1 Then Exit Sub
'処理対象範囲をシートの使用範囲との交わり部分とする
Set myRange = Intersect(.Cells, _
Target.Worksheet.UsedRange.EntireRow.Columns(1))
If myRange Is Nothing Then Exit Sub
For Each myCell In myRange
With myCell
If .Value = "レ" Then
.Value = "-"
.EntireRow.Interior.ColorIndex _
= xlAutomatic
Else
.Value = "レ"
.EntireRow.Interior.ColorIndex = 3
End If
End With
Next
End With
Cancel = True
End Sub
|
|