1/ Chưa biết dùng Dic làm gì.Nhờ các bạn giúp mình đưa dữ liệu từ mảng vào list trong Form. Loay hoay mãi mà làm không được.
3/ ListLoc.List() = Arr(n) chữ n đây làm gì.If CVDate(sArray(lR, 2)) >= Tungay And CVDate(sArray(lR, 2)) <= Denngay Then
Private Sub THien_Click()
Dim Tungay As Date, Denngay As Date, i As Long
Dim sArray(), Arr(), lR As Long, n As Long, Tmp As String
On Error Resume Next
sArray = Sheet1.Range("A2:C33").Value
Tungay = DateSerial(Year(Tu), Month(Tu), Day(Tu))
Denngay = DateSerial(Year(Den), Month(Den), Day(Den))
n = 0
For lR = 1 To UBound(sArray)
If CVDate(sArray(lR, 2)) >= Tungay And CVDate(sArray(lR, 2)) <= Denngay Then
Tmp = sArray(lR, 3)
n = n + 1
ReDim Preserve Arr(1 To n)
Arr(n) = Tmp
End If
Next
ListLoc.List() = Arr()
End Sub
Code của bạn có 2 chổ sai:Nhờ các bạn giúp mình đưa dữ liệu từ mảng vào list trong Form. Loay hoay mãi mà làm không được.
Sửa code thành vầy:Cám ơn bạn ThuNgi rất nhiều. Mình muốn listCuont có 3 cột thì làm thế nào. Thật sự mảnh mình cũng chưa rành lắm. Đang tập tành học
Private Sub THien_Click()
Dim Tungay As Long, Denngay As Long, lR As Long, n As Long, sArray, Arr()
On Error Resume Next
ReDim Arr(1 To 3, 1 To 1)
sArray = Sheet1.Range("A2:C33").Value
Tungay = CLng(DateValue(Tu))
Denngay = CLng(DateValue(Den))
For lR = 1 To UBound(sArray, 1)
If CLng(sArray(lR, 2)) >= Tungay And CLng(sArray(lR, 2)) <= Denngay Then
n = n + 1
ReDim Preserve Arr(1 To 3, 1 To n)
Arr(1, n) = sArray(lR, 1)
Arr(2, n) = sArray(lR, 2)
Arr(3, n) = sArray(lR, 3)
End If
Next
ListLoc.List() = WorksheetFunction.Transpose(Arr)
End Sub
Cane ơn Thầy và Thu Nghi rất nhiều. Em sẽ nghiên cứu về mảng thêm để xử lý tốt dữ liệu.Sửa code thành vầy:
PHP:Private Sub THien_Click() Dim Tungay As Long, Denngay As Long, lR As Long, n As Long, sArray, Arr() On Error Resume Next ReDim Arr(1 To 3, 1 To 1) sArray = Sheet1.Range("A2:C33").Value Tungay = CLng(DateValue(Tu)) Denngay = CLng(DateValue(Den)) For lR = 1 To UBound(sArray, 1) If CLng(sArray(lR, 2)) >= Tungay And CLng(sArray(lR, 2)) <= Denngay Then n = n + 1 ReDim Preserve Arr(1 To 3, 1 To n) Arr(1, n) = sArray(lR, 1) Arr(2, n) = sArray(lR, 2) Arr(3, n) = sArray(lR, 3) End If Next ListLoc.List() = WorksheetFunction.Transpose(Arr) End Sub