不是操作员错误 VBA



Quick Q:

Sub Ex()
Worksheets("ABC").Activate
If Range("B10").Text IsNot "USA" Then
Range("B11").Value = "Domestic"
Else
End If
End Sub

我是 VBA 的新手,还没有发现我在这里做错了什么。 我正在尝试在 B11 中设置值,以便如果 B10 设置为"美国"以外的任何其他值,则中的值必须是"国内"。

奖励问题:理想情况下,如果我选择美国,我希望能够在 B11 中创建列表。如何使用数据验证执行此操作?

IsNot是 VB.Net 而不是VBA运算符。相反,请使用<>(对应于许多其他语言中的!=(:

Sub Ex()
Dim ws As Worksheet
Set ws = Worksheets("ABC")
If ws.Range("B10").Text <> "USA" Then
ws.Range("B11").Value = "Domestic"
End If
End Sub

我做了一些其他更改:我引入了一个工作表变量并使用它来限定Range()(而不是依赖于激活(,然后我删除了虚假Else

最新更新