Các hàm ngày tháng thời gian (Date Time Function)

2.3. Hàm ngày tháng và thời gian (Date and time functions)

Tác giả: Bùi Nguyễn Triệu Tường (BNTT - GPE)
Tổng hợp: Nguyễn Cảnh Hoàng Danh (hoangdanh282vn - GPE)

Danh mục các hàm ngày tháng và thời gian

Tìm hiểu cách thức tính toán Ngày Giờ trong Excel

DATE(year. month, day) : Trả về các số thể hiện một ngày cụ thể nào đó. Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng ngày tháng năm.

DateDif (firstdate,enddate,option): Hàm DATEDIF trả về một giá trị, là số ngày, số tháng hay số năm giữa hai khoảng thời gian theo tùy chọn.

DATEVALUE (date_text) : Trả về số tuần tự của ngày được thể hiện bởi date_text (chuyển đổi một chuỗi văn bản có dạng ngày tháng năm thành một giá trị ngày tháng năm có thể tính toán được).

DAY (serial_number) : Trả về phần ngày của một giá trị ngày tháng, được đại diện bởi số tuần tự. Kết quả trả về là một số nguyên từ 1 đến 31.

DAYS360 (start_date, end_date, method) : Trả về số ngày giữa hai ngày dựa trên cơ sở một năm có 360 ngày (12 tháng, mỗi tháng có 30 ngày) để dùng cho các tính toán tài chính.

EDATE (start_date, months) : Trả về số tuần tự thể hiện một ngày nào đó tính từ mốc thời gian cho trước và cách mốc thời gian này một số tháng được chỉ định.

EOMONTH (start_date, months) : Trả về số tuần tự thể hiện ngày cuối cùng của một tháng nào đó tính từ mốc thời gian cho trước và cách mốc thời gian này một số tháng được chỉ định.

HOUR (serial_number) : Trả về phần giờ của một giá trị thời gian. Kết quả trả về là một số nguyên từ 0 đến 23.

MINUTE (serial_number) : Trả về phần phút của một giá trị thời gian. Kết quả trả về là một số nguyên từ 0 đến 59.

MONTH (serial_number) : Trả về phần tháng của một giá trị ngày tháng, được đại diện bởi số tuần tự. Kết quả trả về là một số nguyên từ 1 đến 12.

NETWORKDAYS (start_date, end_date, holidays) : Trả về tất cả số ngày làm việc trong một khoảng thời gian giữa start_date và end_date, không kể các ngày cuối tuần và các ngày nghỉ (holidays).

NOW () : Trả về số tuần tự thể hiện ngày giờ hiện tại. Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng ngày tháng năm và giờ phút giây.

SECOND (serial_number) : Trả về phần giây của một giá trị thời gian. Kết quả trả về là một số nguyên từ 0 đến 59.

TIME(hour, minute, second) : Trả về phần thập phân của một giá trị thời gian (từ 0 đến nhỏ hơn 1). Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng giờ phút giây.

TIMEVALUE (time_text) : Trả về phần thập phân của một giá trị thời gian (từ 0 đến nhỏ hơn 1) thể hiện bởi time_text (chuyển đổi một chuỗi văn bản có dạng thời gian thành một giá trị thời gian có thể tính toán được).

TODAY() : Trả về số tuần tự thể hiện ngày tháng hiện tại. Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng ngày tháng năm.

WEEKDAY (serial_number, return_type) : Trả về thứ trong tuần tương ứng với ngày được cung cấp. Kết quả trả về là một số nguyên từ 1 đến 7.

WEEKNUM (serial_number, return_type) : Trả về một số cho biết tuần thứ mấy trong năm.

WORKDAY (start_day, days, holidays) : Trả về một số tuần tự thể hiện số ngày làm việc, có thể là trước hay sau ngày bắt đầu làm việc và trừ đi những ngày cuối tuần và ngày nghỉ (nếu có) trong khoảng thời gian đó.

YEAR (serial_number) : Trả về phần năm của một giá trị ngày tháng, được đại diện bởi số tuần tự. Kết quả trả về là một số nguyên từ 1900 đến 9999.

YEARFRAC (start_date, end_date, basis) : Trả về tỷ lệ của một khoảng thời gian trong một năm.


