Hỏi về công thức trừ thời gian( Giờ,Phút) (6 người xem)

Liên hệ QC

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

songthu10

Thành viên mới
Tham gia
20/1/11
Bài viết
17
Được thích
7
Chào các thành viên GPE
Tôi gặp khó khăn trong công thức trừ thời gian mà chưa tự giải quyết được.
thời gian bắt đầu: To: 9h00 From: 15h00
Bình thường công thức là : 9:00 - 15:00 = 6:00
Tuy nhiên tôi muốn trừ 1 tiếng nghỉ trưa để kết quả = 5:00 mà chưa tìm ra công thức.
Có file đính kèm
Mong mọi người chỉ giáo.
Cảm ơn
 

File đính kèm

Chào các thành viên GPE
Tôi gặp khó khăn trong công thức trừ thời gian mà chưa tự giải quyết được.
thời gian bắt đầu: To: 9h00 From: 15h00
Bình thường công thức là : 9:00 - 15:00 = 6:00
Tuy nhiên tôi muốn trừ 1 tiếng nghỉ trưa để kết quả = 5:00 mà chưa tìm ra công thức.
Có file đính kèm
Mong mọi người chỉ giáo.
Cảm ơn
bạn cần hiểu tận gốc là 9h = 9/24 của ngày. 15h là 15/24 của ngày
như vậy công thức của bạn cần trừ đi 1/24
=C6-B6-1/24
 
bạn cần hiểu tận gốc là 9h = 9/24 của ngày. 15h là 15/24 của ngày
như vậy công thức của bạn cần trừ đi 1/24
=C6-B6-1/24
Đâu có đơn giản thế! Thử các tình huống này nha:
From = 09:00 và To = 11:20
From = 09:00 và To = 12:20
From = 12:30 và To = 14:20
From = 12:00 và To = 12:30

From = 14:40 và To = 15:00
vân vân
Tôi nghĩ công thức phải là vầy:
PHP:
=(MIN("12:00",C6)-MIN(B6,"12:00"))+MAX(C6,"13:00")-MAX("13:00",B6)
 
Công thức của ndu không tính thời gian làm trong giờ nghỉ (thời gian này ít hơn 1 giờ)
Thí dụ 3 dòng sau:

From = 09:00 và To = 12:20 Kết quả 3:00 dù cho có làm thêm 20 phút
From = 12:30 và To = 14:20
Kết quả 1:20 dù cho bắt đầu làm sớm 30 phút
From = 12:00 và To = 12:30
Kết quả 0:00 mặc dù có làm 30 phút

Nếu có tính cả thời gian làm trong giờ nghỉ thì dùng công thức sau:

=C6-B6-(AND(C6>13/24,B6<0.5)/24)
 
Nếu có tính cả thời gian làm trong giờ nghỉ thì dùng công thức sau:

=C6-B6-(AND(C6>13/24,B6<0.5)/24)
Em nghĩ công thức này có vẻ không hợp lý lắm
Ví du:
From = 11:59 và To = 12:59 ===> Công thức của sư phụ cho kết quả = 1:00 ---> Tạm chấp nhận
From = 11:59 và To = 13:00 ===> Công thức của sư phụ cho kết quả = 1:01 ---> Tạm chấp nhận
Thế nhưng
From = 11:59 và To = 13:01 ===> Công thức của sư phụ cho kết quả = 0:02 ---> Hơi kỳ... vì cùng bắt đầu làm việc, kết thúc sau người ta 1 phút, vậy mà tổng giờ lại bị tính ít đi gần 1 tiếng đồng hồ (ai mà chịu)
Ẹc... Ẹc...
 
Sao em thấy nên làm như vầy thì hơn:

PHP:
=IF(C6>0.5,(C6-B6)-1/24,C6-B6)

Còn nếu người ta có làm thêm giờ (từ 12 đến 13 giờ) thì có một cột làm thêm thì mình lại cộng thêm số giờ làm thêm vào.
 
Sao em thấy nên làm như vầy thì hơn:

