2017-03-09 6 views
0

でVBAの変数に配列して、私は配列を持っている:ストア各数値パワーポイント

For iCtrl = LBound(chkboxes) To UBound(chkboxes) 
    PriorityList = Array(chkboxes(iCtrl).Tag) 
Next 

これは、ユーザーフォームに保存されているチェックボックスのタグのプロパティを調べます。基本的には、これから、チェックされているすべてのチェックボックスのタグプロパティ内にテキストを格納することができます。 (これらは1から16までの数字です)

私がこれらの数値で行う必要があるのは、各数値を変数に格納することです。一度に3つのチェックボックスしかチェックできないので、これらの変数はvar1、var2、var3です。最も低い数値はvar1として格納され、最も高い数値はvar3に格納され、中間の数値はvar2に格納されます。

私はこのための簡単な解決策があると仮定しますが、私は脳を荒らしていて運がなかったのです。私はプログラミングの初心者ですので、それはそれとは関係があります:)ありがとう!

答えて

0

はこれを試してみてください:

Sub GetLowestChecked3() 
    Dim var1 As Long, var2 As Long, var3 As Long, t As Long 
    var1 = 999: var2 = 999: var3 = 999 
    For iCtrl = LBound(chkboxes) To UBound(chkboxes) 
     If chkboxes(iCtrl).value = True Then 
      t = CLng(chkboxes(iCtrl).Tag) 
      If var1 > t Then 
       var3 = var2 
       var2 = var1 
       var1 = t 
      ElseIf var2 > t Then 
       var3 = var2 
       var2 = t 
      ElseIf var3 > t Then 
       var3 = t 
      End If 
     End If 
    Next 
End Sub 
+0

私がまさに必要。ありがとうございました!! – hunter21188