Nếu một số Hàm trong list danh sách nêu trên không có trong hộp danh mục các hàm excel (Insert function) thì ta vào Tools\add-ins.. chọn vào mục Analysis Toolpak. Ok để tiến hành cài đặt.

Tìm hiểu cách thức tính toán Ngày Giờ trong Excel

  • Thời điểm 24h Ngày 31/12/1989 được Excel chọn làm mốc thời gian để tính toán các giá trị về Ngày Giờ.

  • Tất cả các giá trị về Ngày Giờ đều được Excel chuyển đổi thành một giá trị số thống nhất để tính toán, và số này chính là số Ngày cách mốc thời gian (31/12/1989) qui ước với một số Ngày nhất định.

Ví dụ:  01/01/1900 10:30 AM   được qui đổi thành 1.4375 ngày

         18/04/2008 10:30 AM   được qui đổi thành  39,556.4375 ngày

Như vậy, hôm nay vào lúc 10h30 Ngày 18/04/2008 là thời điểm cách mốc thời gian qui ước 39,556.4375 ngày. Vì thế, đơn vị nhỏ nhất để tính toán các giá trị về Ngày Giờ là số Ngày.

+ Nếu như dữ liệu nhập vào có dạng Ngày tháng thì excel sẽ chuyển giá trị này thành số chỉ Ngày.

Ví dụ:  30/04/2008 được qui đổi thành 39,568 Ngày

+ Nếu dữ liệu nhập vào có dạng Giờ, Phút, Giây thì excel sẽ chuyển đổi các giá trị này ra số ngày tương ứng. Cách qui đổi như sau : Giờ = (1/24) Ngày,  Phút = 1/24*60=(1/1,440) Ngày , Giây = (1/86,400) Ngày. Lấy giá trị qui đổi của Giờ, cộng với Phút công với Giây để cho ra giá trị Ngày tương ứng.

Ví dụ:  10:30:30 PM được qui đổi thành 0.937847222 Ngày

Một vài điều cần biết khi nhập giá trị về Ngày tháng:

+ Giá trị Năm trong biểu thức Ngày tháng có gía trị trong khoảng từ 1900 đến 9999.

+ Nếu như khi nhập giá trị Ngày tháng, số chỉ Năm chỉ được viết với 2 con số thì những số nào có giá trị 0 và <30 thì excel sẽ chuyển đổi thành Năm với giá trị bằng giá trị này cộng với 2000, giá trị nào =30 thì công với 1900.

Ví dụ:   01/01/29 sẽ chuyển thành 01/01/2029

Ví dụ:   01/01/30 sẽ chuyển thành 01/01/1930

+ Dữ liệu Ngày tháng khi nhập vào nếu không hợp lệ thì sẽ đuơc5 chuyển thành dạng text :

Ví dụ:   01/13/2008, 01/01/10000..

+ Trong một vài trường hợp, nếu dữ liệu Ngày tháng nhập vào thông qua một hàm chuyển đổi thì excel sẽ tự động chuyển đổi các giá trị không đúng thành các giá trị khác tương ứng.

Ví dụ:   =DATE(2008,2,31) sẽ được  chuyển đổi thành =DATE(2008,3,1)=01/03/2008.

+ Tùy theo cách định dạng mà Ngày tháng nhập vào sẽ có các dạng biểu thị khác nhau, nhưng giá trị vẫn không thay đổi.

Ví dụ:

  • 18/04/2008 được chuyển đổi định dạng thành Friday 18/04/2008 với định dạng kiểu dddd dd/mm/yyyy

  • 18/04/2008 được chuyển đổi định dạng thành 39556 với định dạng kiểu General

  • 18/04/2008 được chuyển đổi định dạng thành Fri 18-Apr-2008 với định dạng kiểu ddd dd-mmm-yyyy

Hàm DATE

Chức năng :   Hàm DATE trả về một giá trị ngày tháng dựa trên các chỉ tiêu Ngày, Tháng, Năm.

Cấu trúc :     DATE(year,month,day)

- Year : là số ứng với Năm mà ta muốn trả về trong công thức.

