Excel公式设置单元格值
我在Excel电子表格中有两列,我想要互斥。 例如B1公式:IF(A1包含“是”,然后B1设置为“ – ”)并且A1公式:IF(B1包含“是”,则A1设置为“ – ”)
基本上这应该意味着当一个单元格更改为“是”时,旁边的另一个单元格会自动更改为“ – ”
当我尝试在Excel公式生成器中这样做时,它说我创build了一个循环公式。 有谁知道我能做些什么来做这个工作?
谢谢
怎么样这样的事情:
' On cell A1 =IF(B1="Yes","-","Yes") ' On cell B1 =IF(A1="Yes","-","Yes")
不足之处是,在A1被赋予“是”或“ – ”的值之后,它不再具有作为其值的function。 这可能不是一个问题 – 只需按照需要将B1和A1一起留给B1(B1会更新,所以你不需要更新它)
不完全是你的要求,但希望有一天会帮助别人!
这只能在VBA中实现。 将以下代码复制到工作表的模块中(例如Sheet1
):
私人mBlnIsRunning为布尔值 私人小组Worksheet_Change(BYVAL目标作为范围) 如果Application.Intersect(Target,Me.Range(“A1:B1”))_ 没有,然后退出小组 “防止无尽的循环 如果mBlnIsRunning Then Exit Sub mBlnIsRunning = True 如果Target.Address(False,False)=“A1”那么 Me.Range(“B1”)=负(Target.Value) 其他 Me.Range(“A1”)=负(Target.Value) 万一 mBlnIsRunning = False 结束小组 私有函数否定(VarValue作为变体)作为变种 '根据你的需要改变这个function 如果varValue =“是”那么 Negative =“ - ” ElseIf varValue =“ - ”然后 否定=“是” 其他 否定=“请input是或 - !” 万一 结束function