VB中,select case 怎么做这题?超级难!!!!!!!!!!!!一定要用select case做!
NSW 1000—1999 2000—2599 2619—2898 2921—2999
ACT 0200—0299 2600—2618 2900—2920
VIC 3000—3999 8000—8999
QLD 4000—4999 9000—9999
SA 5000—5799 5800—5999
WA 6000—6797 6800—6999
TAS 7000—7799 7800—7999
NT 0800—0899 0900—0999
例外情况:
0872 SA 或者WA (string2显示不明确邮编)
2540 JBT
2620 ACT
2611,3500 ,3585 , 3586 , 3644 , 3644 , 3707 NSW
如果所输入邮编即不再表内,也不再例外内,string2 显示无效邮编。
例外情况中:只有0872 string2才显示不明确邮编,其余string2显示例外中的对应地区邮编,例如:3500,显示NSW,而非上表中的VIC 展开
Private Sub Command1_Click()
a = Text1.Text
b = Text2.Text
a = Val(a)
Select Case a '这个编程只要把特殊的写在前面就可以了,因为就算有两个满足条件也只执行第一个,这下明白了吧!其实很简单的!
Case 872
Text2 = "不明确邮编"
Case 2540
Text2 = "jbt"
Case 2620
Text2 = "act"
Case 2611, 3500, 3585, 3586, 3644, 3644, 3707
Text2 = "nsw"
Case 200 To 299
Text2 = "act"
Case 800 To 999
Text2 = "nt"
Case 1000 To 2599
Text2 = "nsw"
Case 2600 To 2618
Text2 = "act"
Case 2619 To 2898
Text2 = "nsw"
Case 2900 To 2920
Text2 = "act"
Case 2921 To 2999
Text2 = "nsw"
Case 3000 To 3999
Text2 = "vic"
Case 4000 To 4999
Text2 = "qld"
Case 5000 To 5999
Text2 = "sa"
Case 6000 To 6797
Text2 = "wa"
Case 6800 To 6999
Text2 = "wa"
Case 7000 To 7999
Text2 = "tas"
Case 8000 To 8999
Text2 = "vic"
Case 9000 To 9999
Text2 = "qld"
Case Else
Text2 = "不明确邮编"
End Select
End Sub
Switch 函数
计算一组表达式列表的值,然后返回与表达式列表中最先为 True 的表达式所相关的 Variant 数值或表达式。
语法
Switch(expr-1, value-1[, expr-2, value-2 _ [, expr-n,value-n]])
Switch 函数的语法具有以下几个部分:
部分 描述
expr 必要参数。要加以计算的 Variant 表达式。
value 必要参数。如果相关的表达式为 True,则返回此部分的数值或表达式。
说明
Switch 函数的参数列表由多对表达式和数值组成。表达式是由左至右加以计算的,而数值则会在第一个相关的表达式为 True 时返回。如果其中有部分不成对,则会产生一个运行时错误。如果 expr-1 为 True 则 Switch 返回 value-1,如果 expr-1 为 False,但 expr-2 为 True,则 Switch 返回 value-2,以此类推。
Switch 会返回一个 Null值,如果:
没有一个表达式为 True。
第一个为 True 的表达式,其相对应的值为 Null。
虽然它只返回其中的一个值,但是 Switch 会计算所有的表达式。因此应该注意到所产生的副作用。例如,只要其中一个表达式导致被零除错误,就会发生错误。
Switch 函数示例
本示例使用 Switch 函数返回和城市名称匹配的语言名称。
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "London", "English", CityName _
= "Rome", "Italian", CityName = "Paris", "French")
End Function