我在A1中有一个下拉列表,其中包含“Y”和“N”。我想在单元格B1中编写一个代码,如果A1为“Y”则值为“True”,如果A1为“N”则为“False”。
Sub YCheck()
Dim CellCheck As Boolean
Set Worksheets("Sheet1").Range("B1").Value = CellCheck
If Worksheets("Sheet1").Range("A1").Value = Y Then
CellCheck = True
ElseIf Worksheets("Sheet1").Range("A1").Value = N Then
CellCheck = False
End If
End Sub
它似乎不起作用。有人可以帮帮我吗?谢谢!
答案 0 :(得分:2)
对于初学者,Y和N应该在它们周围加上引号。我假设他们并不打算成为未定义的变量......你设置B1的行应该在结尾,而不是开始,你不应该使用Set
时您正在处理值,Set
仅用于Object
类型变量。
Sub YCheck()
Dim CellCheck As Boolean
If Worksheets("Sheet1").Range("A1").Value = "Y" Then CellCheck = True
Worksheets("Sheet1").Range("B1").Value = CellCheck
End Sub
答案 1 :(得分:2)
尝试,
Sub YCheck()
with Worksheets("Sheet1")
.Range("B1").Value = cbool(ucase(.Range("A1").Value) = "Y")
end with
End Sub