a.nguoidensau
Thành viên hoạt động
- Tham gia
- 12/4/12
- Bài viết
- 138
- Được thích
- 28
Bạn xem file thử nhé:Chào các anh/chị,
Anh chi giúp tôi công thức tìm giá trị lớn nhất trong cột K và ngày xảy ra.
Kết quả tôi đã điền sẵn trong File. Cảm ơn mọi ngưòi đã đọc bài.
Có công thức nào mà không dùng cột phụ không bạn.Bạn xem file thử nhé:
=INDEX($A$2:$A$32,MATCH(K34,$K$2:$K$32,0))
&IF(COUNTIF($K$2:$K$32,K34)>1,","&INDEX($A$2:$A$32,SMALL(IF($K$2:$K$32=K34,ROW($K$2:$K$32),""),2)-1),"")
&IF(COUNTIF($K$2:$K$32,K34)>2,","&INDEX($A$2:$A$32,SMALL(IF($K$2:$K$32=K34,ROW($K$2:$K$32),""),3)-1),"")
&IF(COUNTIF($K$2:$K$32,K34)>3,","&INDEX($A$2:$A$32,SMALL(IF($K$2:$K$32=K34,ROW($K$2:$K$32),""),4)-1),"")
&IF(COUNTIF($K$2:$K$32,K34)>4,","&INDEX($A$2:$A$32,SMALL(IF($K$2:$K$32=K34,ROW($K$2:$K$32),""),5)-1),"")
Có công thức #4 đó bạn, nhưng lưu ý nếu trên 5 ngày trùng giá trị lớn nhất thì cũng tèo đó nha, bạn tự ước lượng theo công việc của mình mà thêm, bớt cho phù hợp.Có công thức nào mà không dùng cột phụ không bạn.
Thử hàm này:Có công thức nào mà không dùng cột phụ không bạn.
Function MaxNgay(rng As Range, col As Long)
Dim cll As Range, arr(), i As Long
ReDim arr(1 To Application.CountIf(rng, Application.Max(rng)))
For Each cll In rng
If cll.Value = Application.Max(rng) Then
i = i + 1
arr(i) = cll.Offset(0, col - cll.Column).Value
End If
Next cll
MaxNgay = Join(arr, ",")
End Function