Giúp làm tròn giờ (1 người xem)

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

tueyennhi

Thành viên tích cực
Tham gia
18/10/10
Bài viết
1,192
Được thích
105
Mọi người cho em hỏi, em muốn làm tròn giờ theo điều kiện sau:

[TABLE="width: 325"]
[TR]
[TD]Nếu số phút từ 0 đến 14 làm tròn thành 0[/TD]
[/TR]
[TR]
[TD]Nếu số phút từ 15 đến 44 làm tròn thành 15[/TD]
[/TR]
[TR]
[TD]Nếu số phút từ 45 đến 59 làm tròn thành 45[/TD]
[/TR]
[/TABLE]


Thì sẽ phải làm như thế nào ạ? Em đã thử tách giờ và phút riêng sau đó xử lý làm tròn phút như mong muốn rồi ghép giờ và phút làm một bằng công thức :giờ&":"&phút
nhưng cột tính tổng giờ làm nó tính không đúng.
 

File đính kèm

Lần chỉnh sửa cuối:
Mọi người cho em hỏi, em muốn làm tròn giờ theo điều kiện sau:

[TABLE="width: 325"]
[TR]
[TD]Nếu số phút từ 0 đến 14 làm tròn thành 0[/TD]
[/TR]
[TR]
[TD]Nếu số phút từ 15 đến 44 làm tròn thành 15[/TD]
[/TR]
[TR]
[TD]Nếu số phút từ 45 đến 59 làm tròn thành 45[/TD]
[/TR]
[/TABLE]


Thì sẽ phải làm như thế nào ạ? Em đã thử tách giờ và phút riêng sau đó xử lý làm tròn phút như mong muốn rồi ghép giờ và phút làm một bằng công thức :giờ&":"&phút
nhưng cột tính tổng giờ làm nó tính không đúng.

Ví dụ thế này:
Mã:
=TIME(HOUR(A5),LOOKUP(MINUTE(A5),{0,15,45}),0)
Cũng không biết bạn định tính cho cột nào nữa? Tôi làm đại theo cột A
 
Mọi người cho em hỏi, em muốn làm tròn giờ theo điều kiện sau:

[TABLE="width: 325"]
[TR]
[TD]Nếu số phút từ 0 đến 14 làm tròn thành 0[/TD]
[/TR]
[TR]
[TD]Nếu số phút từ 15 đến 44 làm tròn thành 15[/TD]
[/TR]
[TR]
[TD]Nếu số phút từ 45 đến 59 làm tròn thành 45[/TD]
[/TR]
[/TABLE]


Thì sẽ phải làm như thế nào ạ? Em đã thử tách giờ và phút riêng sau đó xử lý làm tròn phút như mong muốn rồi ghép giờ và phút làm một bằng công thức :giờ&":"&phút
nhưng cột tính tổng giờ làm nó tính không đúng.
Có hàm FLOOR để làm việc này đó bạn:

=FLOOR(A5,15/1440)

Với A5 là ô muốn đổi
15/1440 đại diện cho 15 phút.
 
Ví dụ thế này:
Mã:
=TIME(HOUR(A5),LOOKUP(MINUTE(A5),{0,15,45}),0)
Cũng không biết bạn định tính cho cột nào nữa? Tôi làm đại theo cột A

À vâng xin lỗi thầy em sơ xuất quá. Công thức trên rất tốt với tính giờ về, còn giờ đi vì làm tròn theo hướng ngược lại tức là nếu phút giờ đến từ 0 đến 15 thì là 15, nếu phút đến từ 16 đến 30 thì là 30 còn nếu từ 31 đến 45 thì là 45 còn nếu từ 46 đến 59 thì làm tròn thành không và trường hợp này giờ sẽ cộng thêm 1.
 
À vâng xin lỗi thầy em sơ xuất quá. Công thức trên rất tốt với tính giờ về, còn giờ đi vì làm tròn theo hướng ngược lại tức là nếu phút giờ đến từ 0 đến 15 thì là 15, nếu phút đến từ 16 đến 30 thì là 30 còn nếu từ 31 đến 45 thì là 45 còn nếu từ 46 đến 59 thì làm tròn thành không và trường hợp này giờ sẽ cộng thêm 1.

Áp dụng bài 3, thay FLOOR bằng CEILING
Mã:
=CEILING(A5,1/96)
 
Hay quá, cảm ơn thầy ndu và bạn bebo021999 !
 
Cho em hỏi thêm 15/1440 với 1/96 thực ra vẫn là một nhưng tại sao lại như vậy ạ?
 
Cho em hỏi thêm 15/1440 với 1/96 thực ra vẫn là một nhưng tại sao lại như vậy ạ?

Ta luôn luôn (và bắt buộc) lấy NGÀY làm đơn vị. Ta có:
1 ngày = 24 giờ
1 giờ = 60 phút
==> 1 ngày = 60*24 = 1440 phút ==> 1 phút = 1/1440 ngày ===> 15 phút = 15/1440 = 1/96
thế thôi
 
Cho em hỏi thêm 15/1440 với 1/96 thực ra vẫn là một nhưng tại sao lại như vậy ạ?

Hàm CEILING(number,significance): Rounds a number up, to the nearest multiple of significance
Làm tròn lên (tăng) giá trị cho trước, đến bội số có nghĩa gần nhất.

1 ngày = 24 giờ | 1 giờ = 60 phút

Bội số cần làm tròn đến ở đây là 15 phút.
Đổi giờ trong 1 ngày ra phút: 15/60/24 = 15/1440 = 1/96

-------
Gửi xong thấy bài trên...
 
Vâng em mới thử chia 1/96 và đổi sang phút thì đúng là 15 phút :). Hôm nay học được nhiều thứ quá, cảm ơn thầy ạ!

* Nút Cảm ơn của em sao không có nhỉ :(
 
Lần chỉnh sửa cuối:

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

Back
Top Bottom