mhung12005
Thành viên chậm chạm
- Tham gia
- 20/7/11
- Bài viết
- 1,598
- Được thích
- 1,261
- Nghề nghiệp
- Đâu có việc thì làm
Xin chào các thầy và ACE,
Em mò mẫm viết 1 hàm tự tạo như sau:
Cũng cho ra kết quả là 1 mảng, chỉ phiền 1 nỗi là mảng này chứa đúng bằng số phần tử mảng nguồn (chỉ số Ubound) mà em không biết làm cách nào để bỏ các phần tử (không cần thiết) đó đi được. Cụ thể như trong file đính kèm, em muốn bỏ đi các phần tử "0" trong mảng trả về của hàm count_T7_CNworkingdays.
Xin được các thầy và các ACE hướng dẫn với ạ. Em xin cảm ơn.
Em mò mẫm viết 1 hàm tự tạo như sau:
Mã:
Function count_T7_CNworkingdays(Rng As Range)
Dim VSouceArray() As Variant, VTmp As Variant, VResultArray() As Variant
Dim lR As Long, n As Long
On Error Resume Next
VSouceArray = Rng.Value
ReDim VResultArray(1 To UBound(VSouceArray, 1), 1 To 1)
With CreateObject("Scripting.Dictionary")
For lR = 1 To UBound(VSouceArray, 1)
If VSouceArray(lR, 2) = 0 Then
If VSouceArray(lR, 1) <> "" Then
VTmp = VSouceArray(lR, 1)
If Not .exists(VTmp) Then
n = n + 1
.Add VTmp, ""
VResultArray(n, 1) = VTmp
End If
End If
End If
Next lR
End With
count_T7_CNworkingdays = VResultArray
End Function
Cũng cho ra kết quả là 1 mảng, chỉ phiền 1 nỗi là mảng này chứa đúng bằng số phần tử mảng nguồn (chỉ số Ubound) mà em không biết làm cách nào để bỏ các phần tử (không cần thiết) đó đi được. Cụ thể như trong file đính kèm, em muốn bỏ đi các phần tử "0" trong mảng trả về của hàm count_T7_CNworkingdays.
Xin được các thầy và các ACE hướng dẫn với ạ. Em xin cảm ơn.