chungk54
Thành viên mới

- Tham gia
- 4/10/18
- Bài viết
- 3
- Được thích
- 0
sao bạn không dùng pivot rồi kết hợp hàm cho khỏe. Pivot là nhanh nhất.em chào mọi người, mọi người giúp em giải pháp để lọc kết quả nhanh nhất file test em đã up lên với, trường hợp của em file rất lớn, không thể dò bằng tay được ạ
Bài đã được tự động gộp:
em muốn lấy ô cuối cột nhưng có điều kiện ạ
=vlookup(gia tri do, bang do, cot do,kieu do)
Mình nghĩ bấm 1 phát là nhanh nhất. hi hisao bạn không dùng pivot rồi kết hợp hàm cho khỏe. Pivot là nhanh nhất.
Khi sử dụng pivot xong bạn thử dùng hàm
Mã:=vlookup(gia tri do, bang do, cot do,kieu do)
Sub MaxAndMax()
Dim Dic As Object, skey As String
Dim sArr(), dArr(), i As Long, k As Long
Set Dic = CreateObject("Scripting.Dictionary")
sArr = Range("F2", Range("F" & Rows.Count).End(3)).Resize(, 3).Value
ReDim dArr(1 To UBound(sArr, 1), 1 To 3)
For i = 1 To UBound(sArr, 1)
skey = sArr(i, 1)
If Not Dic.Exists(skey) Then
k = k + 1
Dic.Add skey, k
dArr(k, 1) = skey: dArr(k, 2) = sArr(i, 2)
If IsDate(sArr(i, 3)) Then dArr(k, 3) = sArr(i, 3)
Else
If IsDate(sArr(i, 3)) And IsDate(dArr(Dic.Item(skey), 3)) Then
If TimeValue(dArr(Dic.Item(skey), 3)) < TimeValue(sArr(i, 3)) Then _
dArr(Dic.Item(skey), 3) = sArr(i, 3)
End If
End If
Next i
If k Then Range("Q5").Resize(k, 3) = dArr
Set Dic = Nothing
End Sub
Công thức nha bạnem chào mọi người, mọi người giúp em giải pháp để lọc kết quả nhanh nhất file test em đã up lên với, trường hợp của em file rất lớn, không thể dò bằng tay được ạ
Bài đã được tự động gộp:
em muốn lấy ô cuối cột nhưng có điều kiện ạ
em chào mọi người, mọi người giúp em giải pháp để lọc kết quả nhanh nhất file test em đã up lên với, trường hợp của em file rất lớn, không thể dò bằng tay được ạ
Bài đã được tự động gộp:
em muốn lấy ô cuối cột nhưng có điều kiện ạ
Nghĩa là cột Mã NVBH, mỗi mã được nhập liên tục, bạn muốn lấy dòng cuối của cùng mã đấy?em chào mọi người, mọi người giúp em giải pháp để lọc kết quả nhanh nhất file test em đã up lên với, trường hợp của em file rất lớn, không thể dò bằng tay được ạ
Bài đã được tự động gộp:
em muốn lấy ô cuối cột nhưng có điều kiện ạ
Public Sub s_Gpe()
Dim sArr(), dArr(), I As Long, K As Long, R As Long, Txt As String
sArr = Range("F2", Range("F2").End(xlDown)).Resize(, 3).Value
R = UBound(sArr)
ReDim dArr(1 To R, 1 To 3)
For I = 1 To R
If sArr(I, 1) <> Txt Then
K = K + 1
Txt = sArr(I, 1)
dArr(K, 1) = Txt
dArr(K, 2) = sArr(I, 2)
End If
dArr(K, 3) = sArr(I, 3)
Next I
Range("M5").Resize(1000, 3).ClearContents
Range("M5").Resize(K, 3) = dArr
End Sub