Cách Trừ Giờ Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao

1. Giới thiệu tổng quan về thời gian trong Excel

Excel không chỉ là công cụ tính toán số học thông thường, mà còn hỗ trợ mạnh mẽ trong việc xử lý dữ liệu thời gian – ngày, giờ, phút, giây. Khi làm việc với bảng chấm công, lịch làm việc, dự án hay bất kỳ bảng tính nào liên quan đến thời gian, việc trừ giờ là một thao tác thường xuyên và quan trọng.

Trong Excel, ngày và giờ được lưu trữ dưới dạng số thập phân:
– 1 ngày = 1 (số nguyên).
– 1 giờ = 1/24 ≈ 0.0416667.
– 1 phút = 1/1440 ≈ 0.00069444.
– 1 giây = 1/86400 ≈ 0.00001157.

Hiểu được cách Excel biểu diễn thời gian sẽ giúp bạn thực hiện các phép toán trừ giờ một cách chính xác, tránh lỗi “#VALUE!” hoặc hiển thị sai định dạng.

2. Các phương pháp trừ giờ cơ bản

2.1. Dùng phép trừ trực tiếp giữa hai ô chứa thời gian

Giả sử ô A2 chứa thời gian bắt đầu (08:30) và ô B2 chứa thời gian kết thúc (17:45). Để tính thời gian làm việc, bạn chỉ cần:

=B2 - A2

Kết quả sẽ là 09:15 (9 giờ 15 phút) nếu định dạng ô là hh:mm. Để hiển thị dưới dạng số thập phân giờ, bạn có thể:

=(B2 - A2) 24

2.2. Trừ giờ với ngày (khi thời gian vượt qua ngày hôm sau)

Nếu công việc bắt đầu vào ngày hôm trước và kết thúc sau nửa đêm, ví dụ: A2 = 22:00 (ngày 1) và B2 = 02:00 (ngày 2). Khi trừ trực tiếp, Excel sẽ cho ra giá trị âm (-20:00). Để khắc phục:

=IF(B2 < A2, B2 + 1 - A2, B2 - A2)

Ở đây, +1 đại diện cho một ngày (24 giờ). Kết quả sẽ là 04:00 (4 giờ).

2.3. Trừ giờ với phần ngày (khi có cả ngày và giờ)

Nếu ô A2 chứa ngày và giờ (2026-04-01 09:00) và B2 chứa ngày và giờ (2026-04-03 15:30), công thức:

=B2 - A2

Sẽ trả về 2.270833 (2 ngày + 6,5 giờ). Để hiển thị dạng “2 ngày 6 giờ 30 phút”:

=INT(B2-A2) & " ngày " & TEXT(B2-A2,"hh"" giờ ""mm"" phút""")

3. Định dạng ô để hiển thị kết quả đúng

3.1. Định dạng thời gian chuẩn

  • hh:mm – hiển thị giờ và phút.
  • hh:mm – hiển thị tổng số giờ vượt quá 24 (đặc biệt hữu ích khi tổng thời gian làm việc > 24 giờ).
  • hh:mm:ss – hiển thị giờ, phút, giây, cho phép tổng giờ > 24.

Lưu ý: Khi dùng dấu ngoặc vuông hh, Excel sẽ không “quy đổi” 24 giờ thành 0, mà giữ nguyên giá trị giờ thực tế.

3.2. Định dạng số thập phân giờ

Nếu muốn kết quả ở dạng số thập phân (ví dụ: 9,25 giờ thay vì 09:15), áp dụng định dạng General hoặc Number và nhân kết quả với 24:

=(B2 - A2) 24

Bạn có thể tùy chỉnh số chữ số thập phân bằng cách vào Home → Number → Increase Decimal.

4. Các công thức nâng cao để trừ giờ

4.1. Trừ giờ có tính đến ngày nghỉ (holiday)

Giả sử bạn có danh sách ngày nghỉ trong phạm vi H2:H10. Để tính thời gian làm việc thực tế giữa A2 và B2, bỏ qua ngày nghỉ, bạn có thể dùng hàm NETWORKDAYS (hoặc NETWORKDAYS.INTL cho lịch làm việc tùy chỉnh).

