Giải trình
Hàm DATEDIF (Date + Dif) hơi bất thường trong Excel. Hàm tương thích có nguồn gốc từ Lotus 1-2-3, Excel sẽ không cung cấp đối số khi hàm được nhập. Tuy nhiên, DATEDIF hoạt động trong tất cả các phiên bản Excel hiện đại và là một hàm hữu ích để tính khoảng thời gian giữa hai ngày theo năm, tháng và ngày
Trong ví dụ hiển thị, mục tiêu là tính tuổi theo năm. Công thức trong E5 là
=DATEDIF(D5,TODAY(),"y")Hai đối số đầu tiên cho DATEDIF là start_date và end_date. Ngày bắt đầu đến từ ô D5 (ngày 15 tháng 5 năm 2001) trong ví dụ. Ngày kết thúc được tạo bằng hàm TODAY. TODAY luôn trả về ngày hiện tại trong Excel. Theo văn bản này, ngày hiện tại là ngày 24 tháng 11 năm 2020. Đối số cuối cùng trong DATEDIF chỉ định đơn vị thời gian. Hàm DATEDIF hỗ trợ một số tùy chọn ở đây, nhưng đối với ví dụ này, mục tiêu là tuổi tính theo năm, vì vậy chúng tôi sử dụng "y" để chỉ định năm đầy đủ
Tại thời điểm này, chúng ta có thể viết lại công thức như bên dưới
=DATEDIF("15-May-2001","24-Nov-2020", "y")Bởi vì ngày Excel thực sự là số sê-ri, các giá trị thô là
=DATEDIF(37026,44159,"y")Với những đầu vào này, DATEDIF trả về 19 là kết quả cuối cùng
Tuổi vào ngày cụ thể
Để tính tuổi vào một ngày cụ thể, hãy thay thế hàm TODAY bằng ngày mục tiêu. Một cách dễ dàng và an toàn để mã hóa một ngày cụ thể thành một công thức là sử dụng hàm DATE. Ví dụ: để tính tuổi kể từ ngày 1 tháng 1 năm 2021, bạn có thể sử dụng công thức như sau
=DATEDIF(D5,DATE(2022,1,1),"y") // returns 20Công thức này sẽ trả về tuổi của Michael Chang vào ngày 1 tháng 1 năm 2022, tức là 20
Người lớn hoặc trẻ vị thành niên
Để kiểm tra ngày sinh và trả về "Trẻ vị thành niên" hoặc "Người lớn", bạn có thể ngắt công thức trong hàm IF như sau
=IF(DATEDIF(D5,TODAY(),"y")<18,"Minor","Adult")Công thức trên là một ví dụ về lồng nhau. Thay thế 18 bằng bất kỳ độ tuổi nào phù hợp
Tuổi theo năm, tháng, ngày
Để tính tuổi theo năm, tháng và ngày, hãy sử dụng ba phiên bản DATEDIF như thế này
=DATEDIF(A1,TODAY(),"y")&"y "&DATEDIF(A1,TODAY(),"ym")&"m "&DATEDIF(A1,TODAY(),"md")&"d"Phiên bản đầu tiên của DATEDIF trả về năm, phiên bản thứ hai trả về tháng và phiên bản thứ ba trả về ngày. Đây là một ví dụ về nối và kết quả là một chuỗi văn bản như thế này
19y 6m 9dLưu ý ngày bắt đầu và ngày kết thúc vẫn giữ nguyên trong cả ba DATEDIF;
NĂMFRAC với INT
Một tùy chọn khác để tính tuổi từ ngày sinh sử dụng hàm YEARFRAC cùng với hàm INT trong một công thức như sau
=INT(YEARFRAC(D5,TODAY()))YEARFRAC tính toán một số thập phân đại diện cho phân số của một năm giữa hai ngày. Để tính phân số của một năm dưới dạng giá trị thập phân, Excel sử dụng ngày giữa hai ngày. Như trên, ngày sinh được cung cấp dưới dạng start_date từ ô D5 và ngày hôm nay được cung cấp dưới dạng end_date, nhờ hàm TODAY
Với ngày hiện tại là 24 tháng 11 năm 2020, kết quả từ YEARFRAC cho Michael Chang là
________số 8_______Tiếp theo, hàm INT tiếp nhận và làm tròn số đó thành giá trị nguyên, là số 19
=INT(19.5290896646133) // returns 19Công thức này có vẻ hoàn toàn hợp lý và nó hoạt động tốt trong hầu hết các trường hợp. Tuy nhiên, YEARFRAC có thể trả về một số không chính xác vào ngày kỷ niệm (sinh nhật). Tôi không chắc chính xác tại sao điều này lại xảy ra, nhưng nó có liên quan đến cách YEARFRAC sử dụng ngày để xác định năm phân số, được kiểm soát bởi đối số cơ sở. Ví dụ
=DATEDIF("15-May-2001","24-Nov-2020", "y") 0Điểm mấu chốt là công thức DATEDIF ngày là một lựa chọn an toàn và dễ dàng hơn khi mục tiêu là báo cáo tuổi trong cả năm
Nếu bạn có một danh sách ngày sinh của nhân viên trong bảng tính Excel, bây giờ, bạn muốn tính tuổi cho từng người trong số họ. Trong Excel có một số hàm hữu ích như YEARFRAC hay DATEDIF có thể giúp bạn lấy tuổi từ ngày sinh một cách nhanh chóng và dễ dàng
Tính tuổi theo ngày sinh với hàm YEARFRAC
Trong Excel, hàm YEARFRAC có thể giúp bạn lấy tuổi từ ngày sinh đã cho, cú pháp chung là
=YEARFRAC(ngày sinh, HÔM NAY())
- ngày sinh . ngày sinh nhật.
- HÔM NAY() . Hàm này trả về ngày hôm nay.
Vì vậy, vui lòng sử dụng công thức dưới đây vào một ô trống
=YEARFRAC(B2,HÔM NAY())
Và sau đó, kéo núm điều khiển điền xuống các ô bạn muốn áp dụng công thức này, tất cả các độ tuổi đã được tính toán và hiển thị dưới dạng số thập phân trong các ô, xem ảnh chụp màn hình
Lời khuyên. Kết quả tính toán là số thập phân bằng cách sử dụng hàm YEARFRAC, để biến số tuổi thành số nguyên, bạn nên kết hợp hàm INT như sau
=INT(YEARFRAC(B2,HÔM NAY()))
Và bạn sẽ nhận được độ tuổi dưới dạng số nguyên
Tính tuổi theo ngày sinh với hàm DATEDIF
Hàm DATEDIF cũng có thể chuyển đổi ngày sinh thành tuổi, cú pháp chung là
=DATEDIF(ngày sinh, HÔM NAY(), "y")
- ngày sinh . ngày sinh nhật.
- HÔM NAY() . Hàm này trả về ngày hôm nay.
- y . Nó trả về số năm hoàn chỉnh kể từ ngày sinh đến ngày hiện tại.
Bây giờ, vui lòng nhập hoặc sao chép công thức sau vào ô trống
=DATEDIF(B2, HÔM NAY(), "y")
Và tất cả các độ tuổi đã được tính dựa trên ngày sinh, xem ảnh chụp màn hình
Tính tuổi theo ngày tháng năm sinh
Nếu bạn muốn lấy tuổi chính xác của người đó, chẳng hạn như bao nhiêu năm, tháng và ngày kể từ ngày sinh của họ đến ngày hiện tại. Bạn nên ghép các hàm DATEIF thành một công thức duy nhất như sau
=DATEDIF(B2,TODAY(),"Y") & " Năm," & DATEDIF(B2,TODAY(),"YM") & " Tháng," & DATEDIF(B2,TODAY(),"MD") &
Và sau đó, bạn sẽ nhận được kết quả như ảnh chụp màn hình sau đây
Lời khuyên. Nếu muốn bỏ qua năm, tháng, ngày 0 khi áp dụng công thức trên, bạn có thể kết hợp hàm IF để kiểm tra các số 0. vui lòng sử dụng công thức này
=IF(DATEDIF(B2, TODAY(),"y")=0,"",DATEDIF(B2, TODAY(),"y")&" Years, ")& IF(DATEDIF(B2, TODAY(),
Và sau đó, bạn sẽ nhận được ảnh chụp màn hình bên dưới khi bạn cần, tất cả các độ tuổi được hiển thị theo năm, tháng và ngày mà không có giá trị 0
Tính tuổi vào ngày cụ thể trong Excel
Đôi khi, bạn muốn lấy tuổi từ ngày sinh thành một ngày cụ thể thay vì ngày hiện tại, trong trường hợp này, bạn chỉ cần thay đổi hàm TODAY() trong đối số thứ hai bằng ngày cụ thể. Chẳng hạn như
=DATEDIF(ngày sinh, ngày_cụ thể, "y")
- ngày sinh . ngày sinh nhật.
- ngày_cụ thể . Ngày kết thúc mà bạn muốn tính tuổi từ ngày sinh.
- y . Nó trả về số năm hoàn chỉnh kể từ ngày sinh đến ngày hiện tại.
Vui lòng sử dụng công thức như thế này
=DATEDIF(B2, C2, "y")
Và sau đó, độ tuổi đã được tính từ ngày sinh đến ngày cụ thể như ảnh chụp màn hình sau
Lời khuyên. Để biết chính xác năm, tháng, ngày của tuổi, vui lòng sử dụng công thức dưới đây
=DATEDIF(B2, C2,"Y") & " Năm," & DATEDIF(B2,C2,"YM") & " Tháng," &DATEDIF(B2,C2, "MD") & " Ngày"
Tính tuổi dựa trên ngày sinh trước năm 1900
Các công thức trên không hoạt động chính xác khi ngày sinh trước năm 1900, bởi vì khi nhập ngày trước năm 1900, nó sẽ được lưu trữ tự động ở định dạng văn bản trong Excel. Vì vậy, đây là Hàm do người dùng xác định giúp bạn lấy tuổi nếu ngày sinh sớm hơn năm 1900
1. Nhấn tổ hợp phím Alt + F11 để mở cửa sổ Microsoft Visual Basic for Applications
2. Và sau đó nhấp vào Chèn > Mô-đun, sau đó sao chép mã VBA sau vào cửa sổ Mô-đun
Tính tuổi từ ngày sinh trước năm 1900 đến nay
Function AgelnNow(ByVal xDate As Variant) Dim xIA As Integer xIA = 0 On Error Resume Next xIA = DateDiff("yyyy", xDate, Now()) If (Month(Now()) < Month(xDate)) Or (Month(xDate) = Month(Now())) Then If (Day(Now()) < Day(xDate)) Then xIA = xIA - 1 End If End If If xIA = -1 Then AgelnNow = "Error" Else AgelnNow = xIA End If End Function3. Sau đó nhập công thức sau vào ô trống. =AgelnNow(A2) (A2 là ô ngày sinh)
Sau đó kéo chốt điền xuống các ô muốn lấy tuổi, tất cả các tuổi từ ngày sinh đến hôm nay đều đã được tính, xem ảnh chụp màn hình
Mẹo. Nếu bạn cần lấy tuổi từ ngày sinh đến ngày mất thay vì ngày hiện tại, vui lòng áp dụng mã dưới đây
Tính tuổi từ ngày sinh trước năm 1900 đến ngày mất
Function Age(ByVal StartDate As Variant, ByVal EndDate As Variant) Dim xIA As Integer xIA = 0 On Error Resume Next xIA = DateDiff("yyyy", StartDate, EndDate) If (Month(EndDate) < Month(StartDate)) Or (Month(StartDate) = Month(EndDate)) Then If (Day(EndDate) < Day(StartDate)) Then xIA = xIA - 1 End If End If If xIA = -1 Then Age = "Error" Else Age = xIA End If End FunctionVà sử dụng công thức này. =Age(A2,B2) (A2 là ô ngày sinh và B2 là ô ngày mất) để có kết quả như ảnh chụp màn hình bên dưới.
Tính tuổi dựa trên ngày sinh từ hiện tại hoặc một ngày cụ thể với một tính năng tuyệt vời
Kutools cho Excel hỗ trợ một công cụ tiện dụng - Tính năng Trình trợ giúp Ngày & Giờ có thể giúp bạn tính tuổi dựa trên ngày sinh từ ngày hiện tại hoặc một ngày cụ thể khi bạn cần mà không cần nhớ bất kỳ công thức đau đớn nào. Nhấp để tải xuống Kutools cho Excel dùng thử miễn phí
Các chức năng tương đối được sử dụng
- NĂMFRAC
- Nó trả về một giá trị thập phân đại diện cho các năm phân số giữa hai ngày
- HÔM NAY()
- Nó cho giá trị ngày hiện tại
- INT()
- Nó trả về phần nguyên của một giá trị
- NGÀY
- Hàm này trả về số năm, số tháng hoặc số ngày giữa hai ngày đã cho
Bài tính tuổi tương đối
- Đổi Ngày Sinh Thành Tuổi Nhanh Trong Excel
- Chẳng hạn, bạn nhận được một loạt dữ liệu ngày sinh khác nhau trong Excel và bạn cần chuyển đổi ngày sinh để hiển thị giá trị tuổi chính xác của chúng trong Excel, bạn muốn tính như thế nào?
- Tính Tuổi Từ Ngày Sinh Trong Google Sheet
- Bạn đã bao giờ thử tính tuổi từ ngày sinh trên Google sheet chưa?
- Tính Tuổi Từ Số CMND Trong Excel
- Giả sử bạn có một danh sách ID gồm 13 chữ số, trong đó 6 số đầu là ngày tháng năm sinh. Ví dụ số CMND 9808020181286 tức là ngày sinh là 1998/08/02
- Tính tuổi theo năm tháng ngày kể từ ngày sinh
- Nếu có một cột ngày sinh cho trước, bạn có thể tính nhanh từng độ tuổi dựa trên ngày sinh đã cho đó theo năm, tháng và ngày hoặc theo số thập phân như ảnh chụp màn hình bên dưới không?
- Tính tuổi vào một ngày cụ thể hoặc trong tương lai trong Excel
- Ví dụ: bạn có ngày sinh của một người, nếu bạn cần tính tuổi của người này dựa trên một ngày cụ thể hoặc trong tương lai, các phương pháp sau sẽ giúp bạn từng bước chi tiết
Các công cụ năng suất văn phòng tốt nhất
Kutools cho Excel - Giúp Bạn Nổi Bật Trước Đám Đông
Bạn có muốn hoàn thành công việc hàng ngày của mình một cách nhanh chóng và hoàn hảo? . ) và tiết kiệm 80% thời gian cho bạn
- Được thiết kế cho 1500 kịch bản công việc, giúp bạn giải quyết 80% vấn đề về Excel
- Giảm hàng ngàn lần click chuột và bàn phím mỗi ngày, giải phóng đôi mắt và bàn tay mệt mỏi của bạn
- Trở thành chuyên gia Excel trong 3 phút. Không còn cần phải nhớ bất kỳ công thức đau đớn và mã VBA nào
- 30 ngày dùng thử miễn phí không giới hạn. Đảm bảo hoàn tiền trong 60 ngày. Nâng cấp và hỗ trợ miễn phí trong 2 năm
Đọc thêm Tải xuống
Tab Office - Cho phép đọc và chỉnh sửa theo tab trong Microsoft Office (bao gồm Excel)
- Một giây để chuyển đổi giữa hàng chục tài liệu đang mở
- Giảm hàng trăm cú click chuột cho bạn mỗi ngày, tạm biệt tay chuột
- Tăng 50% năng suất của bạn khi xem và chỉnh sửa nhiều tài liệu
- Mang đến các tab hiệu quả cho Office (bao gồm Excel), giống như Chrome, Firefox và Internet Explorer mới
Đọc thêm Tải xuống
Cũ nhất đầu tiên
Sắp xếp nhận xét theo
Cũ nhất đầu tiên
mới nhất đầu tiên
Nhận xét ( 1 )
Chưa có xếp hạng nào. Hãy là người đầu tiên xếp hạng
Bột
khoảng 1 năm trước
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi e rằng chức năng Tuổi của bạn có thể bị lỗi? . nếu họ chết vào tháng 5, tức là 3 tháng trước sinh nhật tháng 8, thì họ chưa đủ 40; . Có vẻ như một cái gì đó có thể không được tính toán một cách chính xác? . -Bột