Mohon di koreksi Mr.Kid, kesalahan disebelah mana dan pembetulannya gimana pada
cekrip berikut.?? Maaf belum begitu bias hehehe..
Private bChange As Boolean, chkGroup1(1 To 5), chkGroup2(6 To 8) As Control
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
TextBox14.Value = ListBox1.List(ListBox1.ListIndex, 2)
TextBox15.Value = ListBox1.List(ListBox1.ListIndex, 5)
End Sub
Private Sub TextBox2_Change()
If TextBox2.Value = "" Or TextBox12.Value = "" Then
TextBox13.Value = ""
Exit Sub
End If
TextBox13.Value = Format(CDbl(TextBox12.Value) * CDbl(TextBox12.Value), "#,##0")
End Sub
Private Sub UserForm_Initialize()
bChange = False
Set chkGroup1(1) = chk1
Set chkGroup1(2) = chk2
Set chkGroup1(3) = chk3
Set chkGroup1(4) = chk4
Set chkGroup1(5) = chk5
Set chkGroup2(6) = chk6
Set chkGroup2(7) = chk7
Set chkGroup2(8) = chk8
With OpnChk.ListBox1
.ColumnCount = 6
.ColumnHeads = True
.ColumnWidths = "30;55;100;70;90"
.RowSource = "List_dbB1"
.MultiSelect = fmMultiSelectSingle
.BoundColumn = 0
End With
End Sub
Private Sub chk1_Change()
ChangeChk 1
End Sub
Private Sub chk2_Change()
ChangeChk 2
End Sub
Private Sub chk3_Change()
ChangeChk 3
End Sub
Private Sub chk4_Change()
ChangeChk 4
End Sub
Private Sub chk5_Change()
ChangeChk 5
End Sub
Private Sub chk6_Change()
ChangeChk 6
End Sub
Private Sub chk7_Change()
ChangeChk 7
End Sub
Private Sub chk8_Change()
ChangeChk 8
End Sub
Private Sub ChangeChk(lIdx As Long)
Dim lChk As Long, bState As Boolean
If bChange Then
Exit Sub
End If
If chkGroup1(lIdx).Value Then
bChange = True
For lChk = 1 To 5
If lChk <> lIdx Then 'selain checkbox yang diubah user
chkGroup1(lChk).Value = False
End If
Next lChk
bChange = False
Else 'kalau mau set agar selalu ada yang di-checked, setidaknya checkbox
setelahnya
If lIdx = 5 Then
lIdx = 0
End If
chkGroup1(lIdx + 1) = True
End If
'di bawah ini untuk grup 2
If chkGroup2(lIdx).Value Then
bChange = True
For lChk = 6 To 8
If lChk <> lIdx Then 'selain checkbox yang diubah user
chkGroup2(lChk).Value = False
End If
Next lChk
bChange = False
Else 'kalau mau set agar selalu ada yang di-checked, setidaknya checkbox
setelahnya
If lIdx = 3 Then
lIdx = 0
End If
chkGroup2(lIdx + 1) = True
End If
End Sub
Sent from Mail for Windows 10
From: 'Mr. Kid' [email protected] [belajar-excel]