1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
Dim Btn() As New Classe1
Sub EvenementBouton(Bouton As MSForms.CommandButton)
MsgBox Bouton.Name
End Sub
Private Sub UserForm_Initialize()
'Dim Obj As Control
Dim I As Integer
Dim A As Integer
With Me
.StartUpPosition = 3
.Width = Application.Width
.Height = Application.Height
.Left = 0
.Top = 0
End With
For I = 1 To 100
ReDim Preserve Btn(1 To I)
Set Btn(I).GroupeBtn = Me.Controls.Add("forms.commandbutton.1")
With Btn(I).GroupeBtn
.Caption = Sheets("feuil1").Range("A" & I)
Select Case Range("E" & I).Value
Case 1
.BackColor = &H80FF80
Case 2
.BackColor = &H8080FF
Case 3
.BackColor = &HFFFF80
Case 4
.BackColor = &H80FFFF
Case Else
.BackColor = &H80FF&
End Select
Select Case I
Case Is < 21
A = 60 * I
.Left = A - 50
.Top = 30
.Width = 50
.Height = 20
Case 21 To 40
A = 60 * (I - 20)
.Left = A - 50
.Top = 60
.Width = 50
.Height = 20
Case 41 To 60
A = 60 * (I - 40)
.Left = A - 50
.Top = 90
.Width = 50
.Height = 20
Case 61 To 80
A = 60 * (I - 60)
.Left = A - 50
.Top = 120
.Width = 50
.Height = 20
Case Is > 80
A = 60 * (I - 80)
.Left = A - 50
.Top = 150
.Width = 50
.Height = 20
End Select
End With
Next I
End Sub |
Partager