vmhieu.cdcs
Thành viên mới
- Tham gia
- 21/5/09
- Bài viết
- 26
- Được thích
- 2
Xin chào các anh chị,
Mình thiết lập so sánh 2 mảng để lấy giá trị :
Mảng nguồn là mảng arr2 (963 records)
Mảng so sánh là mảng arr6 (788 records)
Mình muốn so sánh giá trị từ mảng arr2 với mảng arr6, nếu có giá trị thì trả về mảng kết quả và điền lại vào mảng arr2.
Vấn đề mình đang gặp phải là mảng kết quả trả về trên mảng arr2 chỉ chạy đúng số dòng của mảng so sánh arr6: 788 dòng, còn các dòng bên dưới không có giá trị.
Nhờ các anh, chị xem giúp code mình lỗi chỗ nào,
Xin cảm ơn anh, chị rất nhiều ạ!!!
Sub vssid()
Dim LR2, LR6 As Long
Dim arr6(), arr2(), kq_duyet(), kq_dangnhap(), kq_tinhtrang()
Dim i, j As Long
Dim x, y, z As Long
LR2 = Sheet2.Range("A" & Rows.Count).End(xlUp).Row
LR6 = Sheet6.Range("D" & Rows.Count).End(xlUp).Row
arr6 = Sheet6.Range("D3:Q" & LR6).Value
arr2 = Sheet2.Range("D2" & LR2).Value
ReDim kq_duyet(1 To LR2, 1 To 1)
ReDim kq_dangnhap(1 To LR2, 1 To 1)
ReDim kq_tinhtrang(1 To LR2, 1 To 1)
For i = 1 To UBound(arr2)
For j = 1 To UBound(arr6)
If arr2(i, 1) = arr6(j, 1) Then
x = x + 1
y = y + 1
z = z + 1
kq_duyet(x, 1) = arr6(j, 9)
kq_dangnhap(y, 1) = arr6(j, 13)
kq_tinhtrang(z, 1) = arr6(j, 14)
End If
Next
Next
Sheet2.Range("X2").Resize(UBound(arr2)).Value = kq_duyet
Sheet2.Range("Y2").Resize(UBound(arr2)).Value = kq_dangnhap
Sheet2.Range("Z2").Resize(UBound(arr2)).Value = kq_tinhtrang
End Sub
Mình thiết lập so sánh 2 mảng để lấy giá trị :
Mảng nguồn là mảng arr2 (963 records)
Mảng so sánh là mảng arr6 (788 records)
Mình muốn so sánh giá trị từ mảng arr2 với mảng arr6, nếu có giá trị thì trả về mảng kết quả và điền lại vào mảng arr2.
Vấn đề mình đang gặp phải là mảng kết quả trả về trên mảng arr2 chỉ chạy đúng số dòng của mảng so sánh arr6: 788 dòng, còn các dòng bên dưới không có giá trị.
Nhờ các anh, chị xem giúp code mình lỗi chỗ nào,
Xin cảm ơn anh, chị rất nhiều ạ!!!
Sub vssid()
Dim LR2, LR6 As Long
Dim arr6(), arr2(), kq_duyet(), kq_dangnhap(), kq_tinhtrang()
Dim i, j As Long
Dim x, y, z As Long
LR2 = Sheet2.Range("A" & Rows.Count).End(xlUp).Row
LR6 = Sheet6.Range("D" & Rows.Count).End(xlUp).Row
arr6 = Sheet6.Range("D3:Q" & LR6).Value
arr2 = Sheet2.Range("D2" & LR2).Value
ReDim kq_duyet(1 To LR2, 1 To 1)
ReDim kq_dangnhap(1 To LR2, 1 To 1)
ReDim kq_tinhtrang(1 To LR2, 1 To 1)
For i = 1 To UBound(arr2)
For j = 1 To UBound(arr6)
If arr2(i, 1) = arr6(j, 1) Then
x = x + 1
y = y + 1
z = z + 1
kq_duyet(x, 1) = arr6(j, 9)
kq_dangnhap(y, 1) = arr6(j, 13)
kq_tinhtrang(z, 1) = arr6(j, 14)
End If
Next
Next
Sheet2.Range("X2").Resize(UBound(arr2)).Value = kq_duyet
Sheet2.Range("Y2").Resize(UBound(arr2)).Value = kq_dangnhap
Sheet2.Range("Z2").Resize(UBound(arr2)).Value = kq_tinhtrang
End Sub