=NETWORKDAYS.INTL(A2, B2, "0000011", $H$2:$H$10) - 1

Giải thích:
– "0000011" chỉ định ngày làm việc từ Thứ Hai đến Thứ Sáu (0 = làm việc, 1 = nghỉ).
– Trừ 1 để loại bỏ ngày bắt đầu nếu không muốn tính toàn bộ ngày.

Sau khi có số ngày làm việc, nhân với số giờ làm việc mỗi ngày (ví dụ 8 giờ):

=NETWORKDAYS.INTL(A2, B2, "0000011", $H$2:$H$10) 8

4.2. Trừ giờ có tính đến giờ làm việc trong ngày (shift)

Nếu công ty có ca làm việc 08:00‑12:00 và 13:00‑17:00, và bạn muốn tính thời gian làm việc thực tế giữa 2 thời điểm, cần loại bỏ thời gian nghỉ trưa và ngoài ca. Một cách tiếp cận là dùng hàm MAX và MIN để cắt các khoảng thời gian ra.

Cách Trừ Giờ Trong Excel
Cách Trừ Giờ Trong Excel
=SUM( MAX(0, MIN(B2, TIME(12,0,0)) - MAX(A2, TIME(8,0,0))), MAX(0, MIN(B2, TIME(17,0,0)) - MAX(A2, TIME(13,0,0)))
)

Kết quả trả về dạng ngày (số thập phân). Để chuyển sang giờ:

=SUM( MAX(0, MIN(B2, TIME(12,0,0)) - MAX(A2, TIME(8,0,0))), MAX(0, MIN(B2, TIME(17,0,0)) - MAX(A2, TIME(13,0,0)))
) 24

4.3. Trừ giờ bằng hàm DATEDIF (đối với ngày)

Mặc dù DATEDIF không hỗ trợ giờ, bạn có thể kết hợp với hàm INT để lấy phần ngày:

=DATEDIF(A2, B2, "d") & " ngày " & TEXT(B2-A2, "hh"" giờ ""mm"" phút")

4.4. Sử dụng TEXT để hiển thị kết quả tùy chỉnh

Nếu muốn kết quả dạng “9 giờ 15 phút”:

=INT((B2-A2)24) & " giờ " & TEXT((B2-A2),"mm") & " phút"

Hoặc nếu muốn hiển thị “9.25 giờ” (giờ thập phân):

=ROUND((B2-A2)24,2) & " giờ"

5. Thực hành: Xây dựng bảng chấm công tự động

5.1. Bố cục bảng

Nhân viênNgàyGiờ vàoGiờ raTổng giờ làmGhi chú
A01/05/202608:1517:05
B01/05/202609:0018:30

5.2. Công thức tính tổng giờ làm

Giả sử cột C là Giờ vào, D là Giờ ra, E là Tổng giờ làm.

E2 = IF(D2 < C2, D2 + 1 - C2, D2 - C2)

Sau đó, định dạng cột E là hh:mm để hiển thị tổng giờ vượt qua 24 nếu có.

55.3. Tính tiền lương dựa trên tổng giờ

Giả sử mức lương giờ là 150,000 VND (ô G1). Công thức tính tiền lương:

=E2 24 $G$1

Định dạng cột F là Currency (đơn vị VND).

5.4. Xử lý trường hợp nhân viên làm qua đêm

Nếu một nhân viên bắt đầu vào lúc 22:00 và kết thúc vào 06:00 ngày hôm sau, công thức trong E2 đã xử lý bằng cách cộng 1 ngày. Đảm bảo rằng Giờ vào và Giờ ra luôn là kiểu Time, không có ngày đi kèm, để công thức hoạt động đúng.

6. Các lỗi thường gặp khi trừ giờ và cách khắc phục

LỗiNguyên nhânCách khắc phục
#VALUE!Ô chứa dữ liệu không phải dạng thời gian (ví dụ: chuỗi “08:30am” không được nhận dạng)Đảm bảo ô được định dạng là Time hoặc dùng hàm TIMEVALUE để chuyển chuỗi thành thời gian.
-#NUM! (giá trị âm)Giờ ra nhỏ hơn giờ vào mà không cộng thêm ngàySử dụng công thức IF(B2 < A2, B2 + 1 - A2, B2 - A2) hoặc kiểm tra lại dữ liệu nhập.
Hiển thị 00:00 thay vì 24:00Định dạng hh:mm tự động quy đổi 24 giờ thành 0.Dùng định dạng hh:mm để hiển thị 24 giờ đúng.
Kết quả 0.99999 thay vì 1Lỗi làm tròn do số thập phân không chính xác.Dùng hàm ROUND, ROUNDUP hoặc ROUNDDOWN tùy nhu cầu.
Không tính được thời gian làm việc khi có ngày nghỉCông thức chỉ trừ giờ, không xét ngày.Sử dụng NETWORKDAYS hoặc WORKDAY.INTL để loại trừ ngày nghỉ.

7. Mẹo và thủ thuật nâng cao

7.1. Sử dụng Power Query để xử lý khối lượng lớn

Khi dữ liệu thời gian nằm trong hàng nghìn, việc dùng công thức trên mỗi hàng có thể làm file chậm. Power Query cho phép:

  1. Nhập dữ liệu vào Power Query.
  2. Chuyển đổi cột thời gian thành kiểu Duration.
  3. Tạo cột tùy chỉnh: Duration.From(Giờ ra - Giờ vào) (công thức M).
  4. Tải lại kết quả về Excel.

7.2. Tự động cộng ngày khi trừ giờ qua đêm bằng Custom Format

Nếu bạn luôn có trường hợp làm việc qua đêm, bạn có thể tạo định dạng tùy chỉnh cho ô Giờ ra:

h:mm;Red-h:mm

Khi giá trị âm xuất hiện, Excel sẽ hiển thị màu đỏ và giá trị âm, giúp bạn nhanh chóng nhận ra lỗi nhập liệu.

7.3. Sử dụng VBA để trừ giờ phức tạp

Đối với các quy tắc tính giờ phức tạp (ví dụ: tính giờ làm thêm, tính giờ làm việc theo ca), bạn có thể viết macro:

Function CalcWorkHours(StartTime As Date, EndTime As Date) As Double Dim diff As Double If EndTime < StartTime Then diff = (EndTime + 1) - StartTime Else diff = EndTime - StartTime End If CalcWorkHours = diff 24 ' trả về số giờ thập phân
End Function

Sau khi lưu macro, bạn gọi trong ô:

=CalcWorkHours(C2, D2)

8. Tổng kết

Việc trừ giờ trong Excel không chỉ là một phép tính đơn giản mà còn mở ra nhiều khả năng xử lý dữ liệu thời gian phức tạp. Từ các công thức cơ bản =B2-A2 đến các hàm nâng cao như NETWORKDAYS, WORKDAY.INTL, hay thậm chí VBA, bạn có thể tùy biến để đáp ứng mọi yêu cầu thực tiễn: chấm công, tính lương, quản lý dự án, hay lập kế hoạch sản xuất.

Các bước quan trọng cần nhớ

  1. Hiểu cách Excel lưu trữ ngày và giờ (1 ngày = 1, 1 giờ = 1/24).
  2. Định dạng ô đúng (hh:mm, hh:mm, hoặc số thập phân).
  3. Xử lý trường hợp qua đêm bằng cách cộng 1 ngày khi giờ ra < giờ vào.
  4. Sử dụng hàm hỗ trợ (NETWORKDAYS, WORKDAY.INTL) để tính ngày làm việc và loại trừ ngày nghỉ.
  5. Kiểm tra lỗi và áp dụng các biện pháp khắc phục (định dạng, hàm IF, ROUND).
  6. Áp dụng Power Query hoặc VBA khi dữ liệu lớn hoặc quy tắc tính phức tạp.

Bằng cách nắm vững các kiến thức trên, bạn sẽ tự tin thực hiện bất kỳ phép trừ giờ nào trong Excel, đồng thời tối ưu hoá quy trình làm việc, giảm thiểu sai sót và nâng cao hiệu suất. Chúc bạn thành công trong việc quản lý thời gian và dữ liệu!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận