Excel如果任何单元格为Y,则所有其他单元格均为N
我需要一些关于excel公式的建议。 我有6个单元格(A1到A6)-如果其中任何一个是“Y”,那么我希望所有其他单元格自动填充为“N”。 有办法做到这一点吗?试试下面的代码Excel如果任何单元格为Y,则所有其他单元格均为N,excel,excel-formula,Excel,Excel Formula,我需要一些关于excel公式的建议。 我有6个单元格(A1到A6)-如果其中任何一个是“Y”,那么我希望所有其他单元格自动填充为“N”。 有办法做到这一点吗?试试下面的代码 Private Sub Worksheet_Change(ByVal Target As Range) Dim rng As Range Set rng = Range("A1:A6") 'set rng as A1:A6 If Not Intersect(Target, Target.Work
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Set rng = Range("A1:A6") 'set rng as A1:A6
If Not Intersect(Target, Target.Worksheet.Range("A1:A6")) Is Nothing Then
Application.EnableEvents = False
If UCase(Target) = "Y" Then 'check if entered value is Y
rng.Value = "N" 'make cells N
Target = "Y"
End If
Application.EnableEvents = True
End If
End Sub
将VBA代码插入Excel工作簿
范围A1:A6中的值,您应该会得到所需的结果
要了解如何在工作簿中输入此代码,请参见。我尝试了=IF(或(H2=“Y”、J2=“Y”、K2=“Y”、L2=“Y”、M2=“Y”)、“N”和“)只是希望有一种更简单/更好的方法。使用公式只能更改公式所在单元格的值。您不能使用公式更改其他单元格的值,您必须使用VBA。我理解这一点,但我希望有一些公式可以轻松地在所有单元格中重复使用。您对VBA解决方案感兴趣吗?Mrig,是的,我可以尝试,但我以前从未使用过VBA。