PHP:
=IF(C6>0.5,(C6-B6)-1/24,C6-B6)
Còn nếu người ta có làm thêm giờ (từ 12 đến 13 giờ) thì có một cột làm thêm thì mình lại cộng thêm số giờ làm thêm vào.
Công thức này không ra kết quả trong trường hợp From = 14:40 và To = 15:00
Tôi nghĩ yêu cầu của tác giả cũng rất đơn giản thôi mà: Tức là tính tổng giờ làm việc trừ giờ nghỉ trưa khi biết trước giờ bắt đầu và giờ kết thúc (đâu có gì phức tạp đến mức phải nghĩ xa hơn)
 
Lần chỉnh sửa cuối:
Công thức này không ra kết quả trong trường hợp From = 14:40 và To = 15:00
Tôi nghĩ yêu cầu của tác giả cũng rất đơn giản thôi mà: Tức là tính tổng giờ làm việc trừ giờ nghỉ trưa khi biết trước giờ bắt đầu và giờ kết thúc (đâu có gì phức tạp đến mức phải nghĩ xa hơn)

Thầy nói đúng rồi, chưa tính việc mà bắt đầu làm lúc sau 12g. Vậy "chơi" công thức này luôn thì tổng quát rồi:

PHP:
=IF(AND(B6<=0.5, C6>0.5), (C6-B6)-1/24, C6-B6)

P/s: mà toàn là người hướng dẫn bàn không à, chẳng nghe tác giả phát biểu gì nhỉ???
 
Thầy nói đúng rồi, chưa tính việc mà bắt đầu làm lúc sau 12g. Vậy "chơi" công thức này luôn thì tổng quát rồi:

PHP:
=IF(AND(B6<=0.5, C6>0.5), (C6-B6)-1/24, C6-B6)

P/s: mà toàn là người hướng dẫn bàn không à, chẳng nghe tác giả phát biểu gì nhỉ???
Làm việc từ 9:00 đến 12:00 thì tính tổng thời gian = 3:00
Làm việc từ 9:00 đến 12:01 thì tính tổng thời gian = 2:01
Là sao? Làm nhiều hơn nhưng bị tính ít hơn là bị kiện à nghen... Ẹc.. Ẹc...
 
Làm việc từ 9:00 đến 12:00 thì tính tổng thời gian = 3:00
Làm việc từ 9:00 đến 12:01 thì tính tổng thời gian = 2:01
Là sao? Làm nhiều hơn nhưng bị tính ít hơn là bị kiện à nghen... Ẹc.. Ẹc...

Tốt nhất là nên như vầy, tạo thêm 1 cột với tiêu đề RestTime, cột đó nếu ai có nghỉ trưa bao nhiêu giờ thì gán vào đó bấy nhiêu, rồi lấy cột To - cột Form - cột RestTime là xong. Nếu biểu mẫu không cho cột RestTime thì Hide cột đó là xong.
 

File đính kèm

Tốt nhất là nên như vầy, tạo thêm 1 cột với tiêu đề RestTime, cột đó nếu ai có nghỉ trưa bao nhiêu giờ thì gán vào đó bấy nhiêu, rồi lấy cột To - cột Form - cột RestTime là xong. Nếu biểu mẫu không cho cột RestTime thì Hide cột đó là xong.
Thì trong file người ta đã nói rõ rằng:
Tru 1 tieng nghi trua ( tu 12h-13h)
Vậy còn thêm cột phụ làm gì chứ! Tức là tính từ giờ bắt đầu đến giờ kết thúc nhưng trừ đi khoảng thời gian từ 12 giờ đến 13 giờ! Nếu khoảng thời gian làm việc không "đi xuyên qua" khoảng 12h-13h thì đương nhiên chẳng trừ bớt gì cả
Vậy thôi
 
