Я не уверен, что заголовок точно описывает мой запрос, поэтому я постараюсь описать его здесь.
У меня есть лист, который отслеживает расходы и доход, и яу меня есть макрос, который я использую, чтобы вставить флажки в выбранные ячейки, связать флажок с этими ячейками и, наконец, применить условие для условного формата, если флажок установлен, и аналогично, если он снова не установлен.
Здесьэто код, который делает это:
Sub:
Sub Insert_Checkbox_Link_Cell()
Dim rngCel, myCells As Range
Dim ChkBx As CheckBox
Dim cBx As Long
Set myCells = Selection
myCells.NumberFormat = ";;;"
Application.ScreenUpdating = False
For Each rngCel In myCells
With rngCel.MergeArea.Cells
If .Resize(1, 1).Address = rngCel.Address Then
Set ChkBx = ActiveSheet.CheckBoxes.Add(.Left, .Top, .Width, .Height)
With ChkBx
.Value = xlOff
.LinkedCell = rngCel.MergeArea.Cells.Address
.Text = ""
.Width = 18
.Top = rngCel.Top + rngCel.Height / 2 - ChkBx.Height / 2
.Left = rngCel.Left + rngCel.Width / 2 - ChkBx.Width / 2
.Select
'Function Call
Selection.OnAction = "Change_Cell_Colour"
End With
End If
End With
Next rngCel
If (Range(ChkBx.LinkedCell) = "True") Then
myCells.Interior.ColorIndex = 43
Else
myCells.Interior.ColorIndex = 48
End If
Application.ScreenUpdating = True
End Sub
Функция:
Function Change_Cell_Colour()
Dim xChk As CheckBox
Dim clickedCheckbox As String
clickedCheckbox = Application.Caller
Set xChk = ActiveSheet.CheckBoxes(clickedCheckbox)
If xChk.Value = 1 Then
ActiveSheet.Range(xChk.LinkedCell).Interior.ColorIndex = 43
Else
ActiveSheet.Range(xChk.LinkedCell).Interior.ColorIndex = 48
End If
End Function
Так как это работаетя выбираю диапазон ячеек, в которых я хочу установить флажки, затем запускаю макрос, и он вставляет флажки, как указано выше.
Теперь я хочу добавить немного больше, и я не уверенесли это возможно.
На изображении ниже я указал доход, а внизу - общая сумма.Итак, когда деньги поступают, флажок проверяется.
Я хотел бы сделать следующее:
Пока флажок установлен UNCHECKED , я не хочу, чтобы значение в ячейке добавлялось к общему количеству внизу.
Если это ПРОВЕРЕНО , то значение в ячейке должно быть добавлено к общему счету внизу.
Изображение 1: Нет флажков
![enter image description here](https://i.stack.imgur.com/RwEj5.png)
Изображение 2: добавлены флажки
![enter image description here](https://i.stack.imgur.com/aQE4K.png)
Изображение 3: установлен один флажок
![enter image description here](https://i.stack.imgur.com/uIDoR.png)
Изображение 4: 2 флажки отмечены
![enter image description here](https://i.stack.imgur.com/aPxwb.png)