Professional Documents
Culture Documents
Formula 2023
Formula 2023
Minh họa:
X 2
A B AX + B (A + B)X + B
4 5 13 23
6 4 16 24
3 4 10 18
Thử nghiệm:
Khi sao chép công thức sang vị trí khác:
Thay đổi dữ liệu A, B, X, quan sá
Vị trí tham khảo tuyệt đối không đổi
Chọn các ô công thức, nhấn F2 đ
Vị trí tham khảo tương đối di chuyển với cùng độ dời như ô công thức
Nhận xét về sự thay đổi của các t
( vị trí tương đối giữa ô tham khảo và ô công thức không đổi)
Nhận xét về tiêu đề của cột cuối
ông thức
ham khảo đến ô (cell reference)
Dạng tương đối <ten_cot><ten_dong> A1
Dạng tuyệt đối $<ten_cot>$<ten_dong> $A$1
Dạng kết hợp $<ten_cot><ten_dong> $A1
<ten_cot>$<ten_dong> A$1
hử nghiệm:
Thay đổi dữ liệu A, B, X, quan sát sự thay đổi ở các ô công thức
Chọn các ô công thức, nhấn F2 để xem nội dung công thức
Nhận xét về sự thay đổi của các tham khảo tương đối
Nhận xét về tiêu đề của cột cuối (đúng/sai)
Các phép toán cơ b
Phép toán số học
A B A+B A-B A*B A/B A^B -A
5 4 9 1 20 1.25 625 -5
Lưu ý:
Thứ tự thực hiện các phép toán trong một biểu thức tuân theo độ ưu tiên và luật kết hợp của
các phép toán
Thử nghiệm:
Thay đổi dữ liệu A, B, C, quan sát sự thay đổi ở các ô công thức
Nhận xét về thứ tự thực hiện các phép toán ở các công thức có nhiều phép toán
Sử dụng cặp dấu () để thay đổi thứ tự thực hiện của các phép toán
Các phép toán cơ bản
Phép toán nối chuỗi
A% A B A&B
0.05 Lệnh Hồ Xung Lệnh HồXung
Lưu ý:
Có 6 phép toán so sánh chuỗi: <, <=, >, >=, =, <>
So sánh dựa trên mã số của các ký tự
Không phân biệt chữ thường/chữ hoa (non case-sensitive)
A<B
FALSE
nsitive)
Sử dụng hà
Chọn hàm muốn sử dụng
Chọn theo nhóm chức năng (chọn hàm sử dụng gần đây trong nhóm "Recently Used")
Duyệt tìm trên dánh sách liệt kê tên hàm, xem thông tin mô tả chức năng của hàm
Chọn hàm phù hợp
) Chọn "Insert Function" (hoặc nhấn nút fx ở đầu thanh công thức)
Nhập mô tả ngắn gọn về thao tác tính toán cần thực hiện. Chọn "Go"
Lựa chọn hàm cần dùng trong danh sách các hàm
Mô tả ngắn về hàm
Mã báo lỗi
#DIV/0! Lỗi chia cho 0
#VALUE! Lỗi tham khảo dữ liệu không tồn tại
u( #N/A Lỗi do công thức không có kết quả hợp lệ (not available)
u(
#NAME? Lỗi do Excel không nhận biết được tên đang dùng
#NULL! Lỗi tham khảo đến phạm vi rỗng
#NUM! Lỗi giá trị số không hợp lệ
#REF! Lỗi tham khảo không hợp lệ
#VALUE! Lỗi khi điền kết quả vào các ô liền kề
#VALUE! Lỗi do sử dụng loại dữ liệu không được hỗ trợ trong phiên bản
#VALUE! Lỗi thông số không phù hợp
############ Lỗi do giá trị dữ liệu vượt ngoài giới hạn biểu diễn của Excel
Lỗi do độ rộng cột không đủ hiển thị nội dung dữ liệu
g thức)
Chọn "Go"
ước:
được
lệ (not available)
hỗ trợ trong phiên bản
Trích chuỗi con dài num_chars ký tự từ đầu trái (LEFT), đầu phải (RIGHT),
hoặc từ vị trí start_num (MID) của chuỗi nguồn text Thử thay đổi các giá trị thông số, quan
Tìm vị trí xuất hiện của chuỗi con find_text trong chuỗi within_text Tìm hiểu sự khác biệt giữa hai hàm FIN
Vị trí bắt đầu tìm là start_num
TEXT
TEXT(number, format_text)
0: luôn điền số,
#: điền số nếu có (xem thêm thông tin trợ giúp)
Chuyển giá trị số number về dạng biểu diễn bằng chuỗi theo định dạng Thử nghiệm với các chuỗi định dạng (fo
chỉ định format_text
Minh họa
Minh họa
Chuyển giá trị số number về dạng biểu diễn bằng chuỗi theo định dạng
tiền tệ, số chữ số sau dấu chấm thập phân (số chữ số lẻ) là decimals
Minh họa
Chuyển giá trị số number về dạng biểu diễn bằng chuỗi, số chữ số sau
dấu chấm thập phân (số chữ số lẻ) là decimals, mặc định có hiển thị dấu
phân cách ngàn (commas)
Minh họa
VALUE(text)
VALUE
Minh họa
LOWER(text) LOWER
UPPER(text) UPPER
PROPER(text) PROPER
Chuyển đổi dạng chuỗi text (chữ thường, chữ hoa, chữ hoa đầu từ)
Minh họa
TRIM(text)
CLEAN(text)
TRIM
TRIM Xóa các khoảng trắng thừa, các ký hiệu xuống dòng trong CLEAN
chuỗi text
Minh họa
REPT
CONCAT nối liên tiếp các chuổi text1, text2, ...
REPT nối lặp lại chuỗi text với số lần lặp là number_times
TEXTJOIN nối các chuỗi text1, text2, ... có dấu ngăn cách delimiter
CONCAT nối liên tiếp các chuổi text1, text2, ...
REPT nối lặp lại chuỗi text với số lần lặp là number_times TEXTJOIN
TEXTJOIN nối các chuỗi text1, text2, ... có dấu ngăn cách delimiter
giữa các chuỗi (có thể tùy chọn bỏ qua hay giữ các chuỗi trống trong Chuỗi trống text2 được giữ
chuỗi kết quả) trong kết quả do ignore_empty
= FALSE
REPLACE
REPLACE(old_text, start_num, num_chars, new_text)
SUBSTITUTE(text, old_text, new_text[, instance_num])
SUBSTITUTE
SUBSTITUTE
REPLACEthay thế phần chuỗi dài num_chars bắt đầu từ vị trí
start_num trong chuỗi old_text bởi chuỗi new_text
SUBSTITUTE thay thế chuỗi con old_text tìm thấy ở vị trí thứ
instance_num trong chuỗi text bởi chuỗi new_text Minh họa dùng SUBSTITUTE và LEN để đ
(mặc định thay thế tất cả vị trí tìm thấy)
Chuỗi:
Số từ:
Bài tập:
Tìm hiểu và tạo các ví dụ minh họa cho các hàm TEXTAFTER,
TEXTBEFORE, TEXTSPLIT
Bài tập (quan trọng):
Liên hệ tình huống tính toán thực tế có sử dụng các hàm đã học
tác trên chuỗi
Thông số
ử thay đổi các giá trị thông số, quan sát sự thay đổi ở các ô công thức
Thông số
14 find_text Xung
14 whithin_text Lenh Ho Xung Xung
start_num 10
Thông số
Thông số
12,345.7 number 12345.67
decimals 1
Thông số
Thông số
Thông số
Thông số
Lenh Ho Xung la
text dai de tu
phai Hoa Son
dai de tu
phai Hoa Son
Lenh Ho Xung la dai de tu phai Hoa Son
Thông số
DAY(date_value) trả về thành phần ngày, tháng, năm tương ứng với date_value
MONTH(date_value) date_value: dữ liệu ngày (dạng Date hoặc số nguyên)
YEAR(date_value)
TODAY() trả về ngày hiện tại
WEEKDAY(serial_number, return_type)
trả về thứ tự trong tuần của ngày tương ứng với serial_number
return_type = 1: Sunday = 1 ... Saturday = 7
return_type = 2: Monday = 1 ... Sunday = 7
return_type = 3: Monday = 0 ... Sunday = 6
EOMONTH(start_date, months) trả về ngày cuối của tháng cách start_date một khoảng months
(kết quả trả về ở dạng serial number)
HOUR(time_value) trả về thành phần giờ, phút, giây tương ứng với time_value
MINUTE(time_value) time_value: dữ liệu giờ (dạng Time hoặc số)
SECOND(time_value)
NOW() trả về ngày, giờ hiện tại
Các hàm thao tác trên dữ liệu ngày, giờ
Minh họa
DATE
DATEVALUE
WEEKDAY
ber
EOMONTH
DAYS
ể các ngày lễ holidays NETWORKDAYS
Minh họa
TIME
TIMEVALUE
time_text
HOUR
ới time_value
MINUTE
SECOND
NOW
Thông số
28 date_value 3/28/2023
3
2023
4/10/2024
4 serial_number 04/10/24
date_value 4/10/2024
return_type 1
10 end_date 4/10/2024
8 start_date 3/31/2024
holidays 7/5/2023
7/12/2023
or Mac, phiên bản trước 2011, biểu diễn dữ liệu ngày tháng theo hệ 1904
chọn sử dụng hệ 1904 để tương thích với các Mac files phiên bản cũ
Thông số
1:26 PM hour 13
0.0593171296296295 minute 25
second 63
time_text 25:25:25
ô N51, đổi dạng hiển thị dữ liệu
Time để thấy kết quả ở dạng giờ-
giây Sử dụng ký tự ' để nhập dữ liệu
giờ dạng text
13 time_value 13:25:30
25
30
4/10/2024 7:37
ABS, CEILING, FLOOR, ROUND, EVEN, ODD
number ABS (number) CEILING(number, significance) ROUND(number, num_digits)
significance = 2 num_digits = 1
125.5547 125.5547 126 125.6
46.4364 46.4364 48 46.4
-46.4367 46.4367 -46 -46.4
-125.5544 125.5544 -124 -125.6
FLOOR(number, significance) ROUNDDOWN ROUNDUP
significance = 1
125 125.5 125.6
46 46.4 46.5
-47 -46.4 -46.5
-126 -125.5 -125.6
Chọn xem nội dung các ô công thức để biết cách sử dụng các hàm
Thay đổi giá trị của các thông số, quan sát sự thay đổi của kết quả tính toán
Liên hệ tình huống tính toán thực tế có sử dụng các hàm (quan trọng)
MMULT, SUMPRODUCT
array_1 1 2 3 4
Nhân hai ma trận (array hai chiều)
số cột của array_1 = số dòng của array_2 array_2
1
2
3
MMULT(array_1, array_2) 30 4
array_1 1 2 3 4
Tổng các tích của từng cặp phần tử
array_2 1 2 3 4
EVEN(number)
126
48 ABS(number)
-48 Trả về trị tuyệt đối của number
-126
CEILING(number, significance), FLOOR(number, significance)
ODD(number)
CEILING trả về số nguyên gần nhất, lớn hơn number đồng thời chia hết ch
FLOOR trả về số nguyên gần nhất, nhỏ hơn number đồng thời chia hết cho s
127
ROUND(number, num_digits)
47
Trả về trị làm tròn của number, số chữ số làm tròn là num_digits (num_digit
-47
ROUNDDOWN(number, num_digits), ROUNDUP(number, num_digits)
ROUNDDOWN trả về trị làm tròn của number theo hướng về gần gốc 0 (z
-127
ROUNDUP trả về trị làm tròn của number theo hướng ra xa gốc 0 (zero)
EVEN(number), ODD(number)
EVEN trả về trị làm tròn lên đến số nguyên chẵn gần nhất so với number
ODD trả về trị làm tròn lên đến số nguyên lẻ gần nhất so với number
Minh họa dùng MMULT để tính điểm trung bình theo số tín chỉ môn học
Minh họa dùng SUMPRODUCT để tính điểm tổng kết từ điểm thành phần theo tỷ lệ
TN DD GK CK
Sinh viên 10% 5% 35% 50%
An 7.50 7.00 6.00 5.00
Bình 7.00 7.50 8.00 7.00
Chi 7.00 6.50 7.50 6.50
Minh họa
INT, A B A/B INT(A/B)
MOD, 12 18 0.66666666667 0
QUOTIENT 18 12 1.5 1
nce)
er đồng thời chia hết cho significance
đồng thời chia hết cho significance
num_digits (num_digits có thể < 0, > 0 hoặc = 0)
r, num_digits)
o hướng về gần gốc 0 (zero) Up Down
ớng ra xa gốc 0 (zero) 0
Up Down
n nhất so với number
hất so với number
ần theo tỷ lệ
QUOTIENT(A,B) MOD(A,B)
0 12
1 6
Hàm kiểm tra điều kiện
IF
Điều kiện Kết quả trả về khi điều kiện sai (mặc định FALSE)
Kết quả trả về khi điều kiện đúng (mặc định TRUE)
Đây chỉ là các ví dụ đơn giản về hàm IF (có dùng dữ liệu trực tiếp).
Thực tế không dùng dữ liệu trực tiếp trong công thức, dùng mô tả dữ liệu Không nên sử dụng hàm
và tham khảo đến dữ liệu. Với các bài toán có dạng
IFS
Kiểm tra nhiều điều kiện thay cho IF lồng nhau nhiều cấp
Trả về mã báo lỗi #N/A khi không có điều kiện đúng
kết quả trả về khi logical_tes
IFERROR, IFNA
IFERROR(value, value_if_error)
IFNA(value, value_if_NA)
Kết quả trả về khi phát sinh lỗi sai
(có thể là dữ liệu, tham khảo đến dữ liệu, biểu thức tính toán)
Kết quả trả về khi biểu thức không phát sinh lỗi sai
Lưu ý về độ ưu tiên của các phép toán luận lý khi biểu diển các biểu thức luận lý phức hợp
trả về:
u
khảo dữ liệu
ả của biểu thức, hàm
if_true_2, ...)
ệu, biểu thức tính toán)
ERROR_CODE
NOT_FOUND
OR(A, B, C) XOR(A, B, C)
0 FALSE
TRUE TRUE
TRUE TRUE
TRUE FALSE
TRUE TRUE
TRUE FALSE
TRUE FALSE
TRUE TRUE
ức hợp
TRUE(1) FALSE(0)
Dò tìm theo phạm vi Dò tìm theo trị
(cách thức mặc định) Tìm trị = trị dò
#N/A: Dò tìm không có kết quả Tìm trị lớn nhất ≤ trị dò
Chọn xem nội dung công thức để biết cách sử dụng hàm VLOOKUP
Lý giải cách thức sử dụng các dạng tham khảo trong công thức
HLOOKUP
TRUE(1) FALSE(0)
Dò tìm theo phạm vi Dò tìm theo trị
(cách thức mặc định) Tìm trị = trị dò
#N/A: Dò tìm không có kết quả Tìm trị lớn nhất ≤ trị dò
Chọn xem nội dung công thức để biết cách sử dụng hàm HLOOKUP, lý giải cách thức sử dụng các dạng tham khảo trong c
Giải thích ý nghĩa của thao tác dò tìm theo phạm vi, suy ra cách thức tổ chức bảng dò tìm
Minh họa kết quả trả về của hàm MATCH với các cách thức so khớp khác nhau
Chọn xem nội dung công thức để biết cách sử dụng các hàm. Giải thích về các kết quả có được
XLOOKUP
-1: chọn đúng theo trị nếu có, ngược lại chọn phần tử nhỏ hơn kế tiếp nếu
· search_mode: thứ tự dò 1:
tìmchọn
(mặcđúng
địnhtheo
= 1trị- tìm
nếu từ
có, phần
ngượctử chọn
lại đầu đếnphần
phầntử tử
lớncuối)
hơn kế tiếp nếu c
FALSE(0)
Dò tìm theo trị
Tìm trị = trị dò
Cột dò
(phải là cột 1)
1 2 3
Lưu ý: Bảng dò không chứa phần tiêu đê
Tiếng Việt Tiếng Pháp Tiếng Anh
Con cá Poisson Fish
Con mèo Chat Cat
Con voi Elephant Elephant
HÌNH 2
FALSE(0)
ò tìm theo trị
ìm trị = trị dò
Bảng dò
Minh họa cách kết hợp hàm MATCH và INDEX để giải bài toán xác định tỷ
Bài toán có thể giải quyết đơn giản bằng hàm VLOOKUP với cách dò = 1
Minh họa cách dùng hàm INDEX, MATCH để giải bài toán tra từ Anh
Minh họa cách dùng hàm XLOOKUP để giải bài toán tra từ Anh
Cách thức dò Thứ tự
dò tìm Từ cần tra Từ tiếng Việt
Cat Con mèo
Fish Con cá
Ghost KHONG_CO
Minh họa hàm XLOOKUP với các cách thức dò tìm khác nhau
search_mode 1
match_mode XLOOKUP
ử nhỏ hơn kế tiếp nếu có
0 2
1 #NAME?
nử tử
lớncuối)
hơn kế tiếp nếu có
-1 #NAME?
Thay đổi các thông số và lý giải về kết quả nhận được để hiểu rõ các cách t
đê
Dòng dò
(phải là dòng 1)
Mã báo lỗi
KHONG_CO
lookup_value 30
return_array lookup_array
1 24
2 30
3 38
4 23
5 40
ATCH.
Các hàm
SUM
COUNTIF, COUNTIFS
COUNTIF(range, criteria)
Vùng kiểm tra điều kiện Điều kiện muốn kiểm tra (chuỗi, số, biểu thức)
COUNTIF(range, criteria)
Vùng kiểm tra điều kiện Điều kiện muốn kiểm tra (chuỗi, số, biểu thức)
Các vùng kiểm tra điều kiện phải cùng kích thước (số dòng, số cột)
Alt + = Tạo nhanh công thức tính tổng (dùng hàm SUM)
Minh họa dùng SUMIF, SUMIFS để tính tổng doanh số của từng nhân viên
Chọn xem nội dung các ô công thức, lý giải cách sử dụng các hình thức tham khảo trong công thức
Thử thay đổi các điều kiện tính tổng criteria_2
Dựa vào dữ liệu minh họa, nêu tình huống tính toán sử dụng hàm SUMIF với thông số sum_range
Minh họa
COUNT 3 ô chứa số
COUNTA 5 ô có nội dung
COUNTBLANK 2 ô trống
Minh họa
Minh họa
Nhân viên Doanh số criteria
Lệnh Hồ Xung $ 1,600.00 Lệnh Hồ Xung
Nhậm Doanh Doanh $ 2,500.00 Nhậm Doanh Doanh
Nhạc Linh San $ 2,100.00 Nhạc Linh San
Nhậm Doanh Doanh $ 1,900.00
Nhạc Linh San $ 1,200.00 criteria_1
Lệnh Hồ Xung $ 1,100.00 Lệnh Hồ Xung
Nhậm Doanh Doanh $ 1,500.00 Nhậm Doanh Doanh
SUM: $ 11,900.00 Nhạc Linh San
criteria SUMIF
Lệnh Hồ Xung $ 2,700.00
Nhậm Doanh Doanh $ 5,900.00
Nhạc Linh San $ 3,300.00
Data
$ 1,600.00
2,500.00
1900
Lenh Ho Xung
4/10/2024
criteria COUNTIF
Lệnh Hồ Xung 2
Nhậm Doanh Doanh 3
Nhạc Linh San 2
Điều kiện có sử dụng wildcards (*, ?)
criteria COUNTIF
N 5
MAXIFS AVERAGEIF
$ 1,600.00
m Doanh Doanh $ 2,500.00
$ 2,100.00
criteria_2 AVERGAGEIFS
>=1,100
m Doanh Doanh >1,500
>1,100
các công thức tính trung bình theo điều kiện (cách sử dụng tương
ác hàm SUMIF, SUMIFS)
Các hàm thao tác trên cơ sở
DSUM
Database Criteria 1
Microsoft Example
Tree Height Age Yield Profit
=Apple >10
=Pear
Tree Height Age Yield Profit
Apple 18 20 14 $ 105.00
Pear 12 12 10 $ 96.00
Cherry 13 14 9 $ 105.00
Apple 14 15 10 $ 75.00
Pear 9 8 8 $ 77.00
Apple 8 9 6 $ 45.00
huộc tính)
Criteria 2
m nội dung công thức tính "Sum of Revenues", giải thích kết quả hiện có
ều kiện tính toán cho vùng tiêu chuẩn, quan sát sự thay đổi ở các ô công thức, so sánh với kết quả đối chiếu
h lý do sử dụng hai cột "Revenue" ở vùng tiêu chuẩn "Criteria 3". Rút ra cách thức xây dựng vùng tiêu chuẩn
Height
<16
Sum of Profits: $ 248.00
Thay đổi các điều kiện tính toán trên vùng tiêu chuẩn, quan sát kết quả
Giải thích về các kết quả nhận được
RANK (nhóm hàm Statistical)
RANK.AVG(number, ref_list[, order]) xếp hạng dữ liệu number trong danh sách ref_list
RANK.EQ(number, ref_list[, order]) number phải có trong ref_list (nếu không báo lỗi #N
order thông số quy định thứ tự xếp hạng (mặc định, order = 0)
order = 0: dữ liệu lớn có thứ hạng cao
order 0: dữ liệu nhỏ có thứ hạng cao
RANK.AVG: hạng của các dữ liệu cùng trị được tính lấy trung bình
RANK.EQ: các dữ liệu cùng trị có cùng hạng
hạng p.tử sau = hạng p.tử trước + số p.tử cùng hạng
CHOOSE(index_num, item_1, item_2, ...) chọn phần tử có chỉ số index_num trong danh sách c
item có thể là giá trị, array, biểu thức
HSTACK(array_1, array_2, ...) ghép nối tiếp các array (phương ngang)
VSTACK(array_1, array_2, ...) ghép chồng các array (phương đứng)
TOCOL(array [, ignore] [, scan_by_column])chuyển array thành cột (TOCOL)/dòng (TOROW)
TOROW(array [, ignore] [, scan_by_column]) ignore = 0: giữ tất cả các trị trong array (mặc
= 1: bỏ qua các khoảng trống (blank)
= 2: bỏ qua các mã báo lỗi
= 3: bỏ qua các khoảng trống và mã báo lỗi
scan_by_column
= FALSE chọn các phần tử theo thứ tự dòng trước, cột sau (mặc định)
= TRUE chọn các phần tử theo thứ tự cột trước, dòng sau
Minh họa
Data
3
danh sách ref_list 1
không báo lỗi #N/A) 4
0) 3
5
2
5
g bình 7
6
VSTACK(array_1, array_2)
#NAME?
#NAME?
/dòng (TOROW) #NAME?
trị trong array (mặc định) #NAME?
#NAME?
#NAME?
HSTACK(array_1, array_2)
(mặc định) #NAME?
#NAME?
#NAME?
RANK.AVG RANK.EQ order 0
6.5 6
9 9
Đổi order thành 1, quan sát
5 5 kết quả
6.5 6
3.5 3
8 8
3.5 3
1 1
2 2
K(array_1, array_2)
#NAME? #NAME? #NAME?
#NAME? #NAME? #NAME?
#NAME? #NAME? #NAME?