Tính tổng số nhân viên có thời gian làm việc lớn hơn 3 tháng.

  • Thread starter Thread starter hoasao
  • Ngày gửi Ngày gửi
Liên hệ QC

hoasao

Thành viên mới
Tham gia
6/1/08
Bài viết
2
Được thích
0
Chào các bác ! Các bác giúp em với! hichic
Em có một cột ghi ngày vào của nhân viên. Em muốn tính tổng số nhân viên trong thời điểm hiện tại có thời gian làm việc lớn hơn 3 tháng. Em nghi hoài mà không bít làm sao nhờ các bác chỉ bảo rùm.
Các bác lưu ý em đã dùng hàm dateif để tìm ra những nhân viên làm việc lớn hơn 3 tháng rùi.
 
Chào các bác ! Các bác giúp em với! hichic
Em có một cột ghi ngày vào của nhân viên. Em muốn tính tổng số nhân viên trong thời điểm hiện tại có thời gian làm việc lớn hơn 3 tháng. Em nghi hoài mà không bít làm sao nhờ các bác chỉ bảo rùm.
Các bác lưu ý em đã dùng hàm dateif để tìm ra những nhân viên làm việc lớn hơn 3 tháng rùi.
=if(dateif(...)>2,1,0)
Cuối cùng sum(...) => số ng làm > 3 tháng
 
Bạn dùng hàm countif hoặc sumproduct.
 

File đính kèm

Các anh cho em hỏi các anh xài hàm datedif để chỉ ra số tháng của ngày đầu, ngày cuối. Tuy nhiên em chưa hiểu tại sao xài datedif trong trường hợp này.

Nguyên văn bởi hoasao
Chào các bác ! Các bác giúp em với! hichic
Em có một cột ghi ngày vào của nhân viên. Em muốn tính tổng số nhân viên trong thời điểm hiện tại có thời gian làm việc lớn hơn 3 tháng. Em nghi hoài mà không bít làm sao nhờ các bác chỉ bảo rùm.
Các bác lưu ý em đã dùng hàm dateif để tìm ra những nhân viên làm việc lớn hơn 3 tháng rùi.

Các anh xem thử:
=datedif("28/12/2007","23/04/2008","m") = 3

Như vậy có quá đáng không khi người ta đi làm gần 4 tháng mà không tính vào.
 
ai? đã viết:
ai? đã viết:
=datedif("28/12/2007","23/04/2008","m") = 3

Như vậy có quá đáng không khi người ta đi làm gần 4 tháng mà không tính vào.

Hàm DatedIf là lấy số nguyên: nguyên năm, nguyên tháng, nguyên ngày.
3 tháng 29 ngày cũng chỉ là 3 giống như 3 tháng chẵn hay 3 tháng 1 ngày. Cho nên mình có lần ước làm sếp để cộng 1 vào công thức cho các em nó nhờ.

Và vì mình chưa làm sếp nên tính cách này:
=(If(date2 - date1)/30>=3,"OK thưởng","lần sau")
Sếp chắc không đến nỗi bắt bẻ tháng 30 với 31.
 
Các anh cho em hỏi các anh xài hàm datedif để chỉ ra số tháng của ngày đầu, ngày cuối. Tuy nhiên em chưa hiểu tại sao xài datedif trong trường hợp này.

Nguyên văn bởi hoasao
Chào các bác ! Các bác giúp em với! hichic
Em có một cột ghi ngày vào của nhân viên. Em muốn tính tổng số nhân viên trong thời điểm hiện tại có thời gian làm việc lớn hơn 3 tháng. Em nghi hoài mà không bít làm sao nhờ các bác chỉ bảo rùm.
Các bác lưu ý em đã dùng hàm dateif để tìm ra những nhân viên làm việc lớn hơn 3 tháng rùi.

Các anh xem thử:
=datedif("28/12/2007","23/04/2008","m") = 3

