如何根据其他单元格的值获取单元格中的真/假值?

时间:2018-03-16 17:41:29

标签: vba excel-vba excel

我在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

它似乎不起作用。有人可以帮帮我吗?谢谢!

2 个答案:

答案 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
相关问题