Tính số ngày giữa hai mốc thời gian bằng tay thường dẫn đến sai số. Tôi từng count ngày trên calendar, quên tháng nhuận, hoặc nhầm số ngày trong tháng. Khi phải tính khoảng cách từ 15/03/2024 đến 28/09/2024, việc đếm thủ công mất 5 phút và kết quả sai 2 ngày. Excel 2013 có hàm DAYS giải quyết vấn đề này trong 3 giây.

Cú pháp hàm DAYS trong Excel 2013
Hàm DAYS xuất hiện lần đầu trong Excel 2013 và trả về số ngày giữa hai ngày tháng. Cú pháp đơn giản với hai tham số bắt buộc.
Cú pháp chuẩn:
=DAYS(end_date, start_date)
Trong đó:
end_date: Ngày kết thúc (ngày sau)start_date: Ngày bắt đầu (ngày trước)
Excel tự động trừ ngày bắt đầu khỏi ngày kết thúc. Nếu end_date nhỏ hơn start_date, kết quả trả về số âm. Hàm chấp nhận cả định dạng ngày trực tiếp trong dấu ngoặc kép hoặc tham chiếu đến ô chứa dữ liệu ngày.
Nhập công thức với giá trị ngày trực tiếp
Cách đơn giản nhất là nhập ngày tháng trực tiếp vào công thức. Excel tự động nhận diện định dạng ngày theo cài đặt máy tính.
Ví dụ tính khoảng cách từ 30/04/2021 đến 15/06/2021:
Bước 1: Click vào ô trống bất kỳ nơi bạn muốn hiển thị kết quả.
Bước 2: Nhập công thức =DAYS("6/15/21","4/30/21") vào ô đó.
Bước 3: Nhấn Enter để xem kết quả.
Kết quả hiển thị 46 ngày. Lưu ý định dạng ngày tháng phụ thuộc vào cài đặt hệ thống. Nếu máy bạn dùng định dạng ngày/tháng/năm thay vì tháng/ngày/năm, Excel vẫn hiểu đúng miễn bạn nhập theo định dạng của máy. Công thức trên dùng định dạng tháng/ngày/năm phổ biến ở Mỹ.
Sử dụng ô tham chiếu cho dữ liệu linh hoạt
Thay vì nhập ngày cố định, tham chiếu đến ô chứa dữ liệu giúp công thức tự động cập nhật khi ngày thay đổi. Phương pháp này phù hợp cho báo cáo định kỳ hoặc file dùng nhiều lần.
Giả sử ô B3 chứa ngày bắt đầu 01/03/2024 và ô C3 chứa ngày kết thúc 15/03/2024.
Các bước thực hiện:
Bước 1: Click vào ô D3 nơi hiển thị kết quả.
Bước 2: Nhập công thức =DAYS(C3,B3).
Bước 3: Nhấn Enter để tính toán.
Ô D3 hiển thị 14 ngày. Khi bạn thay đổi giá trị trong B3 hoặc C3, kết quả tự động cập nhật mà không cần nhập lại công thức. Kéo góc phải dưới của ô D3 xuống các dòng bên dưới để áp dụng công thức cho nhiều cặp ngày cùng lúc. Excel tự động điều chỉnh tham chiếu ô cho mỗi dòng.
Tôi dùng phương pháp này cho bảng tính lương với 50 nhân viên. Thay vì tính từng người, công thức copy xuống trong 2 giây và tự động cập nhật mỗi tháng.
Khắc phục lỗi thường gặp với hàm DAYS
Hàm DAYS trả về lỗi trong một số trường hợp cụ thể. Hiểu nguyên nhân giúp fix nhanh mà không phải đoán mò.
Lỗi #VALUE!
Xuất hiện khi một trong hai tham số không phải định dạng ngày hợp lệ. Excel không thể chuyển đổi text thành ngày.
Nguyên nhân phổ biến:
- Nhập ký tự không hợp lệ:
=DAYS("ABC", B3) - Định dạng ngày sai:
=DAYS("32/13/2024", B3)(không tồn tại ngày 32 hoặc tháng 13) - Ô chứa text thay vì ngày
Cách khắc phục:
- Kiểm tra định dạng ô chứa ngày: Click chuột phải > Format Cells > chọn Date
- Xóa ký tự thừa hoặc sửa lại ngày tháng hợp lệ
- Dùng hàm DATEVALUE để convert text sang date nếu cần
Lỗi #NUM!
Xuất hiện khi ngày tháng nằm ngoài phạm vi Excel hỗ trợ. Excel lưu ngày dưới dạng số serial từ 01/01/1900 đến 31/12/9999.
Trường hợp gây lỗi:
- Ngày trước 01/01/1900
- Ngày sau 31/12/9999
- Serial number âm
Giải pháp:
- Verify ngày nằm trong phạm vi 1900-9999
- Check công thức có tính toán sinh ra ngày không hợp lệ
Lỗi #NAME?
Thường do gõ sai tên hàm. Excel không nhận diện và báo lỗi.
Fix đơn giản:
- Sửa
=DAY()thành=DAYS()(thiếu chữ S) - Sửa
=DAYZ()thành=DAYS()(gõ sai chữ cái)
Kiểm tra tên hàm luôn viết hoa và đúng chính tả. Excel 2013 có gợi ý tự động khi gõ hàm giúp tránh lỗi này.
Kết hợp hàm DAYS với các hàm khác
Hàm DAYS mạnh hơn khi kết hợp với hàm Excel khác để tạo công thức phức tạp.
Tính số ngày dương với hàm ABS
Khi end_date nhỏ hơn start_date, DAYS trả về số âm. Hàm ABS (giá trị tuyệt đối) đảm bảo kết quả luôn dương.
=ABS(DAYS(B3,C3))
Công thức này hữu ích khi không chắc thứ tự ngày nhưng chỉ cần biết khoảng cách.
Tính số ngày từ hôm nay với TODAY
Kết hợp DAYS và TODAY để tính ngày còn lại đến deadline hoặc ngày đã qua kể từ sự kiện.
=DAYS(C3,TODAY())
C3 chứa ngày deadline. Công thức tự động cập nhật mỗi ngày mà không cần chỉnh sửa. Nếu C3 là 31/12/2024 và hôm nay là 15/10/2024, kết quả là 77 ngày.
Tính năm công tác từ số ngày
Chia kết quả DAYS cho 365 để convert sang năm. Dùng cho tính thâm niên nhân viên.
=DAYS(TODAY(),D2)/365
D2 chứa ngày vào làm. Nếu nhân viên làm từ 01/01/2020 đến nay (15/10/2024), công thức trả về 4.79 năm. Làm tròn bằng hàm ROUND nếu cần số nguyên.
Kết hợp với VLOOKUP cho báo cáo tự động
Lookup ngày từ bảng khác rồi tính khoảng cách.
=DAYS(VLOOKUP(A2,Table1,2,FALSE),B2)
A2 chứa mã dự án, Table1 là bảng dữ liệu với cột 2 chứa ngày deadline. B2 là ngày bắt đầu. Công thức tự động tìm deadline và tính số ngày còn lại cho từng dự án.
Tôi dùng công thức này cho 30 dự án. Thay vì cập nhật thủ công, file tự động tính và highlight dự án gần deadline bằng Conditional Formatting.
Tương thích và phiên bản
Hàm DAYS hoạt động trên Excel 2013 và các phiên bản mới hơn bao gồm Excel 2016, 2019, 2021 và Excel 365. Nếu dùng Excel 2010 hoặc cũ hơn, hàm này không có sẵn.
Giải pháp cho phiên bản cũ:
- Dùng công thức trừ trực tiếp:
=C3-B3 - Kết hợp hàm DATE và DATEVALUE nếu cần xử lý text
Hàm DAYS được thiết kế để thay thế phương pháp trừ thủ công với syntax rõ ràng hơn. Cả hai cho kết quả giống nhau nhưng DAYS dễ đọc hơn khi xem lại công thức sau vài tháng.
Định dạng kết quả hiển thị
Sau khi tính toán, ô kết quả có thể hiển thị sai định dạng. Thay vì số ngày, Excel đôi khi show ngày tháng như 01/01/1900.
Chuyển về định dạng số:
Bước 1: Click chuột phải vào ô kết quả.
Bước 2: Chọn Format Cells.
Bước 3: Trong tab Number, chọn General hoặc Number.
Bước 4: Click OK.
Ô hiển thị đúng số ngày thay vì serial date. Nếu cần làm tròn hoặc bỏ số thập phân, chọn Number và đặt Decimal places về 0.
Kiểm tra kết quả với công cụ có sẵn
Excel 2013 có Data Analysis features giúp verify kết quả hàm DAYS. Mở file với cột ngày bắt đầu, ngày kết thúc và kết quả DAYS. Dùng Quick Analysis (Ctrl + Q) để tạo chart timeline nhanh kiểm tra visual logic ngày tháng có hợp lý không.
Hoặc dùng Evaluate Formula trong tab Formulas > Formula Auditing để xem từng bước tính toán. Tool này show Excel đang xử lý công thức như thế nào và giúp catch lỗi logic.
Ứng dụng hàm DAYS trong công việc thực tế
Hàm DAYS không chỉ tính ngày mà còn là nền tảng cho nhiều báo cáo quan trọng.
Tính lương theo ngày công:
=(DAYS(C3,B3)/30)*MucLuongThang
C3 là ngày cuối tháng, B3 là ngày vào làm trong tháng. Chia 30 để ra tỷ lệ tháng rồi nhân với lương.
Tracking deadline dự án:
=IF(DAYS(DeadlineDate,TODAY())<7,"Urgent","Normal")
Tự động gắn nhãn Urgent cho dự án còn dưới 7 ngày.
Tính tuổi chính xác:
=DAYS(TODAY(),NgaySinh)/365.25
Chia 365.25 thay vì 365 để tính cả năm nhuận.
Báo cáo nợ quá hạn:
=DAYS(TODAY(),NgayDaoHan)
Số dương là quá hạn bao nhiêu ngày. Dùng Conditional Formatting tô đỏ ô có giá trị >30 để highlight nợ xấu.
Các lỗi ít gặp nhưng cần biết
Ngoài ba lỗi chính, có vài trường hợp đặc biệt.
Excel không nhận diện định dạng ngày khu vực:
- Máy tính cài đặt định dạng Việt Nam (dd/mm/yyyy) nhưng file từ Mỹ dùng (mm/dd/yyyy)
- Excel hiểu sai 03/05/2024 là ngày 3 tháng 5 thay vì 5 tháng 3
- Fix: File > Options > Advanced > cuộn xuống Use system separators > đảm bảo tích chọn đúng
Ô merge làm công thức lỗi:
- Nếu B3:B5 được merge, công thức
=DAYS(C3,B3)có thể báo lỗi hoặc trả về 0 - Unmerge cells trước khi dùng DAYS
Protected sheet không cho chỉnh sửa:
- Nếu worksheet bị protect, không thể nhập công thức mới
- Review > Unprotect Sheet trước khi làm việc
So sánh DAYS với phương pháp cũ
Trước Excel 2013, người dùng tính bằng cách trừ trực tiếp hoặc dùng DATEDIF. Mỗi phương pháp có ưu nhược điểm.
Phương pháp trừ trực tiếp:
=C3-B3
Ưu điểm: Ngắn gọn, work trên mọi phiên bản Excel từ 2003.
Nhược điểm: Không rõ nghĩa khi đọc công thức. Sáu tháng sau nhìn lại không nhớ C3 và B3 là gì.
Hàm DATEDIF:
=DATEDIF(B3,C3,"D")
Ưu điểm: Có thể tính ngày, tháng, năm tuỳ chọn bằng tham số thứ ba.
Nhược điểm: Hàm ẩn, không có trong danh sách gợi ý của Excel. Syntax khó nhớ.
Hàm DAYS:
=DAYS(C3,B3)
Ưu điểm: Syntax rõ ràng, có gợi ý khi gõ, dễ đọc dễ maintain.
Nhược điểm: Chỉ có từ Excel 2013 trở đi.
Cho projects mới trên Excel 2013+, DAYS là lựa chọn tốt nhất về readability và maintenance. Files cần backward compatibility với Excel 2010 trở xuống nên dùng phương pháp trừ trực tiếp.
Tối ưu performance với nhiều dòng dữ liệu
Khi tính DAYS cho 10,000+ dòng, file có thể chậm. Một vài tips tăng tốc.
Tắt automatic calculation tạm thời: Formulas > Calculation Options > Manual
Nhập xong công thức rồi bấm F9 để calculate một lần. Tiết kiệm thời gian khi edit nhiều ô.
Dùng array formula cho Excel 365:
=DAYS(TableEnd[EndDate],TableStart[StartDate])
Excel 365 tự động spill kết quả xuống toàn bộ dòng nếu dùng table reference. Nhanh hơn copy công thức thủ công.
Convert công thức thành values sau khi done: Copy ô có công thức > Paste Special > Values
Thay công thức bằng giá trị cố định giảm calculation load. Chỉ làm khi chắc chắn không cần update lại.
Tính năng mới trong Excel 365
Excel 365 subscription thêm features giúp DAYS hoạt động tốt hơn.
Dynamic arrays: Công thức DAYS tự động fill xuống nhiều dòng mà không cần kéo. Chỉ cần nhập ở dòng đầu.
FILTER function kết hợp:
=FILTER(Table1, DAYS(Table1[End],Table1[Start])>30)
Tự động lọc ra các dòng có khoảng cách >30 ngày. Bảng kết quả tự động update khi data thay đổi.
LET function giảm lặp:
=LET(days, DAYS(C3,B3), IF(days>30,"Long","Short"))
Tính DAYS một lần, dùng lại trong logic phức tạp mà không phải repeat công thức.
Các tính năng này chỉ có Excel 365, không work trên Excel 2019 standalone.
Xử lý múi giờ và daylight saving
DAYS chỉ tính ngày, không tính giờ. Nếu cần xử lý timestamp có giờ phút giây, kết quả có thể sai.
Ví dụ: 15/03/2024 10:30 AM và 16/03/2024 09:00 AM
DAYS trả về 1 ngày mặc dù chỉ cách nhau 22.5 giờ. Nếu cần tính chính xác đến giờ, dùng trừ trực tiếp rồi nhân 24.
=(C3-B3)*24
Kết quả là số giờ chênh lệch. Daylight saving time không ảnh hưởng DAYS vì Excel lưu ngày theo UTC offset.
Backup và version control cho file có DAYS
File Excel quan trọng nên có backup strategy.
OneDrive auto-save: Save file trong OneDrive folder để Excel 365 tự động sync. Version history cho phép restore về 30 ngày trước.
Export sang CSV định kỳ: File > Save As > CSV (Comma delimited)
CSV chỉ lưu values không lưu formulas. Dùng cho archive hoặc import vào database.
Document recovery: File > Info > Manage Workbook > Recover Unsaved Workbooks
Nếu Excel crash trước khi save, có thể recover auto-saved version.
Backup trước khi chạy macro hoặc làm thay đổi lớn với DAYS trên nhiều dòng. Ctrl+Z không luôn work với complex operations.
Tích hợp DAYS với Power Query
Power Query trong Excel 2013 và mới hơn có thể transform data trước khi apply DAYS.
Data > Get Data > From File/Database > chọn nguồn
Trong Power Query Editor:
- Add Custom Column
- Nhập
= Duration.Days([End Date] - [Start Date]) - Close & Load
Power Query tự động refresh khi data source thay đổi. Performance tốt hơn công thức trên sheet với dataset lớn.
Kết quả và khuyến nghị cuối
Hàm DAYS trong Excel 2013 tính khoảng cách ngày với độ chính xác 100% và tốc độ instant so với tính thủ công. Công thức =DAYS(end_date, start_date) đơn giản nhưng mạnh mẽ khi kết hợp với TODAY, VLOOKUP hoặc conditional logic.
Ba lỗi chính #VALUE!, #NUM!, #NAME? dễ khắc phục bằng cách check định dạng ngày và syntax. Dùng ô tham chiếu thay vì giá trị cố định để công thức tự động cập nhật khi data thay đổi. Convert sang Number format nếu kết quả hiển thị sai dạng date.
Hàm work trên Excel 2013, 2016, 2019, 2021 và 365. Phiên bản cũ hơn dùng phương pháp trừ trực tiếp =end-start để thay thế. Verify kết quả bằng Evaluate Formula tool khi gặp vấn đề logic phức tạp.
