Nhờ trợ giúp lấy giá trị cuối cùng và giá trị gần với giá trị cuối cùng nhất

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

hoanghongqtvp

Thành viên mới
Tham gia
19/7/11
Bài viết
10
Được thích
0
Em chào cả nhà, nhờ cả nhà giúp em bài này với ạ:
Em có 1 list theo dõi lịch sử thay đổi chức vụ, bộ phận của công nhân viên, cứ có thay đổi gì thì e lại nhập thêm dòng vào sheet "Lịch sử"
Ví dụ 1 nhân viên có 3 dòng tương ứng với 3 lần thay đổi chức vụ/bộ phận
Bây giờ e muốn lấy dữ liệu ở lần cuối cùng, và lần gần nhất với lần cuối cùng (VD: ai có 5 lần thay đổi thì lấy lần thứ 5 và lần thứ 4, ai có 3 lần thay đổi thì lấy lần thứ 3 và lần thứ 2...như trong sheet"Cần lấy dữ liệu")
Các bác giúp em với ạ
Em cảm ơn nhiều
 

File đính kèm

  • Hàm lấy giá trị cuối cùng xuất hiện trong cột.xlsx
    11.6 KB · Đọc: 25
Em chào cả nhà, nhờ cả nhà giúp em bài này với ạ:
Em có 1 list theo dõi lịch sử thay đổi chức vụ, bộ phận của công nhân viên, cứ có thay đổi gì thì e lại nhập thêm dòng vào sheet "Lịch sử"
Ví dụ 1 nhân viên có 3 dòng tương ứng với 3 lần thay đổi chức vụ/bộ phận
Bây giờ e muốn lấy dữ liệu ở lần cuối cùng, và lần gần nhất với lần cuối cùng (VD: ai có 5 lần thay đổi thì lấy lần thứ 5 và lần thứ 4, ai có 3 lần thay đổi thì lấy lần thứ 3 và lần thứ 2...như trong sheet"Cần lấy dữ liệu")
Các bác giúp em với ạ
Em cảm ơn nhiều
Biết lấy mỗi giá trị cúi cùng thôi (còn gần cuối chưa bít)
Mã:
E3=LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!B$2:B$15)
F3=LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!C$2:C$15)
G3=LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!D$2:D$15)
 
Lần chỉnh sửa cuối:
Biết lấy mỗi giá trị cúi cùng thôi (còn gần cuối chưa bít)
Mã:
E3=LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!B$2:B$15)
F3=LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!C$2:C$15)
G3=LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!D$2:D$15)
Em cảm ơn bác, giá trị cuối cùng em cũng mới mò trên gg, có bác hướng dẫn giống như bác, em làm thì ra đúng rồi ạ
 
Tác giả nên đặt name ấy, mấy công thức khủng mà nhiều tiền đô $ thì nhìn rối, đếm tiền mệt nghỉ.
 
Dùng hàm Aggregate, Lấy giá trị (larger, 1) và (large, 2)

Hoặc lồng 2 lần Lookup
 
Bạn tham khảo
B3=IFERROR(INDEX('Lịch sử'!$B$2:$D$15,AGGREGATE(14,6,ROW($A$1:$A$14)/($A3='Lịch sử'!$A$2:$A$15),2),COLUMN(A1)),LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!B$2:B$15))
Xong kéo copy cho các ô khác trong bảng
 
Thử thêm dữ liệu vào tiếp sheet lịch sử ...
Qua trang "cần ... Click phải vùng xanh lá, chọn Refresh
 

File đính kèm

  • Hàm lấy giá trị cuối cùng xuất hiện trong cột 2222.xlsx
    22.7 KB · Đọc: 7
Khuya rồi mà chưa tìm ra cách spill xuống theo dòng, chỉ spill ra cột (mảng chỉ có 1 dòng thay vì 12). Chịu khó kéo xuống.

1717531407718.png
1717531581411.png

* xin lỗi đêm hôm buồn ngủ chưa tét kỹ:
Công thức thứ 2 sẽ cho về lần nhận chức đầu tiên, xin sửa lại:
1717533400428.png
 
Lần chỉnh sửa cuối:
Khuya rồi mà chưa tìm ra cách spill xuống theo dòng, chỉ spill ra cột (mảng chỉ có 1 dòng thay vì 12). Chịu khó kéo xuống.

View attachment 301408


* xin lỗi đêm hôm buồn ngủ chưa tét kỹ:
Công thức thứ 2 sẽ cho về lần nhận chức đầu tiên, xin sửa lại:
Không biết cháu có sai ở đâu không mà kết quả Value chú ạ?
1717562344010.png
P/S: đã tìm ra lỗi, xin lỗi vì làm phiền chú và mọi người !
 
Lần chỉnh sửa cuối:
Bạn tham khảo
B3=IFERROR(INDEX('Lịch sử'!$B$2:$D$15,AGGREGATE(14,6,ROW($A$1:$A$14)/($A3='Lịch sử'!$A$2:$A$15),2),COLUMN(A1)),LOOKUP(2,1/('Lịch sử'!$A$2:$A$15=$A3),'Lịch sử'!B$2:B$15))
Xong kéo copy cho các ô khác trong bảng
Cảm ơn bác, em copy công thức của bác thì ra đúng ý em rồi ạ
 
em cảm ơn bác, e làm theo ct của bác ra đúng ý e rồi ạ
Bạn thử nhé. Điều kiện là dữ liệu của bạn luôn phải nhập theo thời gian ở cột D
Mã:
=LET(a,'Lịch sử'!A2:D15,b,INDEX(a,,1),c,UNIQUE(b),f,LAMBDA(t,MAP(c,LAMBDA(x,LARGE(ROW(a)*(b=x),MIN(t,SUM(--(b=x))))))-1),HSTACK(CHOOSEROWS(a,f(2)),DROP(CHOOSEROWS(a,f(1)),,1)))
1717579896289.png
 
Web KT

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

Back
Top Bottom