+ Năm trong Excel bắt đầu từ 1900 đến 9999. Nếu Năm 9999 hay <0 thì hàm trả về giá trị là #NUM!

+ Nếu Năm có giá trị từ 1 <= a <=1899 thì excel sẽ trả về Năm có giá trị bằng 1900+a

- Month : là số ứng với Tháng mà ta muốn trả về trong công thức. Tháng có giá trị từ 1 đến 12

+ Nếu Tháng 12 thì excel tự động chuyển số tháng tròn năm lên Năm kế tiếp và trả về Tháng còn lại.

- Day : là số ứng với Ngày mà ta muốn trả về trong công thức.

+ Nếu Ngày  số ngày tương ứng với Tháng, Năm trong công thức thì Excel tự động chuyển đổi số ngày tròn tháng lên Tháng kế tiếp và trả về số Ngày còn lại.

Ví dụ :

=DATE(2008,1,1)      giá trị trả về : 01/01/2008

=DATE(108,1,1)        giá trị trả về : 01/01/2008

=DATE(107,12,32)    giá trị trả về : 01/01/2008

=DATE(10000,1,1)    giá trị trả về : #NUM!

Hàm DATEDIF

Chức năng :   Hàm DATEDIF trả về một giá trị, là số ngày, số tháng hay số năm giữa hai khoảng thời gian theo tùy chọn.

Cấu trúc :     DATEDIF(firstdate,enddate,option)

- firstdate  : là Ngày bắt đầu của khoảng thời gian cần tính toán

- Enddate  : là Ngày kết thúc của khoảng thời gian cần tính toán

- Option    : là tùy chọn, xác định kết quả tính toán sẽ trả về trong công thức. Các tùy chọn theo sau :

+ "d"     : Hàm sẽ trả về số ngày giữa hai khoảng thời gian.

+ "m"    : Hàm sẽ trả về số tháng (chỉ lần phần nguyên) giữa hai khoảng thời gian.

+ "y"     : Hàm sẽ trả về số năm (chỉ lần phần nguyên) giữa hai khoảng thời gian.

+ "yd"   : Hàm sẽ trả về số ngày lẻ của năm (số ngày chưa tròn năm) giữa hai khoảng thời gian.

+ "ym"  : Hàm sẽ trả về số tháng lẻ của năm (số tháng chưa tròn năm) giữa hai khoảng thời gian.

+ "md"  : Hàm sẽ trả về số ngày lẻ của tháng (số ngày chưa tròn tháng) giữa hai khoảng thời gian.

Ví dụ :

Các hàm ngày tháng thời gian (Date Time Function)

Hàm DATEVALUE

Chức năng :   Hàm DATEVALUE chuyển đổi một chuỗi text có dạng ngày tháng thành giá trị ngày tháng năm có thể tính toán được

Cấu trúc :     DATEVALUE(date_text)

- Date_text : là chuỗi văn bản dạng ngày tháng cần chuyển đổi. Các điều kiện đối với date_text :

+ date_text phải được đặt trong dấu ngoặc kép “”. Nếu là tham chiếu đến một ô khác thì ô này phải có định dạng là text.

+ Năm trong date_text phải trong khoảng từ 1900 đến 9999, nếu vượt quá số này, hàm sẽ báo lỗi #Value.

+ Thông thường date_text có 3 đối số (ngày, tháng, năm). Nếu date_text chỉ có 2 đối số thì excel sẽ tính toán như sau :

++ Nếu đối số thứ nhất < 32 và đối số thứ 2 < 13 thì excel coi đối số thứ nhất là Ngày, thứ 2 là tháng. Năm là năm hiện hành.

++ Nếu đối số thứ nhất <13, đối số thứ 2 12 thì excel coi đối số thứ nhất là tháng, thứ 2 là năm và cho ngày là 1.

++ Các trường hợp khác hàm sẽ báo lỗi #Value.

Ví dụ :

Các hàm ngày tháng thời gian (Date Time Function)

Hàm DAY

Chức năng : Hàm DAY trả về một giá trị, là số chỉ ngày của tháng trong một biểu thức ngày tháng.

Cấu trúc :     DAY(serial_number)

- Serial_number : là một biểu thức ngày tháng, có thể là một giá trị ngày tháng hay một chuỗi ngày tháng (date_text).

