Giả sử trong các ô A3, B3, C3, D3, E3, F3 chứa các số. Để tính tổng các số này chúng ta có thể dùng công thức sau: =A3+B3+C3+D3+E3+F3, nhưng cách dùng nhanh hơn cả là sử dụng hàm =SUM(A3:F3).
Cú pháp chung của hàm
<tên hàm> ([Đối số])
trong đó:
<tên hàm> được sử dụng theo tên quy ước của Excel.
[Đối số] có thể có hoặc không. Đối số có thể là hằng, chuỗi kí tự, địa chỉ ô, địa chỉ vùng, biểu thức hoặc các hàm lồng nhau.
Sau đây, chúng tôi sẽ liệt kê một số hàm hay dùng nhất.
XVII.1. Nhóm hàm số
XVII.1.1. Hàm SQRT
Hàm căn bậc hai. Cú pháp:
SQRT(number)
Trong đó, number là số muốn lấy căn bậc hai. Nếu số có giá trị âm, hàm SQRT trả lại giá trị lỗi #NUM!.
Ví dụ:
SQRT(16) bằng 4
SQRT(-16) bằng #NUM! SQRT(ABS(-16)) bằng 4
XVII.1.2. Hàm ABS
Trả lại giá trị tuyệt đối của số. Cú pháp:
ABS(number)
Trong đó, number là số thực muốn lấy giá trị tuyệt đối. Ví dụ:
ABS(2) bằng 2 ABS(-2) bằng 2
Nếu A1 chứa -16, thì SQRT(ABS(A1)) bằng 4
XVII.1.3. Hàm ROUND
Làm tròn số Cú pháp:
ROUND(number,num_digits)
Trong đó, number là số muốn làm tròn. Num_digits chỉ định số chữ số muốn làm tròn. Nếu num_digits lớn hơn 0 (zero), thì số được làm tròn đến số xác định sau số thập phân. Nếu num_digits bằng 0, thì number được làm tròn tới phần nguyên. Nếu
num_digits nhỏ hơn 0, thì số được làm tròn về bên trái dấu chấm thập phân. Ví dụ:
ROUND(2.15, 1) bằng 2.2 ROUND(2.149, 1) bằng 2.1 ROUND(-1.475, 2) bằng -1.48 ROUND(21.5, -1) bằng 20 XVII.2. Nhóm hàm thống kê XVII.2.1. Hàm Average
Hàm này trả về giá trị trung bình cộng của các đối số. Cú pháp:
AVERAGE(number1,number2, ...)
Trong đó: Number1, number2, ... là 1 tới 30 đối số.
Ghi chú:
• Các đối số có thể là các hằng số, tên hoặc địa chỉ ô chứa số.
• Nếu địa chỉ ô nằm trong đối số chứa văn bản, các giá trị logic hoặc các ô trống thì các giá trị này được bỏ qua. Tuy nhiên, các ô chứa các giá trị bằng 0 đều được tính.
Ví dụ:
Nếu A1:A5 chứa các số 10, 7, 9, 27, và 2, thì: AVERAGE(A1:A5) bằng 11
AVERAGE(A1:A5, 5) bằng 10
XVII.2.2. Hàm Max
Hàm này trả lại giá trị lớn nhất trong tập hợp các giá trị. Cú pháp:
MAX(number1,number2,...)
Trong đó: number1,number2,... là 1 tới 30 số muốn tìm giá trị lớn nhất của chúng.
Ghi chú:
• Các đối số có thể là các hằng số, các ô trống, các giá trị logic hoặc văn bản đại diện cho số. Các đối số là các giá trị lỗi hoặc văn bản không thể chuyển thành số được sẽ gây ra lỗi trong công thức.
• Nếu một đối số là địa chỉ vùng, chỉ có những giá trị số trong vùng mới được tính trung bình. Các ô trống, các giá trị logic, các giá trị văn bản và các địa chỉ trong vùng được bỏ qua. Nếu muốn tính trung bình cả cho các giá trị logic và văn bản thì dùng hàm MAXA thay thế.
• Nếu hàm không chứa đối số sẽ cho giá trị bằng 0. Ví dụ:
Nếu A1:A5 chứa các số 10, 7, 9, 27, và 2, thì: MAX(A1:A5) bằng 27
MAX(A1:A5,30) bằng 30
XVII.2.3. Hàm MIN
Cú pháp:
MIN(number1,number2, ...)
Trong đó: number1, number2,... là 1 tới 30 số muốn tìm giá trị nhỏ nhất của chúng. Đặc điểm của các đối số này hoàn toàn tưng tự như các đối số của hàm MAX.
Ví dụ:
Nếu A1:A5 chứa các số 10, 7, 9, 27, và 2, thì: MIN(A1:A5) bằng 2
MIN(A1:A5, 0) bằng 0
XVII.2.4. Hàm SUM
Hàm này cho giá trị là tổng các số Cú pháp:
SUM(number1,number2, ...)
Trong đó, number1, number2, ... là 1 tới 30 đối số muốn tính tổng giá trị của chúng. Các đối ở đây có thể là các giá trị, danh sách địa chỉ các ô, một vùng ô.
Ghi chú:
• Các số, các giá trị logic và văn bản đại diện cho số mà ta gõ trực tiếp trong danh sách đối số đều được tính (xem hai ví dụ đầu tiên ở dưới đây).
• Nếu một đối số là một vùng địa chỉ thì chỉ có những giá trị số trong vùng này được tính. Các ô trống, các giá trị logic hoặc các giá trị lỗi trong vùng này bị bỏ qua (xem ví dụ thứ ba).
• Các đối số là các giá trị lỗi hoặc text mà không thể chuyển thành số sẽ gây lỗi. Ví dụ:
SUM(3, 2) bằng 5
SUM("3", 2, TRUE) bằng 6 vì các giá trị văn bản chuyển thành giá trị số và giá trị logic TRUE chuyển thành số 1.
Khác với ví dụ trên, nếu A1 chứa "3" và B1 chứa TRUE, thì:
SUM(A1, B1, 2) bằng 2 vì các tham chiếu tới các giá trị không phải là số không được chuyển thành số.
Nếu các ô A2:E2 chứa 5, 15, 30, 40, và 50, thì: SUM(A2:C2) bằng 50
SUM(B2:E2, 15) bằng 150
Chú ý:
• Khi cần dùng hàm SUM, hãy sử dụng nút AutoSum ( ) trên Toolbar thực hiện phép tính nhanh hơn. Các bước thực hiện như sau:
1. Chọn ô muốn chứa kết quả. (Khi cộng một cột, hãy kích hoạt ô phía dưới sát ô cuối cùng của cột. Khi cộng một hàng, hãy kích hoạt ô sát phía bên phải của hàng). 2. Kích chuột vào nút AutoSum. lúc này trên thanh công thức xuất hiện =SUM(Đối số chỉ vùng).
3. Ấn Enter, nếu tất cả các đối số chỉ vùng phù hợp với địa chỉ vùng cần chọn. Ngược lại, phải dùng chuột để chọn lại vùng địa chỉ (liên tục hoặc rời rạc) rồi mới ấn phím Enter.
XVII.2.5. Hàm COUNT
Đếm số ô chứa số và các số trong danh sách đối số. Cú pháp:
COUNT(value1,value2, ...)
Trong đó, value1, value2, ... là 1 tới 30 đối có thể chứa hoặc tham chiếu đến các ô chứa các loại dữ liệu khác nhau nhưng chỉ có các số được đếm.
Ví dụ: Trong bảng sau A 1 345 2 6/9/88 3 4 5:20:15 5 TRUE 6 #DIV/0! 7 Giá tiền ta có: COUNT(A1:A7) bằng 3 COUNT(A2:A7) bằng 2 COUNT(A1:A7, 2) bằng 4 XVII.2.6. Hàm RANK
Hàm này trả lại số thứ tự trong một danh sách số. Cú pháp:
RANK(number,ref,order)
Trong đó, number là số muốn tìm thứ tự của nó trong dãy số. Ref là vùng giá trị hoặc địa chỉ của vùng dãy số. Các giá trị không phải là số trong vùng này được bỏ qua.
Order là thứ tự sắp xếp dãy số. Nếu order bằng 0 (zero) hoặc bỏ qua, Microsoft Excel xếp thứ bậc theo thứ tự giảm dần của dãy số. Nếu order là bất kì giá trị nào khác 0, Microsoft Excel sắp thứ bậc theo thứ tự tăng dần của dãy số.
Ghi chú:
• RANK sắp xếp các số trùng nhau theo cùng bậc. Tuy nhiên, sự hiện diện của các số trùng nhau ảnh hưởng tới thứ bậc của các số khác. Ví dụ, trong chuỗi số nguyên, nếu số 10 xuất hiện hai lần và có thứ bậc là 5, thì 11 sẽ có thứ bậc là 7 (không có số nào có thứ bậc là 6).
Nếu A1:A5 chứa các số 7, 3.5, 3.5, 1, và 2, thì: RANK(A2,A1:A5,1) bằng 3
RANK(A1,A1:A5,1) bằng 5
XVII.3. Nhóm hàm đổi kiểu
XVII.3.1. Hàm TEXT
Hàm này đổi các giá trị số thành text với định dạng cho trước. Cú pháp:
TEXT(value,format_text)
Trong đó, value là giá trị số, hoặc công thức cho giá trị số hoặc địa chỉ ô chứa giá trị số. Format_text là định dạng số kiểu text trong hộp Category thuộc mục Number
trong hộp hội thoại Format Cells (sẽ được trình bày kĩ ở phần sau). Format_text
không thể chứa dấu sao (*) và không thể được định dạng kiểu General.
Ghi chú:
• Sử dụng hàm TEXT để chuyển số thành định dạng text, và kết quả không là số nữa.
Ví dụ:
TEXT(2.715, "$0.00") = "$2.72"
TEXT("4/15/91", "mmmm dd, yyyy") = "April 15, 1991"
XVII.3.2. Hàm VALUE
Hàm chuyển giá trị văn bản đại diện cho một số thành giá trị số. Cú pháp:
VALUE(text)
Trong đó, text là các kí tự số nằm trong dấu nháy kép hoặc địa chỉ ô chứa văn bản muốn chuyển thành số. Text có thể chỉ hằng số, ngày tháng hoặc thời gian được biểu diễn theo định dạng của Microsoft Excel. Nếu text không tuân theo các định dạng này, hàm VALUE trả về giá trị lỗi #VALUE!
Ghi chú:
• Nói chung không cần dùng hàm VALUE trong công thức vì Microsoft Excel tự động chuyển text thành số khi cần thiết.
Ví dụ:
VALUE("$1,000") = 1,000
VALUE("16:48:00")-VALUE("12:00:00") = "16:48:00"-"12:00:00" bằng 0.2, tương đương với 4 giờ và 48 phút.
XVII.4. Nhóm hàm kí tự
XVII.4.1. Hàm LEFT
Hàm này trả lại một số kí tự được chỉ định từ bên trái của chuỗi kí tự. Cú pháp:
Trong đó, text là chuỗi kí tự muốn trích ra một số kí tự bên trái. Num_chars chỉ định số kí tự muốn trích ra. Num_chars phải lớn hơn hoặc bằng 0. Nếu num_chars lớn hơn độ dài của text, hàm LEFT trả lại toàn bộ text. Nếu num_chars bị bỏ qua, nó trả lại một kí tự.
Ví dụ:
LEFT("Hà Nội", 2) = "Hà"
Nếu A1 chứa "Huế", thì LEFT(A1) bằng "H"
XVII.4.2. Hàm RIGHT
Hàm này trả lại một số kí tự được chỉ định từ bên phải của chuỗi kí tự. Cú pháp:
RIGHT(text,num_chars)
Các đối của hàm RIGHT tương tự như hàm LEFT. Ví dụ:
RIGHT("Hà Nội", 3) bằng "Nội" RIGHT("Hà Nội") bằng "i"
XVII.4.3. Hàm MID
Trả lại số kí tự xác định từ chuỗi kí tự, bắt đầu từ một vị trí xác định. Cú pháp:
MID(text,start_num,num_chars)
Trong đó, text là chuỗi kí tự chứa các kí tự muốn trích ra. Start_num là vị trí của kí tự đầu tiên muốn trích ra từ chuỗi kí tự. Kí tự đầu tiên của chuỗi văn bản được đánh số là 1. Nếu start_num lớn hơn độ dài của chuỗi kí tự, hàm MID trả về chuỗi rỗng "". Nếu start_num nhỏ hơn độ dài của chuỗi kí tự nhưng start_num cộng num_chars
vượt quá độ dài của chuỗi kí tự, hàm MID trả về các kí tự từ điểm bắt đầu cho tới hết chuỗi kí tự. Nếu start_num nhỏ hơn 1, hàm MID trả lại giá trị lỗi #VALUE!.
Num_chars chỉ định số kí tự muốn trích ra. Nếu num_chars có giá trị âm, hàm MID trả về giá trị lỗi #VALUE!
Ví dụ:
MID("Phan Tùng", 1, 4) bằng "Phan" MID("Phan Tùng", 6, 20) bằng "Tùng" MID("1234", 5, 5) bằng "" (chuỗi rỗng)
XVII.4.4. Hàm UPPER
Chuyển văn bản thành chữ hoa (chỉ đúng với tiếng Anh và tiếng Việt không dấu (nếu gõ tiếng Việt có dấu theo kiểu telex))
Cú pháp:
UPPER(text)
Trong đó, text là chuỗi kí tự muốn chuyển thành chữ hoa. Text có thể là chuỗi kí tự hoặc địa chỉ ô.
Ví dụ:
UPPER("total") = "TOTAL"
XVII.4.5. Hàm LOWER
Chuyển văn bản thành chữ thường(chỉ đúng với tiếng Anh và tiếng Việt không dấu (nếu gõ tiếng Việt có dấu theo kiểu telex).
Cú pháp:
LOWER(text)
Trong đó, text là chuỗi kí tự muốn chuyển thành chữ thường. Hàm LOWER không chuyển các kí tự không phải là text thành chữ thường.
Ví dụ:
LOWER("E. E. Cummings") = "e. e. cummings" LOWER("Apt. 2B") = "apt. 2b"
XVII.4.6. Hàm PROPER
Biến tất cả các chữ cái đầu từ và tất cả các kí tự ở ngay sau những kí tự đặc biệt thành chữ hoa đồng thời biến tất cả các chữ cái còn lại thành chữ thường.
Cú pháp:
Trong đó, text là chuỗi kí tự nằm trong dấu nháy, công thức cho giá trị văn bản hoặc địa chỉ ô tham chiếu tới giá trị văn bản.
Ví dụ:
PROPER("this is a TITLE") = "This Is A Title" PROPER("2-cent's worth") = "2-Cent'S Worth" PROPER("76BudGet") = "76Budget"
XVII.4.7. Hàm TRIM
Xoá bỏ tất cả những dấu cách ở hai đầu của một chuỗi ký tự. Cú pháp:
TRIM(text)
Trong đó, text là chuỗi kí tự hoặc địa chỉ ô tham chiếu tới chuỗi kí tự. Ví dụ:
TRIM(" Họ và tên ") bằng "Họ và tên "
XVII.5. Nhóm hàm điều kiện
XVII.5.1. Hàm IF
Trả lại một giá trị nếu điều kiện chỉ định được đánh giá là TRUE (đúng) và trả lại giá trị kia nếu điều kiện nhận giá trị FALSE (sai).
Cú pháp:
IF(logical_test,value_if_true,value_if_false)
Trong đó, logical_test là biểu thức logic có giá trị là TRUE hoặc FALSE. Value_if_true
là giá trị được hàm trả về nếu logical_test là TRUE. Value_if_true có thể là một công thức. Value_if_false là giá trị được trả về nếu logical_test có giá trị FALSE.
Value_if_false có thể là công thức.
Ghi chú:
• Có thể lồng 7 hàm IF thay cho các giá trị value_if_true và value_if_false. Xem ví dụ cuối.
Ví dụ:
Trong ví dụ sau, nếu giá trị trong ô A10 là 100, khi đó, logical_test là TRUE, và giá trị tổng của vùng B5:B15 được tính. Ngược lại, logical_test là FALSE, hàm sẽ trả về giá trị là chuỗi rỗng ("").
IF(A10=100,SUM(B5:B15),"")
Giả sử khi ta cần xếp loại học sinh theo điểm trung bình theo tiêu chuẩn cho trong bảng sau:
Nếu điểm TB thì xếp loại
lớn hơn hoặc bằng 8.5 Giỏi
từ 6.5 đến 8.5 Khá từ 5.0 đến 6.5 TB nhỏ hơn 5.0 Kém Ta có thể dùng các hàm IF lồng nhau như sau:
Trong ví dụ trên, hàm IF thứ hai là đối số value_if_false của hàm IF thứ nhất. Tương tự, hàm IF thứ ba là đối số value_if_false của hàm IF thứ hai. Ví dụ, nếu đối số
logical_test đầu tiên (DTB>=8.5) là TRUE, hàm trả về giá trị "Giỏi". Nếu đối số
logical_test thứ nhất nhận giá trị FALSE, hàm IF thứ hai được kiểm tra tiếp, ...
XVII.5.2. SUMIF
SUMIF(Vùng 1, “điều kiện”, vùng 2)
@ Tính tổng giá trị các ô trong vùng 2 tương ứng với các ô vùng 1 đã thoả mãn điều kiện.
Ví dụ : Dữ liệu trong vùng B4:B7 là 3, 6, 8, 6 Dữ liệu trong vùng C4:C7 là 6, 9, 9, 4
=SUMIF(B4:B7, “>5”, C4:C7) {kết quả là =22}
Tinh tổng giá trị các ô trong vùng C4:C7 tương ứng với các ô trong vùng B4:B7 nếu giá trị các ô này lớn hơn 5, như vậy các ô có giá trị 6, 8, 6 trong vùng B4:B7 thoả mãn điều kiện, tương ứng với các ô có giá trị 9, 9, 4 trong vùng C4:C7, kết quả tổng bằng 22.
XVII.5.3. COUNTIF
COUNTIF(Vùng, “điều kiện”)
@ Đếm các ô thoả mãn điều kiện trong vùng. Ví dụ: (Lấy ví dụ của B4:B7 ở ví dụ trên)
=COUNTIF(B4:B7, “<5”) {=1}
XVII.6. Nhóm hàm ngày tháng
XVII.6.1. Date
DATE(yy, mm, dd) @ Nhập ngày tháng.
(yy,mm,dd) : Nhập hai số của năm tháng ngày.
Ví dụ : =DATE(98,09,25) {Kết quả =9/25/98} (Tháng 9 ngày 25 năm 98)
XVII.6.2. WEEKDAY
WEEKDAY(Tháng-ngày-năm) @ Trả về số thứ trong tuần.
Ví dụ : Dữ liệu trong ô B3 là ngày 11/06/98 =WEEKDAY(B3) {=6} (Ngày 6/11/98 là thứ 6)
XVII.6.3. DAY
DAY(Tháng-ngày-năm)
@Trả về số thứ tự của ngày trong tháng. Ví dụ : =DAY(11/25/98) {=25} Có thể dùng hàm DAY để tính số ngày, tuần. Ví dụ : Dữ liệu trong ô C3 là ngày 11/25/98
=(DAY(C3)-DAY(B3)) {=19} XVII.6.4. MONTH MONTH(Tháng-ngày-năm) @ Trả về số của tháng Ví dụ : =MONTH(B3) {=11} XVII.6.5. YEAR YEAR(Tháng-ngày-năm) @ Trả về số của năm Ví dụ : =YEAR(B3) {=98} XVII.7. Nhóm hàm logic XVII.7.1. Hàm And
Trả về giá trị TRUE nếu tất cả các đối số nhận giá trị TRUE; trả về giá trị FALSE nếu một hoặc nhiều đối số nhận giá trị FALSE.
Cú pháp:
AND(logical1,logical2, ...)
Trong đó, logical1, logical2, ... là 1 tới 30 điều kiện có thể nhận một trong hai giá trị TRUE hoặc FALSE. Nếu đối không nhận giá trị logic, hàm AND trả về giá trị lỗi #VALUE!
Ví dụ: AND(TRUE, TRUE) bằng TRUE
AND(TRUE, FALSE) bằng FALSE AND(2+2=4, 2+3=5) bằng TRUE
Nếu B1:B3 chứa các giá trị TRUE, FALSE, và TRUE, thì AND(B1:B3) bằng FALSE. Nếu B4 chứa số giữa 1 và 100, thì AND(1<B4, B4<100) bằng TRUE
Giả sử rằng ta muốn hiện giá trị của B4 nếu nó chứa một số có giá trị từ 1 đến 100, ngược lại muốn hiện thông báo lỗi. Nếu B4 chứa 104, thì IF(AND(1<B4, B4<100), B4, "The value is out of range.") bằng "The value is out of range."
Nếu B4 chứa 50, thì IF(AND(1<B4, B4<100), B4, "The value is out of range.") bằng 50.
XVII.7.2. Hàm OR
Trả về giá trị TRUE nếu bất kì đối số nào nhận giá trị TRUE; trả về giá trị FALSE nếu tất cả các đối số nhận giá trị FALSE.
Cú pháp:
OR(logical1,logical2,...)
Trong đó, logical, logical2,... là 1 tới 30 điều kiện sẽ nhận một trong hai giá trị TRUE hoặc FALSE.
Ví dụ: OR(TRUE) bằng TRUE
OR(1+1=1,2+2=5) bằng FALSE
1. AND(Các biểu thức điều kiện)
@ Trả về giá trị “Và” logic (True hay False) của các biểu thức điều kiện. Ví dụ : =IF(AND(B3>5,E3=”A”), “Đ”, “H”)
Nếu B3 lớn hơn 5 và (AND) E4 là A thì cho kết quả là “Đ”, ngược lại sẽ cho kết quả là “H”.
XVII.7.3. Hàm NOT
NOT(Biểu thức điều kiện)
@ Trả về giá trị “Không” Logic (True hay False) của các biểu thức điều kiện. Ví dụ : =IF(AND(B3>5, NOT(C3=0)), “Đ”, “H”)
Nếu B3 lớn hơn 5 và (AND) C3 không (NOT) bằng 0 thì kết quả là “Đ”, ngược lại sẽ cho kết quả là “H”.
XVII.8. Nhóm hàm tìm kiếm
XVII.8.1. Hàm VLOOKUP
VLOOKUP(x, vùng tham chiếu, n, kiểu tìm) Trong đó:
x: giá trị tìm kiếm
vùng tham chiếu: là một vùng hình chữ nhật các ô, trong đó các cột được đánh số từ 1, 2, …Cột đầu tiên là cột dùng để tìm x trong đó
n: là một số từ 1, 2, …
kiểu tìm: đây là một số nhận 1 trong 2 giá trị trong tập {0,1}