Private Sub txtMaChange()
Dim Num As Integer
Randomize
On Error GoTo LoiCT
Num = 9 * Rnd() / 1
MsgBox 99 / Num
Err_: Exit Sub
LoiCT:
If Err <> 11 Then
On Error Resume Next
Else
GoTo Err_
End If
End Sub
Điều đầu tiên khuyên bạn là dòng lệnh
On Error Resume Next
là con dao 2 lưỡi, & chỉ những người mhiều hiểu biết & rõ về nó mới xài
Với mình thì biết rõ đó là lỗi gì mới bước qua nó mà thôi, ví dụ:
PHP:Private Sub txtMaChange() Dim Num As Integer Randomize On Error GoTo LoiCT Num = 9 * Rnd() / 1 MsgBox 99 / Num Err_: Exit Sub LoiCT: If Err <> 11 Then On Error Resume Next Else GoTo Err_ End If End Sub
'. . . . '
If Left(Sheet1.Cells(i, X).Value, a) = Me.txtSearch.Text And Me.txtSearch.Text <> "" Then
MsgBox "Dòng: " & i & Chr(10) & "Côt: " & X, , Sheet1.Cells(i, 1).Value
Me.ListBox1.AddItem Sheet1.Cells(i, 1).Value
For c = 1 To 6
Me.ListBox1.List(ListBox1.ListCount - 1, c) = Sheet1.Cells(i, c + 1).Value
Next c
End If
' . . . . '
Mà nó chỉ hiện 1 tiêu đề cột, do ListBox đang (bị) qui định chỉ là 1 cột; Sửa thành 6 sẽ ra 6 tiêu đề cột.
Muốn hiện số liệu các dòng trong ListBox thì bạn thử kiểm tra bằng hộp thoại MsgBox xem sao, ví dụ:
PHP:'. . . . ' If Left(Sheet1.Cells(i, X).Value, a) = Me.txtSearch.Text And Me.txtSearch.Text <> "" Then MsgBox "Dòng: " & i & Chr(10) & "Côt: " & X, , Sheet1.Cells(i, 1).Value Me.ListBox1.AddItem Sheet1.Cells(i, 1).Value For c = 1 To 6 Me.ListBox1.List(ListBox1.ListCount - 1, c) = Sheet1.Cells(i, c + 1).Value Next c End If ' . . . . '