+ date_text trong công thức phải được đặt trong dấu ngoặc kép "". Nếu là tham chiếu đến một ô khác thì ô này phải có định dạng là text.

Ví dụ :

Các hàm ngày tháng thời gian (Date Time Function)

Hàm DAYS360

Chức năng : Hàm DAYS360 trả về một giá trị, là số ngày giữa hai khoảng thời gian dựa trên qui ước 1 năm có 360 ngày.

Cấu trúc :     DAYS360(startdate,enddate,option)

- Startdate : là Ngày bắt đầu của khoảng thời gian cần tính toán

- Enddate : là Ngày kết thúc của khoảng thời gian cần tính toán

- Option : là tùy chọn, xác định kiểu tính toán theo Mỹ (False or empty) hay Châu Âu (True) :

+ False or empty: nếu Startdate nhằm ngày 31 của tháng, excel sẽ chuyển nó thành ngày 30. Nếu Enddate là ngày 31của tháng và startdate < ngày 30 của tháng thì excel chuyển Enddate thành ngày 1 của tháng kế tiếp.

+ True : nếu Startdate or Enddate nhằm vào ngày 31 của tháng thì excel chuyển chúng thành ngày 30 của tháng đó.

Ví dụ :

=DAYS360("01/01/07","31/10/08")                         giá trị trả về : 660

=DAYS360("01/01/07","31/10/08",TRUE)              giá trị trả về : 659

=DAYS360(DATE(2007,1,1),DATE(2008,10,31))  giá trị trả về : 660

So sánh với hàm DATEDIF :

=DATEDIF("01/01/07","31/10/08","d")                    giá trị trả về : 669

Hàm EDATE

Chức năng : Hàm EDATE trả về một Ngày nào đó tính từ mốc thời gian cho trước và cách mốc thời gian này một số tháng nhất định.

Cấu trúc :     EDATE(startdate,months)

- Startdate : là Ngày được chọn làm mốc thời gian để tính toán. Startdate có thể là Date_text hay tham chiếu đến ô có giá     trị ngày tháng.

- Months  : là số tháng cách mốc thời gian cho trước. Nếu Ngày cần tìm trước Ngày làm mốc thì Months được ghi số

  âm "-" ngược lại ghi số dương "+" hay không dấu. Nếu Months là một số lẻ thì excel sẽ lấy phần nguyên, phần lẻ sẽ bỏ đi.

Ghi chú :

+ Nếu kết quả trả về là một Ngày không hợp lệ ( VD 31/04/08) thì excel sẽ trả về Ngày cuối cùng của tháng đó (30/04/08)

+ Nếu trong mục Insert Function không có hàm EDATE thì vào Tools\Add-ins check vào Analysis Toolpark để cài đặt.

Ví dụ :

=EDATE("01/01/08",3)     giá trị trả về : 01/04/08

=EDATE("31/05/08",2)     giá trị trả về : 31/07/08

=EDATE("31/01/08",3)     giá trị trả về : 30/04/08

=EDATE("30/04/08",-2)    giá trị trả về : 29/02/08

Hàm EOMONTH

Chức năng : Hàm EOMONTH trả về Ngày cuối tháng của Tháng nào đó cách mốc thời gian cho trước một số tháng nhất định.

Cấu trúc :     EOMONTH(startdate,months)

- Startdate : là Ngày được chọn làm mốc thời gian để tính toán. Startdate có thể là Date_text hay tham chiếu đến ô có giá     trị ngày tháng.

- Months  : là số tháng cách mốc thời gian cho trước. Nếu Ngày cần tìm trước Ngày làm mốc thì Months được ghi số

  âm "-" ngược lại ghi số dương "+" hay không dấu. Nếu Months là một số lẻ thì excel sẽ lấy phần nguyên, phần lẻ sẽ bỏ đi.

Ví dụ :

=EOMONTH("01/01/08",1)      giá trị trả về  : 29/02/08

=EOMONTH("01/05/08",-1)     giá trị trả về  : 30/04/08

=EOMONTH("01/05/08",-1.8)   giá trị trả về  : 30/04/08

