此代码可以短一些吗?值从10种情况下的10变为+1,如下所示。对于每个文本框,我都有这80种情况,总共有30个文本框,并且代码太长。再次,我必须重复代码,因为aryText = TextNSt1.Text.Split(“,” c)-直到aryText = TextNSt30.Text.Split(“,” c)-所以您对此进行了30次编码,我不太喜欢,逗号,代码太长。在下列情况下,从案例1到案例10,案例11-20,案例21-30,案例31-40,案例41-50,案例51-60,案例61-70、71-80,代码随+1的变化。 ..
Dim i As Integer
Dim aryText() As String
'SPLIT THE TEXT INTO AN ARRAY'
aryText = TextNSt2.Text.Split(","c)
For i = 0 To UBound(aryText)
Select Case aryText(i)
Case "1"
LbNxSt1.Text = Val(LbNxSt1.Text) + 1
txtS10.Text = Val(txtS10.Text) + 1
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "2"
LbNxSt2.Text = Val(LbNxSt2.Text) + 1
txtS10.Text = Val(txtS10.Text) + 2
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "3"
LbNxSt3.Text = Val(LbNxSt3.Text) + 1
txtS10.Text = Val(txtS10.Text) + 3
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "4"
LbNxSt4.Text = Val(LbNxSt4.Text) + 1
txtS10.Text = Val(txtS10.Text) + 4
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "5"
LbNxSt5.Text = Val(LbNxSt5.Text) + 1
txtS10.Text = Val(txtS10.Text) + 5
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "6"
LbNxSt6.Text = Val(LbNxSt6.Text) + 1
txtS10.Text = Val(txtS10.Text) + 6
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "7"
LbNxSt7.Text = Val(LbNxSt7.Text) + 1
txtS10.Text = Val(txtS10.Text) + 7
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "8"
LbNxSt8.Text = Val(LbNxSt8.Text) + 1
txtS10.Text = Val(txtS10.Text) + 8
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "9"
LbNxSt9.Text = Val(LbNxSt9.Text) + 1
txtS10.Text = Val(txtS10.Text) + 9
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "10"
LbNxSt10.Text = Val(LbNxSt10.Text) + 1
txtS10.Text = Val(txtS10.Text) + 10
txtDrawB1.Text = Val(txtDrawB1.Text) + 1
Case "11"
LbNxSt11.Text = Val(LbNxSt11.Text) + 1
txtS20.Text = Val(txtS20.Text) + 1
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "12"
LbNxSt12.Text = Val(LbNxSt12.Text) + 1
txtS20.Text = Val(txtS20.Text) + 2
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "13"
LbNxSt13.Text = Val(LbNxSt13.Text) + 1
txtS20.Text = Val(txtS20.Text) + 3
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "14"
LbNxSt14.Text = Val(LbNxSt14.Text) + 1
txtS20.Text = Val(txtS20.Text) + 4
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "15"
LbNxSt15.Text = Val(LbNxSt15.Text) + 1
txtS20.Text = Val(txtS20.Text) + 5
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "16"
LbNxSt16.Text = Val(LbNxSt16.Text) + 1
txtS20.Text = Val(txtS20.Text) + 6
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "17"
LbNxSt17.Text = Val(LbNxSt17.Text) + 1
txtS20.Text = Val(txtS20.Text) + 7
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "18"
LbNxSt18.Text = Val(LbNxSt18.Text) + 1
txtS20.Text = Val(txtS20.Text) + 8
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "19"
LbNxSt19.Text = Val(LbNxSt19.Text) + 1
txtS20.Text = Val(txtS20.Text) + 9
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "20"
LbNxSt20.Text = Val(LbNxSt20.Text) + 1
txtS20.Text = Val(txtS20.Text) + 10
txtDrawB2.Text = Val(txtDrawB2.Text) + 1
Case "21"
LbNxSt21.Text = Val(LbNxSt21.Text) + 1
txtS30.Text = Val(txtS30.Text) + 1
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "22"
LbNxSt22.Text = Val(LbNxSt22.Text) + 1
txtS30.Text = Val(txtS30.Text) + 2
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "23"
LbNxSt23.Text = Val(LbNxSt23.Text) + 1
txtS30.Text = Val(txtS30.Text) + 3
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "24"
LbNxSt24.Text = Val(LbNxSt24.Text) + 1
txtS30.Text = Val(txtS30.Text) + 4
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "25"
LbNxSt25.Text = Val(LbNxSt25.Text) + 1
txtS30.Text = Val(txtS30.Text) + 5
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "26"
LbNxSt26.Text = Val(LbNxSt26.Text) + 1
txtS30.Text = Val(txtS30.Text) + 6
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "27"
LbNxSt27.Text = Val(LbNxSt27.Text) + 1
txtS30.Text = Val(txtS30.Text) + 7
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "28"
LbNxSt28.Text = Val(LbNxSt28.Text) + 1
txtS30.Text = Val(txtS30.Text) + 8
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "29"
LbNxSt29.Text = Val(LbNxSt29.Text) + 1
txtS30.Text = Val(txtS30.Text) + 9
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "30"
LbNxSt30.Text = Val(LbNxSt30.Text) + 1
txtS30.Text = Val(txtS30.Text) + 10
txtDrawB3.Text = Val(txtDrawB3.Text) + 1
Case "31"
LbNxSt31.Text = Val(LbNxSt31.Text) + 1
txtS40.Text = Val(txtS40.Text) + 1
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "32"
LbNxSt32.Text = Val(LbNxSt32.Text) + 1
txtS40.Text = Val(txtS40.Text) + 2
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "33"
LbNxSt33.Text = Val(LbNxSt33.Text) + 1
txtS40.Text = Val(txtS40.Text) + 3
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "34"
LbNxSt34.Text = Val(LbNxSt34.Text) + 1
txtS40.Text = Val(txtS40.Text) + 4
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "35"
LbNxSt35.Text = Val(LbNxSt35.Text) + 1
txtS40.Text = Val(txtS40.Text) + 5
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "36"
LbNxSt36.Text = Val(LbNxSt36.Text) + 1
txtS40.Text = Val(txtS40.Text) + 6
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "37"
LbNxSt37.Text = Val(LbNxSt37.Text) + 1
txtS40.Text = Val(txtS40.Text) + 7
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "38"
LbNxSt38.Text = Val(LbNxSt38.Text) + 1
txtS40.Text = Val(txtS40.Text) + 8
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "39"
LbNxSt39.Text = Val(LbNxSt39.Text) + 1
txtS40.Text = Val(txtS40.Text) + 9
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "40"
LbNxSt40.Text = Val(LbNxSt40.Text) + 1
txtS40.Text = Val(txtS40.Text) + 10
txtDrawB4.Text = Val(txtDrawB4.Text) + 1
Case "41"
LbNxSt41.Text = Val(LbNxSt41.Text) + 1
txtS50.Text = Val(txtS50.Text) + 1
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "42"
LbNxSt42.Text = Val(LbNxSt42.Text) + 1
txtS50.Text = Val(txtS50.Text) + 2
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "43"
LbNxSt43.Text = Val(LbNxSt43.Text) + 1
txtS50.Text = Val(txtS50.Text) + 3
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "44"
LbNxSt44.Text = Val(LbNxSt44.Text) + 1
txtS50.Text = Val(txtS50.Text) + 4
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "45"
LbNxSt45.Text = Val(LbNxSt45.Text) + 1
txtS50.Text = Val(txtS50.Text) + 5
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "46"
LbNxSt46.Text = Val(LbNxSt46.Text) + 1
txtS50.Text = Val(txtS50.Text) + 6
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "47"
LbNxSt47.Text = Val(LbNxSt47.Text) + 1
txtS50.Text = Val(txtS50.Text) + 7
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "48"
LbNxSt48.Text = Val(LbNxSt48.Text) + 1
txtS50.Text = Val(txtS50.Text) + 8
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "49"
LbNxSt49.Text = Val(LbNxSt49.Text) + 1
txtS50.Text = Val(txtS50.Text) + 9
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
Case "50"
LbNxSt50.Text = Val(LbNxSt50.Text) + 1
txtS50.Text = Val(txtS50.Text) + 10
txtDrawB5.Text = Val(txtDrawB5.Text) + 1
答案 0 :(得分:2)
如果您可以算出“数字”和控件之间的关系,则可以像下面这样获得控件:
For ary = 1 To 30
Dim aryText = Me.Controls("TextNSt" & ary).Text.Split({","c})
For i = 0 To aryText.Length - 1
Dim s = aryText(i)
Dim n = CInt(s)
Dim LbNxStNum = n Mod 10
If LbNxStNum = 0 Then LbNxStNum = 10
Dim LbNxSt = Me.Controls("LbNxSt" & LbNxStNum)
LbNxSt.Text = (CInt(LbNxSt.Text) + 1).ToString()
Dim txtSNum = (Math.Floor(n / 10) + 1) * 10
Dim txtS = Me.Controls("txtS" & txtSNum)
txtS.Text = (CInt(txtS.Text) + LbNxStNum).ToString()
Dim txtDrawBNum = Math.Ceiling(n / 10)
Dim txtDrawB = Me.Controls("txtDrawB" & txtDrawBNum)
txtDrawB.Text = (CInt(txtDrawB.Text) + 1).ToString()
Next
Next
我那里可能有一对一的错误,因此您可能需要进行调整。
如果Me
不是容器,请将其更改为使用适当的面板/任何容器。