---------------Tai sao mình lồng vào toàn báo lỗi nhỉ?
Hi... hi... Chỉ có thể sai 1 chổ thôi, đó là hàm SortArray của rollover79 chỉ làm việc với mảng 1 chiều ---> Đối với mảng 2 chiều nó sẽ báo lỗi ngay chổ nào có dùng đến hàm JOINEm cũng đọc thấy code về Java của Rollover và vận dụng của NDU mà cũng hú thật là chưa biết cách truyền tham số (lồng) code trên vào để sort.
Mong NDU và Rollover cụ thể giúp.
Cám ơn.
Function SortArray(arr, Optional isText As Boolean = False, Optional isDESC As Boolean = False)
Dim sCommand As String
sCommand = "('" & Join(arr, vbBack) & "').split('" & vbBack & "').sort("
If isText Then
sCommand = sCommand & ")"
Else
sCommand = sCommand & "function(a,b){return (a-b)})"
End If
If isDESC Then sCommand = sCommand & ".reverse()"
sCommand = sCommand & ".join('" & vbBack & "')"
Dim objSC
Set objSC = CreateObject("MSScriptControl.ScriptControl")
objSC.Language = "JavaScript"
SortArray = Split(objSC.Eval(sCommand), vbBack)
End Function
Function OB(ParamArray SrcArr())
Dim TmpArr, Item, i As Long
With CreateObject("Scripting.Dictionary")
For i = LBound(SrcArr) To UBound(SrcArr)
TmpArr = SrcArr(i)
For Each Item In TmpArr
If Trim(Item) <> "" And Item <> 0 Then
If Not .Exists(Item) Then
.Add Item, ""
End If
End If
Next
Next
OB = WorksheetFunction.Transpose(SortArray(.Keys, True))
End With
End Function
Hôm nay em mới tìm được bài này của bác, bác có thể thêm tùy chọn chỉ lọc cho text giúp e được ko ạ.Mình hiệu chính Code 1 chút:
Mã:Function Dsach(ByVal Rg As Range, id As Integer) Dim cl As Range, mg(), i, j, tam Dim DS As New Collection On Error Resume Next For Each cl In Rg.Cells If Trim(cl) <> "" Then DS.Add cl.Value, CStr(cl.Value) Next ReDim mg(DS.Count) For i = 1 To DS.Count: mg(i - 1) = DS(i): Next For i = 0 To UBound(mg) - 1 For j = i + 1 To DS.Count - 1 If mg(i) > mg(j) Then tam = mg(i): mg(i) = mg(j): mg(j) = tam End If: Next: Next If id > UBound(mg) Then Dsach = "" Else Dsach = mg(id - 1) End If End Function
Cú pháp : = DSach( Rg , id )Trong đó:
Rg: Vùng nguồn tạo danh sách.
Id: Số phần tử của Danh sách