Cho hỏi về Redim Array (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ngothanhluan

Thành viên chính thức
Tham gia
25/6/13
Bài viết
70
Được thích
3
Em có đoạn code sau, không biết bị sai chỗ nào mà nó cứ báo lỗi, mong mọi người giải đáp giúp ạ.
Mã:
Private Sub DOANH_THU_NHAN_VIEN()
Dim tmpArr1, tmpArr2
Dim u, i As Long


    tmpArr1 = Sheets(1).Range("A1:A10").Value
    tmpArr1 = UniqueList(tmpArr1)
    
    u = UBound(tmpArr1)
    
ReDim tmpArr2(u, 2)


    For i = 1 To u
        tmpArr2(i, 1) = tmpArr1(i, 1)
    Next
    
    For i = 1 To u
        tmpArr2(i, 2) = Application.WorksheetFunction.VLookup(tmpArr2(i, 1), Sheets(1).Range("E:F"), 2, 0)
    Next
    
    ListBox1.List() = tmpArr2


End Sub
 

File đính kèm

trong sub UserForm_Activate
thì tmpArr1 là mảng một chiều vì vậy bạn không thể sử dụng
For i = 1 To u
tmpArr2(i, 1) = tmpArr1(i,1)
Next
mà bạn dùng
For i = 1 To u
tmpArr2(i, 1) = tmpArr1(i)
Next
 
Upvote 0
Em có đoạn code sau, không biết bị sai chỗ nào mà nó cứ báo lỗi, mong mọi người giải đáp giúp ạ.

Sửa thế này xem sao nha

PHP:
Private Sub UserForm_Activate()
Dim tmpArr1, tmpArr2
Dim u, i As Long
    tmpArr1 = Sheets(1).Range("A1:A10").Value
    tmpArr1 = UniqueList(tmpArr1)
    u = UBound(tmpArr1)
ReDim tmpArr2(u, 1 To 2)
    For i = 0 To u
        tmpArr2(i, 1) = tmpArr1(i)
        tmpArr2(i, 2) = Application.WorksheetFunction.VLookup(tmpArr2(i, 1), Sheets(1).Range("E:F"), 2, 0)
    Next
    ListBox1.List() = tmpArr2
End Sub
 
Upvote 0

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

Back
Top Bottom