Dùng hàm gì để trích lọc danh sách rồi xếp ra từng cột (1 người xem)

Liên hệ QC

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

chaukimsa

Thành viên chính thức
Tham gia
3/6/08
Bài viết
55
Được thích
26
Hàm vlookup chỉ tìm được dữ liệu đầu tiên thôi , các bạn trong diển đàn xin giúp mình tìm được loai đồng hạng thứ 2 ,thứ 3 ...vv

---------------------
Góp ý:
1. Bài này mà bạn gọi là "Sắp (chứ không phải Xắp) xếp thứ hạng trong Excel" à? Bạn đặt tiêu đề không ăn nhập gì với nội dung của bài.
2. Câu hỏi của bạn cũng không trùng với nội dung bạn muốn hỏi trong file đính kèm. Lẽ ra bạn nên copy luôn cái bạn muốn hỏi trong file đính kèm đó ra làm thành câu hỏi của bạn ở ngoài này.

Lẽ ra tôi đã xóa bài của bạn, tuy nhiên thấy đây là một vấn đề hay, nên tôi sửa tiêu đề và giữ lại.
Lần sau, bạn lưu ý những điều tôi góp ý ở trên.
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
ở đây mình dùng thêm cột phụ, sau đó dùng vlookup, bác xem có được không?
 

File đính kèm

ở đây mình dùng thêm cột phụ, sau đó dùng vlookup, bác xem có được không?
Hay lắm! Rất Sáng tạo!
Cột phụ cũng chả sao, miễn đạt mục đích.
 
Thật cám ơn BNTT đã nhắc nhở ,lần sau tôi cố gắng đặt tên cho đúng , bạn hoangminhtien đả trả lời quá xuất sắc , tôi áp dụng ngay và kết quả thật là tuyệt
 
Một cách khác KHÔNG CỘT PHỤ

ở đây mình dùng thêm cột phụ, sau đó dùng vlookup, bác xem có được không?

Đúng là sáng tạo, rất tổ

Hay lắm! Rất Sáng tạo!
Cột phụ cũng chả sao, miễn đạt mục đích.

Đúng là cột phụ cũng không sao, nhưng trường hợp này cột phụ phải liền trước bảng (cột 1) -> hơi bất tiện (có cách khác -> dùng hàm LOOKUP)


đóng góp thêm
Một cách khác KHÔNG CỘT PHỤ


+ đặt con trỏ ô tại F3 , vào Insert \name \ define.... đặt 1 name là TAM với Reffer to là:
PHP:
=IF(Sheet1!$B$3:$B$15=Sheet1!$E3,ROW(Sheet1!$B$3:$B$15))
+ thì khi đó
Công thức cho F3
PHP:
=IF(ISNUMBER(SMALL(TAM,COLUMN()-COLUMN($E3))),INDIRECT("C"&SMALL(TAM,COLUMN()-COLUMN($E3))),"")
copy cho các ô còn lại

thế là được
 
Lần chỉnh sửa cuối:
Hàm vlookup chỉ tìm được dữ liệu đầu tiên thôi , các bạn trong diển đàn xin giúp mình tìm được loai đồng hạng thứ 2 ,thứ 3 ...vv

Một cách khác cho bạn tham khảo :
Tại ô K3:
=IF(COUNTIF($A$3:$A$15,$I3)<2,"",INDIRECT("B"&LARGE((($I3=$A$3:$A$15)*($J3<>$B$3:$B$15))*ROW($B$3:$B$15),COUNTIF($A$3:$A$15,$I3)-1)))
Ấn ctrl+shift+enter sau khi gõ xong công thức
tại ô L3 :
=IF(COUNTIF($A$3:$A$15,$I3)<3,"",INDIRECT("B"&LARGE((($I3=$A$3:$A$15)*($J3<>$B$3:$B$15))*ROW($B$3:$B$15),COUNTIF($A$3:$A$15,$I3)-2)))
Copy xuống cho các ô còn lại
 
Một bài toán rất hay, các bác làm rất sáng tạo

Cho tôi hỏi cách giải quyết bài toán trên bằng VBA thì như thế nào ah?

VBA của tôi vẫn còn kém chưa đủ làm bài này, mong được học hỏi từ mọi người.
 
bài viết ý nghĩa, mình sẽ áp dụng xem như thế nào
 
Một bài toán rất hay, các bác làm rất sáng tạo

Cho tôi hỏi cách giải quyết bài toán trên bằng VBA thì như thế nào ah?

VBA của tôi vẫn còn kém chưa đủ làm bài này, mong được học hỏi từ mọi người.
Góp vui với bạn thêm một cách viết:
Mã:
Public Sub XepXep()
    Dim Vung, I, K, d, iMax, Mg, A
    Vung = Range([A3], [A1000].End(xlUp)).Resize(, 2)
    Set d = CreateObject("scripting.dictionary")
    ReDim Mg(1 To UBound(Vung), 1 To 2)
        For I = 1 To UBound(Vung)
            If Not d.exists(Vung(I, 1)) Then
                K = K + 1
                d.Add Vung(I, 1), Array(K, 2)
                Mg(K, 1) = Vung(I, 1): Mg(K, 2) = Vung(I, 2)
            Else
                A = d.Item(Vung(I, 1))
                A(1) = A(1) + 1
                    If iMax < A(1) Then
                        iMax = A(1)
                        ReDim Preserve Mg(1 To UBound(Vung), 1 To iMax)
                            Mg(A(0), iMax) = Vung(I, 2)
                            d.Item(Vung(I, 1)) = Array(A(0), iMax)
                    Else
                        Mg(A(0), A(1)) = Vung(I, 2)
                        d.Item(Vung(I, 1)) = Array(A(0), A(1))
                    End If
            End If
        Next I
[M3].Resize(K, iMax) = Mg
End Sub
Thân
 
dạng bài này quá khó để một người cơ bản mới bắt đầu excel tìm hiểu he he đọc xong loạn cả đầu.rất thanks tinh thần nhiệt tình của moi người trong diễn đàn
 

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

Back
Top Bottom