Hỏi về tìm và xuất giá trị lớn nhất với nhiều điều kiện (1 người xem)

Liên hệ QC

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

dinhmenh125

Thành viên mới
Tham gia
11/3/08
Bài viết
10
Được thích
0
Xin nhờ các anh chị giải đáp giúp:

Em muốn tìm hàm để đưa ra kết quả doanh nghiệp có số vốn đầu tư nhiều nhất ở HCM và VK có quốc tịch Mỹ trong bảng dữ liệu. Bảng dữ liệu em đã đính kèm theo đây, mong các anh chị giúp.

Em cám ơn trước ạ! :-=
 

File đính kèm

Hãy dùng hàm CSDL:

Cú pháp sẽ tương tự:
=DMAX(A3:C15;B2;E2:G3)
 
Mình sử dụng công thức mảng. Kết thúc công thức bằng tổ hợp (Ctrl+Shift+Enter)
 

File đính kèm

Bạn dùng hàm Dmax nhé.
 

File đính kèm

Lần chỉnh sửa cuối:
Trước hết em xin cảm ơn các anh chị đã dành thời gian giúp đỡ ạ.

Với hàm Dmax ta đã có được số liệu về số vốn đầu tư cao nhất ở HCM với quốc tịch VK là Mỹ. Tuy nhiên lại chưa biết tên doanh nghiệp đó?
Theo bài giải thì chỉ có số liệu theo quốc tịch VK về:
1. Tên doanh nghiệp(C23)
=INDEX($B$5:$E$20,MATCH(LARGE((($E$5:$E$20=C22)*$D$5:$D$20),1),((E5:E20=C22)*$D$5:$D$20),0),1))
2. Vốn đầu tư (C24) =INDEX(D5:E20,MATCH(LARGE((($E$5:$E$20=C22)*$D$5:$D$20),1),((E5:E20=C22)*$D$5:$D$20),0),1))
mà chưa có mối liên hệ với tỉnh/TP như trong câu hỏi.

Vì chưa biết cách lọc như ở ô C22 như bài giải (anh phamnhukhang và 090TRI giúp thêm được chứ ạ) nên em đưa ra cách làm như sau:
C23=INDEX(B5:E20,MATCH(MAX((D5:D20)*(C5:C20="HCM")*(E5:E20="Mỹ")),D5:D20,0),1)
C24=MAX((D5:D20)*(C5:C20="HCM")*(E5:E20="Mỹ"))
Kết thúc bằng Ctrl+Shift+Enter (giờ em mới biết).

Chi tiết ở file đính kèm ạ. Mong các anh chị giúp thêm.
 

File đính kèm

Bạn dùng Vlookup tìm tên doanh nghiệp.
 

File đính kèm

Bạn dùng Vlookup tìm tên doanh nghiệp.
với file đính kèm của bạn 090TRI:
xls.gif
Phan loai DN 090...xls
Không cần cột phụ: cột K có 2 cách nữa để tìm tên doanh nghiệp như sau:
Công thức tại cell L5
  1. =OFFSET(A4,MATCH(H5&J5&I5,A5:A20,0),2)
  2. =INDEX(C5:C20,MATCH(H5&J5&I5,A5:A20,0))
 
Cái này có thể làm thành 1 UF được đấy.

Thân!
 
Hàm mảng tự tạo đây, theo gợi í của BAP

Cái này có thể làm thành 1 UF được đấy.
Thân!
Nội dung của hàm:
PHP:
Option Explicit:        Option Base 1

Function DDMAX(CSDL As Range, Tinh As Range, QTich As Range)
 ReDim MDL(2, 1):               Dim Temp As Double
 Dim Rng As Range, Clls As Range
 
 Set Rng = Range(CSDL.Cells(1, 1), CSDL.Cells(CSDL.Rows.Count, 1))
 For Each Clls In Rng
    If Clls.Offset(, 1) = Tinh And Clls.Offset(, 3) = QTich And _
        Temp < Clls.Offset(, 2) Then
        MDL(1, 1) = Clls:                   MDL(2, 1) = Clls.Offset(, 2)
    End If
 Next Clls
 DDMAX = MDL
End Function

Cú pháp:
Sau khi chép hàm vô CS VBE; ta về trang tính, ta chọn 2 ô 'C22:C23'
Nhập vô thanh công thức cú pháp
=DDMAX(B5:E20;C10;E12)​
& kết thúc bằng tổ hợp 3 phím để kết quả cùng hiện trên 2 ô này;
Chú i: Nếu có 2 records cùng đạt yêu cầu, thì hàm cho kết quả đầu mà thôi.
 
Thêm một vd nữa với 3 phím CSE
 

File đính kèm

Em xin cảm ơn các anh chị. Qua các bài giải em đã biết thêm nhiều kiến thức mới về Excel.

Em chỉ hỏi thêm một chút về cách tạo list (lọc) trong ô C22, đó có phải là advanced filter ko ạ? Em đã thử mà chưa đc.
Em thấy, nếu áp dụng list đó cho cả Tỉnh và Quốc tịch thì sẽ nhanh và nhiều kq hơn.+-+-+-+
 

File đính kèm

  • c22.JPG
    c22.JPG
    89.9 KB · Đọc: 4
Em xin cảm ơn các anh chị. Qua các bài giải em đã biết thêm nhiều kiến thức mới về Excel.

Em chỉ hỏi thêm một chút về cách tạo list (lọc) trong ô C22, đó có phải là advanced filter ko ạ? Em đã thử mà chưa đc.
Em thấy, nếu áp dụng list đó cho cả Tỉnh và Quốc tịch thì sẽ nhanh và nhiều kq hơn.+-+-+-+
Bạn chọn Cell C22 rồi vào Data \ Validation... nghiên cứu sẽ biết cách tạo List
 
Web KT

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

Back
Top Bottom