Xem dùm code AutoFilter bị lổi

Liên hệ QC

thanhtam348

Thành viên thường trực
Tham gia
9/3/07
Bài viết
288
Được thích
62
Tôi có đoạn code khi chạy bị lổi ở dòng màu đỏ, xin nhờ các bạn xem sửa dùm. Cám ơn:
Mã:
Private Sub ComboBox1_Click()
Range("f5") = ComboBox1
Set Target = Range("f5")
With Sheet1.Range("b12")
[COLOR=#ff0000].AutoFilter 1, Target[/COLOR]
End With
Unload Me
End Sub
 
Tôi có đoạn code khi chạy bị lổi ở dòng màu đỏ, xin nhờ các bạn xem sửa dùm. Cám ơn:
Mã:
Private Sub ComboBox1_Click()
Range("f5") = ComboBox1
Set Target = Range("f5")
With Sheet1.Range("b12")
[COLOR=#ff0000].AutoFilter 1, Target[/COLOR]
End With
Unload Me
End Sub
Thử bỏ nó vào sự kiện AfterUpdate của combo thử xem.
 
Upvote 0
Tôi có đoạn code khi chạy bị lổi ở dòng màu đỏ, xin nhờ các bạn xem sửa dùm. Cám ơn:
Mã:
Private Sub ComboBox1_Click()
Range("f5") = ComboBox1
Set Target = Range("f5")
With Sheet1.Range("b12")
[COLOR=#ff0000].AutoFilter 1, Target[/COLOR]
End With
Unload Me
End Sub
Tôi đã thử nghiệm thấy bình thường. Bạn mô tả chi tiết hơn về lỗi này xem sao. Hãy thử nhập vào ô B12 một tiêu đề gì đó để có thể lọc chính xác hơn.
Thêm nữa, không rõ bạn có mục đích gì khác hơn không chứ nếu chỉ yêu cầu lọc thì đâu cần lòng vòng như vậy? Chỉ cần như vầy là đủ:
PHP:
Private Sub ComboBox1_Click()
    Sheet1.Range("B12").AutoFilter 1, ComboBox1
    Unload Me
End Sub
 
Upvote 0
Đây là một file trên GPE mà tôi chỉnh sửa lại để dùng vào việc lọc và sửa DL trên Form đúng việc tôi dùng, nhưng quá trình sửa bị lổi, tôi đưa file lên nhờ bạn xem.
 

File đính kèm

Upvote 0
Đây là một file trên GPE mà tôi chỉnh sửa lại để dùng vào việc lọc và sửa DL trên Form đúng việc tôi dùng, nhưng quá trình sửa bị lổi, tôi đưa file lên nhờ bạn xem.

Bạn chỉ cần thêm code này vào là được:
PHP:
Private Sub UserForm_Initialize()
  With Me.ComboBox1
    .RowSource = ""
    .List() = Sheet1.Range("NVL_MLK2").Value
  End With
End Sub
Đúng ra phải sửa lại rất nhiều, nhưng để thuận tiện cho bạn, tôi hướng dẫn vậy để bạn có thể làm luôn
 
Upvote 0
Đây là một file trên GPE mà tôi chỉnh sửa lại để dùng vào việc lọc và sửa DL trên Form đúng việc tôi dùng, nhưng quá trình sửa bị lổi, tôi đưa file lên nhờ bạn xem.

Nếu chẳng biết lỗi gì mà nó vẫn thực hiện đúng ý đồ thì cứ On Error Resume Next đi cho rồi!

Mã:
Private Sub ComboBox1_Click()
    [COLOR=#0000cd][B]On Error Resume Next[/B][/COLOR]
    With Sheet1
        .Range("f5") = ComboBox1
        .Range("b12").AutoFilter 1, .Range("f5").Value
    End With
    Unload Me
End Sub
 
Upvote 0
Đây là một file trên GPE mà tôi chỉnh sửa lại để dùng vào việc lọc và sửa DL trên Form đúng việc tôi dùng, nhưng quá trình sửa bị lổi, tôi đưa file lên nhờ bạn xem.

Thêm dòng on error resume next vào đầu code thử nhé.

Mã:
Private Sub ComboBox1_Click()
On Error Resume Next
Sheet1.Range("b12").AutoFilter 1, ComboBox1
Unload Me

End Sub
 
Upvote 0
Cám ơn anh ndu,anhcho hỏi thêm code nầy có thể chạy nổi khoảng 20.000 dòng không ?
 
Upvote 0
Thêm dòng on error resume next vào đầu code thử nhé.
Nếu chẳng biết lỗi gì mà nó vẫn thực hiện đúng ý đồ thì cứ On Error Resume Next đi cho rồi!
Thêm vào được rồi nhưng ít ra ta phải hiểu lỗi từ đâu chứ (chẳng lẽ cho bừa vào thế sao?)
Lỗi này do dùng RowSource mà ra... Nên tôi mới nói nếu sửa đàng hoàng phải làm nhiều công đoạn:
- Bỏ RowSource property của ComboBox1
- Nạp list bằng code
---------------------
Cám ơn anh ndu,anhcho hỏi thêm code nầy có thể chạy nổi khoảng 20.000 dòng không ?
Chỉ AutoFilter thôi chứ có tính toán gì đâu mà chạy không nỗi!
Nếu nghi ngờ, bạn có thể thí nghiệm chứng mình... khỏi cần hỏi!
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom