thanhphuongvip
Mới học VBA, hỏi ngu anh chị đừng chửi ạ
- Tham gia
- 16/1/10
- Bài viết
- 136
- Được thích
- 22
Mình có một bảng dữ liệu như này:
![215445 215445](https://www.giaiphapexcel.com/diendan/data/attachments/172/172433-9ba21a812c137479141329a8387a5ae0.jpg?hash=m6IagSwTdH)
Mình sang sheet khác để lọc ra những dòng thỏa 2 điều kiện là Tên Khách hàng và tên Sản phẩm
![215446 215446](https://www.giaiphapexcel.com/diendan/data/attachments/172/172434-2d53ff252b8e297a8aeeaed314b12a90.jpg?hash=LVP_JSuOKX)
Và code nó như này:
Và kết quả là: Khi có kết quả thỏa mãn 2 điều kiện thì nó lọc ra được, còn nếu như ko có kết quả thì nó báo lỗi.
Xin anh em cho hỏi mình sai chỗ nào ạ? xin cảm ơn
![215445 215445](https://www.giaiphapexcel.com/diendan/data/attachments/172/172433-9ba21a812c137479141329a8387a5ae0.jpg?hash=m6IagSwTdH)
Mình sang sheet khác để lọc ra những dòng thỏa 2 điều kiện là Tên Khách hàng và tên Sản phẩm
![215446 215446](https://www.giaiphapexcel.com/diendan/data/attachments/172/172434-2d53ff252b8e297a8aeeaed314b12a90.jpg?hash=LVP_JSuOKX)
Và code nó như này:
Mã:
Sub ruttrich2()
Dim Sarr() As Variant, Darr() As Variant
Dim Lr As Long, DK As String, i As Long, r As Long, k As Long, j As Long
Lr = Sheet1.Range("A" & Rows.Count).End(xlUp).Row
Sarr = Sheet1.Range("A2:E" & Lr).Value
r = UBound(Sarr)
ReDim Darr(1 To r, 1 To 5)
DK = Range("I2")
For i = 1 To r
If Sarr(i, 3) = DK And Sarr(i, 4) = Range("J2") Then
k = k + 1
For j = 1 To 5
Darr(k, j) = Sarr(i, j)
Next j
End If
Next i
Sheet2.Range("A2").Resize(1000, 5).ClearContents
Sheet2.Range("A2").Resize(k, 5) = Darr
End Sub
Và kết quả là: Khi có kết quả thỏa mãn 2 điều kiện thì nó lọc ra được, còn nếu như ko có kết quả thì nó báo lỗi.
Xin anh em cho hỏi mình sai chỗ nào ạ? xin cảm ơn
File đính kèm
Lần chỉnh sửa cuối: