限制单元格内容单选button样式

我有4个单元格,都可以input一个数字(如下图所示),但我想知道的是如何限制它,使四个单元格中只有一个可以大于“0”。 例如,如果1的单元格是> 0,那么其余的3必须是0.我可以创build它们作为“是/否”validation,但我不知道如何删除“是”选项,如果另一个单元格已经声明“是”

Standard (24 months) per AP | 0 | Advanced (24 months) per AP | 1 | Complete (24 months) per AP | 0 | Complete + (24 months) per AP | 0 | 

您可能想要尝试Worksheet_Change事件macros¹。

 Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("B2:B5")) Is Nothing Then On Error GoTo bm_Safe_Exit Application.EnableEvents = False If Intersect(Target, Range("B2:B5")).Count = 1 Then If Intersect(Target, Range("B2:B5")).Cells(1).Value >= 1 Then Range("B2:B5") = 0 Intersect(Target, Range("B2:B5")).Cells(1) = 1 Else Range("B2:B5") = 0 End If Else Range("B2:B5") = 0 End If End If bm_Safe_Exit: Application.EnableEvents = True End Sub 

ones_zeroes_radio_buttons


¹ 这属于工作表的代码表。 用鼠标右键单击工作表的名称选项卡,然后select查看代码 当VBE打开时,将上面的代码粘贴到标题为Book1 – Sheet1(Code)的代码窗格中。 进行任何调整,然后点击Alt + Q返回工作表。

我目前无法在Excel上testing这个function,但是可以使用Google表格中的数据validation作为自定义公式:

 =COUNTIF($B$1:$B$4,"<>"&0)<=1