这是一个来自Visual Basic程序的代码,我想知道是否有方法来简化它?有人可以帮我简化我的代码段吗?
它需要字符串的数量,并说,如果你等于这个数字,然后显示这封信和这封面。
有没有更简单的方法来做到这一点,所以我不必一遍又一遍地重复代码?
If UBound(Variables.Words) = "0" Then
Round1.Letter6.Show()
Round1.Cover6.Show()
ElseIf UBound(Variables.Words) = "1" Then
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
ElseIf UBound(Variables.Words) = "2" Then
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
ElseIf UBound(Variables.Words) = "3" Then
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
ElseIf UBound(Variables.Words) = "4" Then
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
ElseIf UBound(Variables.Words) = "5" Then
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
Round1.Letter9.Show()
Round1.Cover9.Show()
ElseIf UBound(Variables.Words) = "6" Then
Round1.Letter3.Show()
Round1.Cover3.Show()
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
Round1.Letter9.Show()
Round1.Cover9.Show()
ElseIf UBound(Variables.Words) = "7" Then
Round1.Letter3.Show()
Round1.Cover3.Show()
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
Round1.Letter9.Show()
Round1.Cover9.Show()
Round1.Letter10.Show()
Round1.Cover10.Show()
ElseIf UBound(Variables.Words) = "8" Then
Round1.Letter2.Show()
Round1.Cover2.Show()
Round1.Letter3.Show()
Round1.Cover3.Show()
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
Round1.Letter9.Show()
Round1.Cover9.Show()
Round1.Letter10.Show()
Round1.Cover10.Show()
ElseIf UBound(Variables.Words) = "9" Then
Round1.Letter2.Show()
Round1.Cover2.Show()
Round1.Letter3.Show()
Round1.Cover3.Show()
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
Round1.Letter9.Show()
Round1.Cover9.Show()
Round1.Letter10.Show()
Round1.Cover10.Show()
Round1.Letter11.Show()
Round1.Cover11.Show()
ElseIf UBound(Variables.Words) = "10" Then
Round1.Letter1.Show()
Round1.Cover1.Show()
Round1.Letter2.Show()
Round1.Cover2.Show()
Round1.Letter3.Show()
Round1.Cover3.Show()
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
Round1.Letter9.Show()
Round1.Cover9.Show()
Round1.Letter10.Show()
Round1.Cover10.Show()
Round1.Letter11.Show()
Round1.Cover11.Show()
ElseIf UBound(Variables.Words) = "11" Then
Round1.Letter1.Show()
Round1.Cover1.Show()
Round1.Letter2.Show()
Round1.Cover2.Show()
Round1.Letter3.Show()
Round1.Cover3.Show()
Round1.Letter4.Show()
Round1.Cover4.Show()
Round1.Letter5.Show()
Round1.Cover5.Show()
Round1.Letter6.Show()
Round1.Cover6.Show()
Round1.Letter7.Show()
Round1.Cover7.Show()
Round1.Letter8.Show()
Round1.Cover8.Show()
Round1.Letter9.Show()
Round1.Cover9.Show()
Round1.Letter10.Show()
Round1.Cover10.Show()
Round1.Letter11.Show()
Round1.Cover11.Show()
Round1.Letter12.Show()
Round1.Cover12.Show()
End If
任何帮助非常感谢!
谢谢,丹。
编辑** 我不是新的,但我只知道基本的功能。对不起很难,但你能告诉我完整的例子,我需要做什么。
再次感谢。
可以简化它,它使用'开关... case',而不是'如果.... else' – Iqbal
不,他不可阻挡。 @ Searle95:如果**> = **,则显示...这样,每个if-part中只有两个语句,而不是2,4,6,8 ... – deviantfan
为什么他可以't @deviantfan?看它总是检查'='的代码如何设置范围比较'> ='?因为在代码中它开始从'0'到'11'进行检查并检查每个数字。你如何设置'> ='? – Iqbal