Thì trong file người ta đã nói rõ rằng:
Vậy còn thêm cột phụ làm gì chứ! Tức là tính từ giờ bắt đầu đến giờ kết thúc nhưng trừ đi khoảng thời gian từ 12 giờ đến 13 giờ! Nếu khoảng thời gian làm việc không "đi xuyên qua" khoảng 12h-13h thì đương nhiên chẳng trừ bớt gì cả
Vậy thôi
Trường hợp làm thêm giờ thì sao Thầy, làm thông tầm luôn??? Đã bàn thì bàn nốt luôn vậy.
 
Trường hợp làm thêm giờ thì sao Thầy, làm thông tầm luôn??? Đã bàn thì bàn nốt luôn vậy.
Tôi không rành về mấy vụ nhân sự, kế toán nhưng tôi nghĩ thế này:
- Với 2 mốc thời gian cho trước, người ta sẽ tính ra giờ làm việc bình thường (chưa tăng ca)
- Nếu có tăng ca thì phải ghi chú ở chổ nào đó để biết
----------------
Vậy, với yêu cầu của tác giả topic này, tôi nghĩ rằng họ đang muốn tính tổng thời gian làm việc bình thường mà thôi ---> Đương nhiên nhìn vào mốc From và To thì không thể nào biết được ai có tăng ca đâu
 
Bàn chơi cho vui, chứ mình suy đoán vầy:
- Chỉ chấm công mỗi ngày 1 lần vào và 1 lần ra.
- Nếu làm sáng nghỉ chiều, hoặc làm chiều nghỉ sáng, thì không có nghỉ trưa, làm trưa gì cả
- Nếu làm cả ngày dù cho sáng đi trễ chiều về sớm, thì tính giờ bình thường (có trừ giờ nghỉ trưa)
Nghĩa là, công thức ndu (2 Max và 2 Min), đúng hơn cả.
 
Hì, thấy mắc cười quá hà.
Nếu cứ chiếu theo y nguyên file đính kèm mà tác giả gửi lên, hỏi là: "Có công thức nào trừ 1 tiếng nghỉ trưa để kết quả bằng 5 không"?
Thì tôi sẽ trả lời vầy: Có. Lấy công thức tính tổng trừ đi thêm 1/24.
Xong. Nghĩa là cái công thức của bebo021999 ở #2 là chính xác nhất!
Người ta đâu có nói gì đến chuyện nghỉ sớm vài phút, làm trễ vài phút, hay là thâm ca, thâm niên gì đâu mà phải ngồi nhức đầu cãi nhau hè?
 
Hè Hè, sao giống chuyện thấy bói xem voi quá hà; muốn biết con voi chính xác hình thù như thế nào thì phải mời chủ nó sáng mắt mô tả mới chính xác được chứ !
 
Xin cảm ơn anh ndu vì công thức ban đầu của Anh là giải quyết được khúc mắc của tôi.
 
=C6-B6-(AND(C6>13/24,B6<0.5)/24)
Công thức này là hợp lý. Bởi vì có làm thêm 1 phút cũng chẳng ai tính thêm như Thầy ndu cả
 
Chào các thành viên GPE
Tôi gặp khó khăn trong công thức trừ thời gian mà chưa tự giải quyết được.
thời gian bắt đầu: To: 9h00 From: 15h00
Bình thường công thức là : 9:00 - 15:00 = 6:00
Tuy nhiên tôi muốn trừ 1 tiếng nghỉ trưa để kết quả = 5:00 mà chưa tìm ra công thức.
Có file đính kèm
Mong mọi người chỉ giáo.
Cảm ơn

Với yêu cầu này, Tôi xin có phương pháp giải quyết vấn đề như sau:
1. nếu người làm từ 7h30 -> 16h30 thì trong đó có 1h nghỉ trưa, ta tính toán như sau:
số giờ làm = 16h30 - 7h30 - 1h
2. nếu người làm từ 13h00 -> 16h30 thì ta tính toán như sau:
số giờ làm = 16h30 - 13h00
từ đó ta có công thức tổng quát cho 2 trường hợp trên như sau: số giờ làm = if(and(hour(from)>12,hour(to)<12), (from - to - 1), from - to)
Hy vọng là giải quyết được vấn đề của bạn
 
Web KT

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

Back
Top Bottom