Nhờ mọi người giúp đỡ về hàm nhiều điều kiện (1 người xem)

  • Thread starter Thread starter mschen
  • Ngày gửi Ngày gửi

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

mschen

Thành viên mới
Tham gia
25/10/16
Bài viết
16
Được thích
2
Em có bảng (file đính kèm) và điều kiện như thế này thì phải làm sao ạ, hàm IF hình như tối đa chỉ đc 7 cái thôi nên e ko biết phải làm thế nào mới ra đc ạ, em cám ơn nhiều ạ!

Nếu 16-11-2016<X<=15-12-2016 thì trả về giá trị là 1
Nếu 16-10-2016<X<=15-11-2016 thì trả về giá trị là 2
..........
Nếu 16-01-2016<X<=15-02-2016 thì trả về giá trị là 13
Nếu 16-12-2015<X<=15-01-2016 thì trả về giá trị là 14
 

File đính kèm

  • so ngay phep 5 thuc co.JPG
    so ngay phep 5 thuc co.JPG
    41.3 KB · Đọc: 58
Bạn dùng vlookup(), đẳng thức, bất đẳng thức...

vlookup.jpg
 
Lần chỉnh sửa cuối:
Em có bảng (file đính kèm) và điều kiện như thế này thì phải làm sao ạ, hàm IF hình như tối đa chỉ đc 7 cái thôi nên e ko biết phải làm thế nào mới ra đc ạ, em cám ơn nhiều ạ!
Nếu 16-11-2016<X<=15-12-2016 thì trả về giá trị là 1
Nếu 16-10-2016<X<=15-11-2016 thì trả về giá trị là 2
..........
Nếu 16-01-2016<X<=15-02-2016 thì trả về giá trị là 13
Nếu 16-12-2015<X<=15-01-2016 thì trả về giá trị là 14
gởi file lên để biết dữ liệu là dạng gì mới có cách giải quyết
 
bạn dùng hàm sumproduct như trong file mình gửi trong sheet tổng hợp cột chi lãi vnđ

sory mình hiểu nhầm ý của bạn. mà ko biết cách xóa reply :)
 

File đính kèm

Lần chỉnh sửa cuối:
bạn có thể chỉ ra ko đúng chỗ nào ko?
Cột H, "số ngày phép năm", phải đi thứ tự từ 1 đến 12.
Nếu lấy mốc cuối là ngày 15/12/2016 để tính phép năm cho niên độ 2016, thì những ai làm trước ngày 15/12/2015 đều được 14 ngày phép. Phải vậy không?

Nếu như khớp ý của bạn, thì dùng thử công thức sau:
Mã:
D2=IF(C2<=DATE(2015,12,15),14,DATEDIF(EOMONTH(C2,-1)+1,DATE(2016,12,15),"m")+(DAY(C2)<=15))
Fill xuống.

Chúc bạn ngày vui.
 
Cột H, "số ngày phép năm", phải đi thứ tự từ 1 đến 12.
Nếu lấy mốc cuối là ngày 15/12/2016 để tính phép năm cho niên độ 2016, thì những ai làm trước ngày 15/12/2015 đều được 14 ngày phép. Phải vậy không?

Nếu như khớp ý của bạn, thì dùng thử công thức sau:
Mã:
D2=IF(C2<=DATE(2015,12,15),14,DATEDIF(EOMONTH(C2,-1)+1,DATE(2016,12,15),"m")+(DAY(C2)<=15))
Fill xuống.

Chúc bạn ngày vui.

Ở trường hợp này đang tính số ngày phép năm của 2016, nên những ng vô năm 2015 bất kể là ngày nào nếu làm đến hết 31/12/2016 thì đều đc 14 ngày phép năm
 
ý bạn là ko theo thứ tự đúng ko? Nếu vậy thì là vì 1 năm nếu 1 ng làm đủ 12 tháng thì sẽ đc 14 ngày phép năm, 14/12=1.16 , lấy số tháng nhân vs 1.16 sẽ ra như trong bảng đó bạn
nếu vậy thì dùng công thức nhân hệ số 1.16 hay 14/12 gì đó tùy bạn, nhưng vẫn không tính được cho ngày 15-6-2015 như kết quả của bạn
Mã:
=MIN(ROUND(((DAY(C2)<=15)+(12-MONTH(C2))+(2016-YEAR(C2)-1)*12)*1.16,0),14)
 
nếu vậy thì dùng công thức nhân hệ số 1.16 hay 14/12 gì đó tùy bạn, nhưng vẫn không tính được cho ngày 15-6-2015 như kết quả của bạn
Mã:
=MIN(ROUND(((DAY(C2)<=15)+(12-MONTH(C2))+(2016-YEAR(C2)-1)*12)*1.16,0),14)

Ý của mình là dựa vào điều kiện bảng bên tay phải để dùng hàm điền vào bảng bên tay trái (bảng có mã số họ tên nhân viên) để biết đc dựa theo ngày vào của họ thì họ có đc bao nhiêu ngày phép năm
 
Ý của mình là dựa vào điều kiện bảng bên tay phải để dùng hàm điền vào bảng bên tay trái (bảng có mã số họ tên nhân viên) để biết đc dựa theo ngày vào của họ thì họ có đc bao nhiêu ngày phép năm
Bạn thử:

PHP:
D2=IFERROR(LOOKUP(2,1/(C2>=--$F$2:$F$13)/(C2<=--$G$2:$G$13),$H$2:$H$13),(C2<$F$13)*14)
Hoặc:
D2=IFERROR(OFFSET($H$1,MATCH(C2,INDEX(--$G$2:$G$13,),-1),)*(C2<>""),0)
Fill xuống.

Chúc bạn ngày vui.
 
Lần chỉnh sửa cuối:
Bạn thử:

PHP:
D2=IFERROR(LOOKUP(2,1/(C2>=--$F$2:$F$13)/(C2<=--$G$2:$G$13),$H$2:$H$13),(C2<$F$13)*14)
Hoặc:
D2=IFERROR(OFFSET($H$1,MATCH(C2,INDEX(--$G$2:$G$13,),-1),)*(C2<>""),0)
Fill xuống.

Chúc bạn ngày vui.

sao mình copy công thức của bạn xong fill xuống từ trên xuống dưới
công thức 1 toàn ra 14, công thức 2 toàn ra 0
 

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

Back
Top Bottom