VBA验证组合框值

时间:2019-01-17 17:01:05

标签: excel vba

我在Excel中有一个使用组合框的模板,用户可以在其中使用列表中的分析进行填充。有很多选择,用户必须选择正确的选择,否则将填充错误的结果。我认为最好添加一些错误处理,以便用户可以在填充所有框并运行结果之前更改任何不正确的选择。

所以我希望我能够找到一种符合以下要求的代码:

IF Combobox1.Value NOT LIKE "Europe" THEN

MSGBOX 'Message Inserted Here'
EXIT SUB

ELSE 

CONTINUE WITH MACRO.....

,可以对模板中需要填充的所有组合框重复此操作:

IF Combobox2.Value NOT LIKE "Canada" THEN

MSGBOX 'Message Inserted Here'
EXIT SUB

ELSE 

CONTINUE WITH MACRO.....

我没有插入真实代码,因为我不确定VBA中是否存在该代码,我只是在这里借鉴我的SQL经验。

预先感谢

2 个答案:

答案 0 :(得分:0)

尝试类似这样的方法。如果将代码放在工作表中,则不必完全限定参考。但是,如果将代码放在模块中,则引用必须完全合格。最好的做法是将代码放入模块中。

data %>% mutate(
     r_j2 = coalesce(lag(r_j - cumsum(s_j)), r_j)
     )
# A tibble: 8 x 4
     LM   s_j   r_j  r_j2
  <dbl> <dbl> <dbl> <dbl>
1   100     2    25    25
2   300     2    25    23
3   400     2    25    21
4   500     1    25    19
5   600     2    25    18
6   700     2    25    16
7   800     1    25    14
8  1300     1    25    13

答案 1 :(得分:0)

非常感谢,在您的帮助下,我设法使其正常工作:

Dim MsgBoxResult As Long

If InStr(1, Combobox.Column(1), "Europe") = 0 Then

MsgBoxResult = MsgBox("The following analysis does not match the region is this correct?", vbYesNo + vbQuestion)

    If MsgBoxResult = vbNo Then
        End

    Else

    End If

End If