简单 VBA Select Case 语句不起作用,为什么不呢?
Simple VBA Select Case statement not working, Why not?
简单 Select Case 语句未按预期工作。消息应将此显示为落入 "too long" 桶,但它显示为 "too short"
Lenn = 20
Select Case Lenn
Case 7
msg = "You've entered " & Lenn & " digits, this is ok"
Case 11
msg = "You've entered " & Lenn & " digits, is ok"
Case 12
msg = "You've entered " & Lenn & " digits, this is ok"
Case 13
msg = "You've entered " & Lenn & " digits, this is ok"
Case 17
msg = "You've entered " & Lenn & " digits, this is ok"
Case Is < 7
msg = "Hmm…. The number you entered is too short. Can you try again?"
Case Is > 17
msg = "Hmm…. The number you entered is too long. Can you try again?"
Case Is = 8, 9, 10, 14, 15, 16
msg = "Hmm…. The number you entered is not the right length. Can you try again?"
Case Else
msg = "Hmm…. The number you entered is not the right length. Can you try again?"
End Select
如果 Lenn 是字符串,它将输入 case 语句的 "too short" 部分。通过将此添加到代码顶部来尝试在分配它之前将其强制为整数:
Dim Lenn As Integer
简单 Select Case 语句未按预期工作。消息应将此显示为落入 "too long" 桶,但它显示为 "too short"
Lenn = 20
Select Case Lenn
Case 7
msg = "You've entered " & Lenn & " digits, this is ok"
Case 11
msg = "You've entered " & Lenn & " digits, is ok"
Case 12
msg = "You've entered " & Lenn & " digits, this is ok"
Case 13
msg = "You've entered " & Lenn & " digits, this is ok"
Case 17
msg = "You've entered " & Lenn & " digits, this is ok"
Case Is < 7
msg = "Hmm…. The number you entered is too short. Can you try again?"
Case Is > 17
msg = "Hmm…. The number you entered is too long. Can you try again?"
Case Is = 8, 9, 10, 14, 15, 16
msg = "Hmm…. The number you entered is not the right length. Can you try again?"
Case Else
msg = "Hmm…. The number you entered is not the right length. Can you try again?"
End Select
如果 Lenn 是字符串,它将输入 case 语句的 "too short" 部分。通过将此添加到代码顶部来尝试在分配它之前将其强制为整数:
Dim Lenn As Integer