Như vậy có quá đáng không khi người ta đi làm gần 4 tháng mà không tính vào.

Bác ơi, thêm hàm MOD để tính số dư sau khi chia số ngày cho 30 là okie mà???
 
Các anh cho em hỏi các anh xài hàm datedif để chỉ ra số tháng của ngày đầu, ngày cuối. Tuy nhiên em chưa hiểu tại sao xài datedif trong trường hợp này.

Các anh xem thử:
=datedif("28/12/2007","23/04/2008","m") = 3

Như vậy có quá đáng không khi người ta đi làm gần 4 tháng mà không tính vào.
Nếu bạn muốn tính theo cách này thì đầu tiên biến 28/12/2007 thành ngày 1/12/2007 và biến 23/04/2008 thành ngày 1/04/2008 rồi dùng DATEDIF là xong... chứ ko nên nhân chia với 30 hay 365 gì gì đó... hoàn toàn ko chính xác đâu:
=DATEDIF(DATE(YEAR(A1),MONTH(A1),1),DATE(YEAR(B1),MONTH(B1),1),"M")
Thử xem nhé!
ANH TUẤN
 
Nếu bạn muốn tính theo cách này thì đầu tiên biến 28/12/2007 thành ngày 1/12/2007 và biến 23/04/2008 thành ngày 1/04/2008 rồi dùng DATEDIF là xong... chứ ko nên nhân chia với 30 hay 365 gì gì đó... hoàn toàn ko chính xác đâu:
=DATEDIF(DATE(YEAR(A1),MONTH(A1),1),DATE(YEAR(B1),MONTH(B1),1),"M")
Thử xem nhé!
ANH TUẤN

Về mặt thực tế thì mình đã cố tình đưa thông tin sai. Vì ngày vào làm việc thực tế là 28/12/2007 chứ không phải là 01/12/2007 và ngày thực tế làm mốc để tính là ngày hiện hành (trong trường hợp này là ngày 23/04/2008) chứ không phải ngày 01/04/2008.

Mặc khác công thức của anh ANHTUAN cho kết quả là 4 nhưng thực tế họ chưa làm đủ 4 tháng. Nếu yêu cầu lọc những người làm việc từ 4 tháng trở lên thì ở đây cho ra kết quả sai.

Theo em công thức
=(Ngày cuối - ngày đầu +1)*12/365 là tổng quát nhất và cho kết quả chính xác nhất, dễ hiểu nhất và gọn nhất.
 
Lần chỉnh sửa cuối:
Theo em công thức
=(Ngày cuối - ngày đầu +1)*12/365 cho kết quả chính xác nhất.
Chính xác thì 1 năm có 365.25 ngày ;
Tiếp, nếu vậy số ngày trong tháng sẽ là: 30.4375

Công thức của chúng ta lúc đó sẽ là:
= INT((TODAY() -[NgayBD] +1)/30.4375)
Hồi xưa đến nay, khi chưa thấy =DATEDIF() mình toàn dùng cái này (Cộng 1 là theo tinh thần của Bộ Luật Lao Động, hễ cái gì có lợi cho CNLĐ thì làm!)
 
úi trời các bác cho em hỏi ?"M" Là gì vây ?
thánk!
em mói vào nghề thui ....
 
Ko chính xác đâu... nói chung cho dù có nhân chia bao nhiêu cũng ko chính xác... Trong trường hợp các bạn tính trong 1 khoảng thời gian ngắn thì chẳng qua là tự mình chấp nhận sai số nhỏ mà thôi..
Cái chuyện như thế nào là 1 tháng tròn là tùy vào quan điểm của mổi nơi.. cái đó thật sự đâu có quan trọng... Miển sao ta tính thật chính xác theo yêu câu là dc rồi...
Tóm lại vẫn là DATEDIF, còn ko thì mãng...
ANH TUẤN
 
Web KT

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

Back
Top Bottom