Формат - Условное форматирование
Применить к диапазону
$B$1:$B$9
Правила форматирования
=СЧЁТЕСЛИ($B$1:$B$9;ИСТИНА)>2
И красную заливку
Это позволит отслеживать количество галок. Можно даже несколько раз поставить условное форматирование с разным цветом для разных чисел (или использовать градиент)
Или другой костыль, который даст поставить галку, но не учтёт её, если до этого есть 2 или более установленных
D1:F9ИСТИНА =СЧЁТЗ(filter($D$1:$D1;$D$1:$D1=ИСТИНА))<=2 =И(D1;E1)
ЛОЖЬ =СЧЁТЗ(filter($D$1:$D2;$D$1:$D2=ИСТИНА))<=2 =И(D2;E2)
ИСТИНА =СЧЁТЗ(filter($D$1:$D3;$D$1:$D3=ИСТИНА))<=2 =И(D3;E3)
ЛОЖЬ =СЧЁТЗ(filter($D$1:$D4;$D$1:$D4=ИСТИНА))<=2 =И(D4;E4)
ИСТИНА =СЧЁТЗ(filter($D$1:$D5;$D$1:$D5=ИСТИНА))<=2 =И(D5;E5)
ИСТИНА =СЧЁТЗ(filter($D$1:$D6;$D$1:$D6=ИСТИНА))<=2 =И(D6;E6)
ИСТИНА =СЧЁТЗ(filter($D$1:$D7;$D$1:$D7=ИСТИНА))<=2 =И(D7;E7)
ИСТИНА =СЧЁТЗ(filter($D$1:$D8;$D$1:$D8=ИСТИНА))<=2 =И(D8;E8)
ИСТИНА =СЧЁТЗ(filter($D$1:$D9;$D$1:$D9=ИСТИНА))<=2 =И(D9;E9)
Третий вариант - отслеживать событие
onEdit(event) и разруливать всё скриптом