Áp dụng : Công thức tìm ngày cuối tháng của một giá trị ngày tháng bất kỳ.

=DAY(EOMONTH("01/02/08",0))     giá trị trả về : 29

=DAY(DATE(YEAR(A1),MONTH(A1)+1,0))     giá trị trả về : 29 với A1=01/02/08

Hàm HOUR

Chức năng : Hàm HOUR trả về một giá trị, là số Giờ lẻ chưa tròn Ngày của một giá trị thời gian.

Cấu trúc :     HOUR(serial_number)

- Serial_number : là một biểu thức thời gian, Serial_number có thể là Time_text, Time_value hay một số nào đó (Number).

+ Time_text là một chuỗi biểu hiện thời gian (VD 10:30 AM), hàm sẽ báo lỗi (#Value) nếu chuỗi thời gian không hợp lệ (VD 13:30 AM).

+ Time_value là một giá trị thời gian, có thể là một hàm trả về thời gian (Time(,,)) hay tham chiếu đến ô có giá trị thời gian.

+ Number là số chỉ ngày trong một giá trị thời gian (0

Ví dụ :

=HOUR("10:30 AM")          giá trị trả về là 10

=HOUR("10:30:30 PM")     giá trị trả về là 22

=HOUR("13:30 AM")          giá trị trả về là #Value

=HOUR(NOW())                 giá trị trả về là 10

=HOUR(TIME(10,30,30))   giá trị trả về là 10

=HOUR(TIME(12,60,30))   giá trị trả về là 13

=HOUR(0.5)                       giá trị trả về là 12

Hàm MINUTE

Chức năng : Hàm MINUTE trả về một giá trị, là số Phút chưa tròn Giờ của một giá trị thời gian.

Cấu trúc :     MINUTE(serial_number)

- Serial_number : là một biểu thức thời gian, Serial_number có thể là Number, Time_text hay Time_value.

+ Number là số chỉ ngày. Nếu là số nguyên thì hàm trả về 0, nếu là số lẻ thì tính như sau : Phút=MOD(Number*1440,60)

+ Giá trị Phút trong biểu thức thời gian (Time_text) phải có giá trị =0 và <60. Nếu vượt qua giá trị này, hàm sẽ trả về lỗi.

Ví dụ :

=MINUTE(1.2)                       giá trị trả về là 48

=MOD(1.2*1440,60)              giá trị trả về là 48

=MINUTE("10:30:30 AM")     giá trị trả về là 30

=MINUTE(TIME(12,59,30))   giá trị trả về là 59

=MINUTE(NOW())                giá trị trả về là 30

=MINUTE("10:60:30 AM")     giá trị trả về là #Value

Hàm MONTH

Chức năng : Hàm MONTH trả về một giá trị, là số chỉ tháng của năm trong một biểu thức ngày tháng.

Cấu trúc :     MONTH(serial_number)

- Serial_number : là một biểu thức ngày tháng, có thể là một giá trị ngày tháng hay một chuỗi ngày tháng (date_text).

+ date_text trong công thức phải được đặt trong dấu ngoặc kép "". Nếu là tham chiếu đến một ô khác thì ô này phải có định dạng là text.

Ví dụ :

=MONTH("01/02/08")  giá trị trả về : 2

=MONTH("12/13")       giá trị trả về : 12

=MONTH("13/13")       giá trị trả về : #Value!

=MONTH(today())       giá trị trả về : 4

Hàm NETWORKDAYS

Chức năng :  Hàm NETWORKDAYS trả về số ngày làm việc trong một khoảng thời gian (không bao gồm ngày thứ 7, CN và ngày nghỉ lễ).

Cấu trúc :     NETWORKDAYS(startdate,enddate,holidays)

- Startdate : Ngày bắt đầu của khoảng thời gian làm việc. Startdate có thể là Date_text hay tham chiếu đến ô có giá trị ngày tháng.

- Enddate : Ngày kết thúc của khoảng thời gian làm việc. Enddate có thể là Date_text hay tham chiếu đến ô có giá trị ngày tháng.

- Holidays : Là danh sách những ngày nghỉ lễ. Holidays có thể là mảng date_text {,,} hay tham chiếu đến vùng có chứa date_value.

Ví dụ :

=NETWORKDAYS("01/04/08","30/04/08",{"15/04/08","30/04/08"})                       giá trị trả về là : 20

=NETWORKDAYS(DATE(2008,4,1),DATE(2008,4,30),{"15/04/08","30/04/08"})  giá trị trả về là : 20

=NETWORKDAYS("01/04/08","30/04/08",A1:A2)                                                  giá trị trả về là : 20

  với A1=15/04/08, A2=30/04/08

Hàm NOW

Chức năng : Hàm NOW trả về Ngày, Tháng, Năm và Giờ hiện hành.

Cấu trúc :   NOW()

+ Thời gian sẽ tự động được cập nhật giá trị mỗi khi file được mở hay khi có sự thay đổi nội dung của ô nào đó.

+ Tùy theo kiểu định dạng mà nội dung thể hiện sẽ khác nhau (giá trị thời gian không thay đổi).

Ví dụ :

=NOW()     giá trị trả về : 25/04/2008                 với định dạng dd/mm/yyyy

=NOW()     giá trị trả về : 25/04/2008 16:29:56  với định dạng dd/mm/yyyy h:mm:ss

=NOW()     giá trị trả về : 4:29:56 PM                với định dạng h:mm:ss AM/PM

Hàm SECOND

Chức năng : Hàm SECOND trả về một giá trị, là số Giây lẻ chưa tròn Phút của một giá trị thời gian.

Cấu trúc :     SECOND(serial_number)

- Serial_number : là một biểu thức thời gian, Serial_number có thể là Number, Time_text hay Time_value.

+ Number là số chỉ ngày.1 ngày có 86,400 giây, số giây lẻ của Phút trong  trong Number là : Giây=MOD(Number*86400,60)

+ Giá trị Giây trong biểu thức thời gian (Time_text) phải có giá trị =0 và <60. Nếu vượt qua giá trị này, hàm sẽ trả về lỗi.

Ví dụ :

=SECOND(1.11)                      giá trị trả về là 24

=MOD(1.11*86400,60)             giá trị trả về là 24

=SECOND("10:30:50 AM")      giá trị trả về là 50

=SECOND(TIME(12,59,50))    giá trị trả về là 50

=SECOND(TIME(12,59,70))    giá trị trả về là 10

=SECOND(NOW())                  giá trị trả về là 50

=SECOND("10:30:60 AM")      giá trị trả về là #Value

Hàm TIME

Chức năng : Hàm TIME trả về một giá trị thời gian dựa trên các chỉ tiêu Giờ, Phút, Giây.

Cấu trúc :     TIME(hour,minute,second)

- Hour: là số chỉ Giờ trong giá trị thời gian mà ta muốn trả về.

- Minute : là số chỉ Phút trong giá trị thời gian mà ta muốn trả về.

- Second : là số chỉ Giây trong giá trị thời gian mà ta muốn trả về.

+ Ghi chú : Minute, Second có thể là số (-) hoặc (+), nếu giá trị =60 thì sẽ được chuyển đổi thành giá trị khác tương ứng.

Ví dụ :

=TIME(10,30,30)     giá trị trả về là 10:30:30 AM

=TIME(10,70,30)     giá trị trả về là 11:10:30 AM

=TIME(10,30,-30)    giá trị trả về là 10:29:30 AM

=TIME(10,-30,-90)   giá trị trả về là   9:28:30 AM

Hàm TIMEVALUE

Chức năng : Hàm TIMEVALUE chuyển đổi một chuỗi text có dạng thời gian thành giá trị thời gian có thể tính toán được

Cấu trúc :     TIMEVALUE(time_text)

- Time_text : là chuỗi văn bản dạng thời gian cần chuyển đổi. Các điều kiện đối với time_text :

+ time_text  phải được đặt trong dấu ngoặc kép. Nếu là tham chiếu đến một ô khác thì ô này phải có định dạng là text.

+ Số chỉ phút và số chỉ giờ trong time_text  không được cùng lúc =60, nếu =60 hàm sẽ báo lỗi #Value!.

+ Nếu trong time_text có chữ AM hay PM thì số chỉ phút, chỉ giờ phải < 60, nếu = 60 hàm sẽ báo lỗi #Value!.

Ví dụ :

Các hàm ngày tháng thời gian (Date Time Function)

Hàm TODAY

Chức năng : Hàm TODAY trả về Ngày, Tháng, Năm hiện hành.

Cấu trúc :   TODAY()

+ Ngày tháng trả về trong công thức chính là Ngày tháng hiện hành của hệ thống máy tính mà bạn đang làm việc.

+ Tùy theo kiểu định dạng mà nội dung thể hiện sẽ khác nhau.

Ví dụ :

=TODAY()     giá trị trả về : 25/04/08    với định dạng dd/mm/yy

=TODAY()     giá trị trả về : 25-Apr-2008  với định dạng dd-mmm-yyyy

=TODAY()     giá trị trả về : 25-Apr           với định dạng dd-mmm

=TODAY()     giá trị trả về : Apr-2008       với định dạng mmm-yyyy

Hàm WEEKDAY

Chức năng : Hàm WEEKDAY trả về một giá trị, là số thứ tự của Ngày trong tuần.

Cấu trúc :     WEEKDAY(serial_number, return_type)

- Serial_number : là một biểu thức thời gian, Serial_number có thể là Number hay Value_date.

+ Number là số có giá trị tương ứng với giá trị của Ngày nào đó. VD ngày 27/04/08 ứng với số 39565.

+ Value_date  có thể là tham chiếu đến ô nào đó có giá trị Ngày tháng, hoặc từ kết quả của một số hàm như Today, Date..

-return_type : là tùy chọn để xác định kiểu giá trị sẽ trả về trong công thức, option có giá trị từ 1 đến 3 :

+ option = 1 hoặc để trống : Ngày chủ nhật được xem là 1, Ngày thứ bảy là 7.

+ option = 2 : Ngày thứ hai được xem là 1, Ngày chủ nhật là 7.

+ option = 3 : Ngày thứ hai được xem là 0, Ngày chủ nhật là 6.

Ghi chú : Nếu trong công thức có option =1 và ô có kiểu định dạng là dddd thì kết quả trả về là Tên của Ngày trong tuần.

Ví dụ :

=WEEKDAY(39565)                          giá trị trả về là 1

=WEEKDAY(DATE(2008,4,27))        giá trị trả về là 1

=WEEKDAY(TODAY())                     giá trị trả về là Sunday với kiểu định dạng dddd

=WEEKDAY(DATE(2008,4,27),2)     giá trị trả về là 7

=WEEKDAY(DATE(2008,4,27),3)     giá trị trả về là 6

Hàm WEEKNUM

Chức năng : Hàm WEEKNUM trả về một giá trị, là số thứ tự của Tuần trong Năm.

Cấu trúc :     WEEKNUM(serial_number,return_type)

- Serial_number : là một biểu thức thời gian, Serial_number có thể là Number hay Value_date.

+ Number là số có giá trị tương ứng với giá trị của Ngày nào đó. VD ngày 20/04/08 ứng với số 39558.

+ Value_date  có thể là tham chiếu đến ô nào đó có giá trị Ngày tháng, hoặc từ kết quả của một số hàm như Today, Date..

- return_type: là tùy chọn để xác định kiểu giá trị sẽ trả về trong công thức, option có giá trị từ 1 đến 2 :

+ option = 1 hoặc để trống : Ngày chủ nhật được xem là Ngày đầu tuần.

+ option = 2 : Ngày thứ hai được xem là Ngày đầu tuần.

Ví dụ :

=WEEKNUM(39558)                         giá trị trả về là 17

=WEEKNUM(39558,2)                      giá trị trả về là 16

=WEEKNUM(DATE(2008,4,20),2)    giá trị trả về là 16

Hàm WORKDAY

Chức năng : Hàm WORKDAY trả về một Ngày nào đó, cách mốc thời gian cho trước với một số ngày nhất định.

Cấu trúc :     WORKDAY(startday,days,holidays)

- Startday : Là Ngày được chọn làm mốc thời gian để tính toán. Startday có thể là date_text hay date_value.

- Days : Là số ngày làm việc tính từ mốc thời gian cho trước. Days có thể dương "+" hay âm "-" :

+ days  0 : Nếu Ngày cần tìm là một Ngày ở trong tương lai và công việc vẫn chưa hoàn thành.

+ days < 0 : Nếu Ngày cần tìm là một Ngày ở trong quá khứ và công việc đã kết thúc.

- Holidays : Là danh sách những ngày nghỉ lễ. Holidays có thể là mảng date_text {",,"} hay tham chiếu đến vùng có chứa date_value.

Ví dụ :

=WORKDAY("01/04/08",30,{"15/04/08","30/04/08"})     giá trị trả về là 15/05/08

=WORKDAY(DATE(2008,4,1),30,A1:A2)                      giá trị trả về là 15/05/08

  Với A1=15/04/08, A2=30/04/08

Hàm YEAR

Chức năng : Hàm YEAR trả về một giá trị, là số chỉ Năm trong một biểu thức ngày tháng.

Cấu trúc :     YEAR(serial_number)

- Serial_number : là một biểu thức ngày tháng, có thể là một giá trị ngày tháng hay một chuỗi ngày tháng (date_text).

+ date_text trong công thức phải được đặt trong dấu ngoặc kép "". Nếu là tham chiếu đến một ô khác thì ô này phải có định dạng là text.

+ Năm trong date_text phải trong khoảng từ 1900 đến 9999, nếu vượt quá số này, hàm sẽ báo lỗi #Value.

+ Thông thường date_text có 3 đối số (ngày, tháng, năm). Nếu date_text chỉ có 2 đối số thì excel sẽ tính toán như sau :

++ Nếu đối số thứ nhất < 32 và đối số thứ 2 < 13 thì excel coi đối số thứ nhất là Ngày, thứ 2 là tháng. Năm là năm hiện hành.

++ Nếu đối số thứ nhất <13, đối số thứ 2 12 thì excel coi đối số thứ nhất là tháng, thứ 2 là năm và cho ngày là 1.

++ Các trường hợp khác hàm sẽ báo lỗi #Value.

Ví dụ :

=YEAR("01/02/08")  giá trị trả về : 2008

=YEAR("12/29")      giá trị trả về : 2029

=YEAR("12/30")      giá trị trả về : 1930

=YEAR("13/13")      giá trị trả về : #Value!

=YEAR(today())      giá trị trả về : 2008

Hàm YEARFRAC

Chức năng : Hàm YEARFRAC trả về tỷ lệ giữa khoảng thời gian nào đó so với thời gian 1 năm.

Cấu trúc :     YEARFRAC(startdate,enddate,basis)

- Startdate: Ngày bắt đầu của khoảng thời gian. Startdate có thể là Date_text hay tham chiếu đến ô có giá trị ngày tháng.

- Enddate : Ngày kết thúc của khoảng thời gian. Enddate có thể là Date_text hay tham chiếu đến ô có giá trị ngày tháng.

- Basis : là tùy chọn xác định kiểu tính toán, basis có giá trị từ 0 đến 4 :

+ 0 hay để trống : tính toán dựa trên qui ước 1 năm có 360 ngày và 1 tháng có 30 ngày.

+ 1 : tính toán theo số ngày thực tế của tháng và số ngày thực tế của năm.

+ 2 : tính toán theo số ngày thực tế của tháng và theo qui ước 1 năm có 360 ngày.

+ 3 : tính toán theo số ngày thực tế của tháng và theo qui ước 1 năm có 365 ngày.

+ 4 : tính toán theo kiểu Châu âu dựa trên qui ước 1 tháng có 30 ngày, startdate hoặc enddate nếu trùng vào ngày 31

        của tháng thì chúng sẽ được chuyển thành ngày 30 của tháng đó.

Ví dụ :

=YEARFRAC("01/01/08","03/31/08")        giá trị trả về là 25.00%

=YEARFRAC("01/01/08","03/31/08",1)     giá trị trả về là 24.59%

=YEARFRAC("01/01/08","03/31/08",2)     giá trị trả về là 25.00%

=YEARFRAC("01/01/08","03/31/08",3)     giá trị trả về là 24.66%

=YEARFRAC("01/01/08","03/31/08",4)     giá trị trả về là 24.72%

Các hàm ngày tháng thời gian (Date Time Function)
Top