Hàm IF trong excel là một hàm logic nhiều điều kiện. Cú pháp và cách sử dụng trong excel 2003 2007 2010 2013.
Cách kết hợp với Hàm VLOOKUP, LEFT, RIGHT, MID, AND, OR,… như thế nào?
Hàm IF là một hàm vừa nâng cao vừa cơ bản.
Cơ bản ở điểm: một hàm IF đơn rất dễ làm, giải các bài toán thông thường như: nếu đạt doanh số thưởng, còn không thì hưởng 80% lương….
Với kinh nghiệm trên 12 năm giảng dạy excel, Trường tự tin sẽ giúp bạn thành thạo hàm IF.
Bạn đừng quên Share bài viết để lưu lại hoặc cho bạn bè cùng biết nhé.
Tóm tắt những nội dung chính bạn sẽ được học trong bài viết này.
- Định nghĩa và cú pháp hàm IF
- Ví dụ cách sử dụng
- Hàm IF lồng và ví dụ minh họa
- Kết hợp với hàm VLOOKUP
- Kết hợp hàm MID, LEFT, AND
TÓM LƯỢC
Hiểu theo nghĩa đơn giản là hàm Nếu … Thì…. trong excel. Rõ ràng hơn đó là hàm kiểm tra 1 giá trị với điều kiện cho trước, nếu thỏa mãn điều kiện thì trả về 1 giá trị, nếu không thỏa mãn thì trả về một giá trị khác
Nghe có vẻ khó hiểu, nhưng thực tế hàm IF chỉ đơn giản như sau:
– IF cơ bản: nếu đạt chỉ tiêu ( đạt thưởng/ đạt giỏi/ thỏa mãn điều kiện…) thì trả về kết quả (kiểu như là được thưởng cho, được giảm giá, được…), còn nếu không đạt thì không được gì (trả về 0) / bị phạt (trừ tiền)/ xếp loại kém…..
– IF nâng cao: Là sử dụng các hàm lồng ghép cùng nó. Hàm IF có thể lồng ghép linh hoạt với rất nhiều các hàm như: Hàm VLOOKUP, LEFT, RIGHT, MID, AND, OR,… để giải rất nhiều trường hợp trong cuộc sống của chúng ta.
CÚ PHÁP HÀM
= IF (Logical_test, Value_if_true, Value_if_false)
Giải thích hàm:
– Logical_test: được dùng để kiểm tra xem giá trị cần so sánh có thỏa mãn điều kiện cho trước hay không
– Value_if_true: Nếu giá trị cần so sánh thỏa mãn điều kiện thì hàm if sẽ trả về giá trị A (Giá trị A này do người dùng nhập vào theo ý muốn)
– Value_if_false: Ngược lại, nếu không thỏa mãn thì trả về giá trị B do người dùng tự nhập vào.
Có thể khi đọc công thức sử dụng hàm ở trên bạn sẽ thấy hơi khó hiểu, nhưng bạn đừng lo nhé. Khi đọc ví dụ dưới đây bạn sẽ hiểu ý nghĩa và cách sử dụng ngay thôi.
VÍ DỤ VỀ HÀM IF CƠ BẢN – IF ĐƠN
Trong hình dưới đây, ad có đưa ra một ví dụ đơn giản về hàm (Nếu – Thì) đơn.
- Ô B1: Nhập điểm của bạn
- Ô B2: Hiển thị kết quả tương ứng với số điểm bạn nhập và qui định phân loại kết quả thi.
Bài toán đặt ra: Nếu điểm của bạn (Tại ô B1) trên 5 bạn sẽ đỗ (Trả kết quả đỗ tại ô B2), còn lại bạn sẽ đánh trượt (Trả kết quả Trượt)
Như vậy ta chỉ cần nhập công thức hàm IF ở ô B2 để so sánh điểm bạn vừa nhập ở ô B1 với qui định phân loại kết quả thi đã có để xác định bạn Đỗ hay Trượt.
- Logical test: Giá trị ở ô: B1 > 5
- Value_if_true: “ĐỖ”
- Value_if_false: “TRƯỢT”
- Tại B2 = IF(B1>5,”ĐỖ”,”TRƯỢT”)
Ad xin lấy một số ví dụ cụ thể hơn cho hàm if ở trên để bạn hiểu rõ hơn.
- TH1. Khi ô B1 = 1 => B2 = Trượt
- TH2. Khi ô B1 = 5 => B2 = Trượt
- TH3. Khi ô B1 = 6 => B2 = Đỗ
- TH4. Khi ô B1 = 9 => B2 = Đỗ
Thông qua ví dụ trên, ad hi vọng rằng 100% bạn đọc sẽ hiểu cách mà hàm if làm việc để tiến tới các kiến thức nâng cao hơn của hàm này trong các phần tiếp theo.
Lưu ý quan trọng:
- Giá trị so sánh, trả về nếu là dạng Text phải đặt trong nháy kép ” “
Trong công thức ở ô B2 có thể bạn sẽ thắc mắc tại sao lại có dấu nháy kép “” ở 2 bên chữ Trượt và Đỗ. Bởi lẽ Trượt và Đỗ là văn bản.
Khi viết văn bản trong công thức của excel bạn PHẢI đặt chúng bên trong dấu ngoặc kép nhé. Nếu không excel sẽ không hiểu hàm bạn viết là gì đâu.
HÀM IF LỒNG VÀ VÍ DỤ MINH HỌA
Ở ví dụ trong phần 2, ad đã chọn một ví dụ rất đơn giản để các bạn dễ hình dung. Trong thực tế ta còn có một yêu cầu khác phức tạp hơn là phân loại học sinh (yếu, trung bình, khá, giỏi) dựa trên số điểm mà học sinh đó đạt được.
Không có cách học nào tốt hơn việc học thông qua ví dụ thực tế. Hãy cùng tìm hiểu hàm if lồng thông qua ví dụ sau đây.
Tóm tắt bài tập:
- Bạn có một bảng danh sách điểm của từng học sinh.
- Nhiệm vụ của bạn là Xếp loại học sinh dựa vào
- Điểm trung bình của từng học sinh
- Bảng xếp loại cho sẵn ở bên phải
PHÂN TÍCH VIỆC HÀM IF KẾT HỢP VỚI HÀM IF
– Mỗi một học sinh đều có Điểm trung bình >=0 và <=10
– Bảng xếp loại là vùng ô $G$6:$H$10
Như vậy để có thể tìm được xếp loại của từng học sinh, ta dùng hàm (Nếu – Thì) để so sánh điểm của học sinh đó với bảng xếp loại:
– 1. Nếu ĐTB >=9 -> Giỏi
– 2. Nếu ĐTB >=7 và ĐTB <9 -> Khá
– 3. Nếu ĐTB >=5 và ĐTB <7 -> Trung bình
– 4. Nếu ĐTB <5 -> Yếu
SỬ DỤNG HÀM IF LỒNG ĐỂ PHÂN LOẠI HỌC LỰC
Cụ thể hơn cho các phân tích ở trên, ad viết công thức đầy đủ cho việc phân loại học lực của các học sinh như sau:
Ô D4 =IF(C4>=9,”Giỏi”,IF(C4>=7,”Kha”,IF(C4>=5,”Trung Bình”,”Yếu”)))
Lần 1 – màu ĐỎ: Excel so sánh điểm của Trần Minh với 9, nếu >=9 thì excel trả về kết quả “giỏi”, nếu không thì excel sẽ dò điều kiện tiếp theo.
Lần 2 – màu XANH: Nếu không thoả mãn điều kiện lần 1 thì chắc chắn điểm của Trần Minh nhỏ hơn 9 rồi.
Hàm if lần 2 sẽ so sánh điểm của Minh với 7.
- Nếu >=7 thì excel trả về kết quả “Khá”
- Nếu không thì excel sẽ dò tiếp điều kiện sau
Lần 3 – màu TÍM: Nếu không thoả mãn điều kiện ở hàm if số 2 thì chắc chắn điểm của Minh nhỏ hơn 7 rồi.
Lần lồng hàm thứ 3 sẽ so sánh điểm của Minh với 5.
- Nếu >=5 thì excel trả về kết quả “Trung Bình”.
- Nếu không thoả mãn thì chắc chắn là điểm của Minh nhỏ hơn 5.
Khi đó chỉ còn 1 loại kết quả là Yếu cho các học sinh nhỏ hơn 5.
Do vậy ta không cần viết thêm hàm if nữa mà ta viết luôn “Yếu”. Để hoàn tất thành tố thứ 3 (value_if_false) của một hàm chuẩn.
KIẾN THỨC MỞ RỘNG
Tuy nhiên nhiều bạn lại viết công thức như sau:
Thay vì:
Vậy lý do là gì?
Nên làm theo công thức nào hay công thức nào là đúng: (1) hay (2)
Ad sẽ giải thích như sau:
Hai công thức này đều đúng, tuy nhiên chúng ta nên dùng theo công thức (2) bởi lẽ:
– Với lần IF thứ nhất: C4>=9:
+ Nếu thỏa mãn điều kiện thì giá trị trả về là “Giỏi”.
+ Còn nếu không thỏa mãn điều kiện >=9 thì chúng ta mới phải làm thêm một hàm IF nữa để xem điểm của học sinh này có lớn hơn 7 không.
Do đó mặc định điểm của học sinh này đã nhỏ hơn 9 rồi. → Không cần phải dùng hàm And (C4<9, C4>=7) để làm điều kiện mà chỉ cần C4>=7.
– Tương tự như vậy thì đến điều kiện cuối cùng là nếu C4>=5 thì giá trị trả về sẽ là “Trung Bình”. Còn nếu không, tức là C4<5 (Bất kỳ ai có điểm dưới 5) thì giá trị trả về là “Yếu”.
Công thức (1) vẫn tính toán đúng kết quả chúng ta muốn trong khi ngắn gọn hơn rất nhiều.
CÓ THỂ LỒNG BAO NHIÊU HÀM IF TRONG 1 CÔNG THỨC EXCEL (2003, 2007, 2010, 2013)
- Trong excel 2003: Bạn có thể lồng tới 7 hàm trong 1 công thức excel
- Trong excel 2007, 2010, 2013: Bạn có thể thêm tới 64 hàm if trong 1 công thức excel.
Với excel 2007 trở đi, bạn thoải mái lồng nhiều hàm với nhau. Nhưng bạn thử tưởng tượng xem bạn sẽ gặp phải chuyện gì khi bạn lồng tới mấy chục hàm vào trong 1 công thức như thế.
Ngay đến cả ad đã dùng excel nhiều năm nay, nhưng với một hàm quá dài thì rủi ro viết nhầm.
Viết sai là chuyện rất dễ xảy ra.
Và khi sai mà ngồi đọc một hàng dài công thức để kiểm tra xem lỗi ở đâu là một thử thách thực sự với sự kiên nhẫn của bất kỳ ai.
Đó là lý do bạn cần phải kết hợp với các hàm excel khác như hàm: MATCH, AND, VLOOKUP, …
HÀM IF KẾT HỢP VỚI CÁC HÀM EXCEL KHÁC
Bài viết sẽ quá dài để viết hết tất cả các cách kết hợp hàm. Do đó, ad sẽ viết mỗi cách kết hợp sang một bài khác nhau để các bạn dễ dàng theo dõi.
Nếu bạn biết cách kết hợp nào hay và hữu dụng mà ad chưa đề cập trong bài viết này thì bạn gửi cho ad ví dụ để ad bổ sung bài viết để nhiều bạn đọc khác cùng tiến bộ nhé.
Dưới đây là danh sách các bài viết về kết hợp hàm IF với các hàm khác. Đơn giản bạn chỉ cần click vào tên cách kết hợp mà bạn muốn xem để chuyển tới bài hướng dẫn chi tiết nhé.
THÔNG TIN LIÊN QUAN
Để luôn cập nhật kiến thức về Excel – Bạn nên đăng ký nhận bài viết mới qua email nhé:
Lưu ý: Sau khi đăng ký, bạn hãy vào email vừa đăng ký để xác nhận đăng ký. Có thể thư kích hoạt bị rơi vào hòm thư spam. Bạn hãy vào hòm thư spam để kiểm tra nhé
Sao mình dùng Exccel 2016 mà vẫn không lồng được quá 7 hàm if và cũng không tìm được hàm ifs vậy bạn ?
Hi bạn,
Bạn gửi lại hàm if bạn làm để ad xem sao nhé.
Đôi khi công thức chỉ dùng 2 hàm if nhưng lại kết hợp với quá nhiều hàm khác => công thức của bạn quá dài khi đó thì excel cũng không cho bạn nhập bạn nhé.
Cảm ơn bạn, mình đã tìm ra nguyên nhân, chắc tại do mình lưu tập tin ở định dạng Excell 1997-2003 nên nó không cho. Còn hàm IFS trong bản OFFICE 2016 này không có thì chịu thua, không hiểu vì sao thiếu hàm đó.
cho e hỏi khi cho Điểm 1,Điểm 2, Điểm 3 là các điểm thành phần và có Điểm TB….với tiêu chí:Điểm TB>5 và không có cột điểm thành phần nào<5 ……….thì ta phải viết hàm ra sao ak…
để tìm ra đc người được thi và người ko được thi ak
Bạn kết hợp hàm If với hàm And.
If(and(DTB>5,Diem1>=5,Diem2>=5,Diem3>=5),”Đậu”,”Rớt”)
Cách giải của bạn khá sáng tạo.
Nếu có mười mấy điều kiện thì bạn làm thế nào bạn.
Bạn tìm hiểu tiếp và chia sẻ với các thành viên khác nhé.
Thêm 1 cột Tổng điểm, suy ra: if(and(DTB>5,Tongdiem>15),”Đậu”,”Rớt”)
cho mình hỏi là nếu sử dùng hàm if để tra điều kiện dạng text thì làm sao ạ
Ví dụ Nếu A1 là Hồ Chí Minh thì sẽ có 3 , còn không thì sẽ 0 . Thì công thực sao ạ
Mình dùng công thức: if(A1=”Hồ Chí Minh”,3,0) nhưng không có kết quả
Đang cần gấp mọi người giúp em với ạ
Cảm ơn
Cú pháp bạn viết là đúng rồi.
Nếu không ra kết quả thì bạn gửi file cho ad nhé: webkynang.vn@gmail.com
Ad sẽ kiểm tra lý do vì sao không ra kết quả.
Admin cho mình hỏi:
Mình có bảng sau: Tên HS Tiếng việt Toán Khoa học LS-ĐL Xếp loại
An 8 9 7 5
Mình muốn tính như sau: Nếu tất cả 4 môn đều lớn hơn hoặc bằng 9 thì xếp loại Giỏi, nếu có môn nào điểm 7 hay 8 thì XL khá. nếu có môn nào có điểm 5 hay 6 thì XL TB, nếu có môn nào dưới 5 thì XL Yếu
Bạn dùng thử với hàm MIN xem sao nhé.
Mình muốn dùng IF kết hợp vs Today() ad có thể chỉ cho mình đc chứ
Hi bạn,
Bạn gửi file đề bài vào mail: webkynang.vn@gmail.com để ad xem yêu cầu của bài là gì để tư vấn cụ thể cho bạn nhé.
Xin chào ad, giờ mình có nhu cầu sử dụng hàm if để phân loại học lực như thế này:
+Giỏi: TBM>=8 ; TB từng môn >6.5 ; Văn hoặc toán TB >=8
+Khá: TBM >=6.5 ; TB từng môn > 5 ; Văn hoặc toán TB >=6.5
Tương tự vậy, mình làm tới yếu. Cho mình hỏi nếu muốn làm được như vậy thì mình nên dùng cú pháp ntn? Mong nhận phản hồi!
Trân trọng!
Hi bạn,
Bạn có thể dùng kết hợp nhiều hàm với nhau: If + And + Min hoặc có thể thêm các hàm khác. Tùy vào cách vận dụng của mỗi người mà ta sẽ có cách sử dụng hàm khác nhau.
hic cho mình hỏi cách tính thuế nó bắt SL*ĐG*TỶ LỆ THUẾ
nếu trước ngày 10/06/2015 thì tỷ lệ thuế 3%
còn sau ngày 10/06 tỷ lệ thuế là 2%
còn ngày 2/9 thì nó bằng 0
mình nên dùng hàm nào vậy….
cho mình thêm vd được không
cảm ơn ad nhìu
hi bạn,
thực tế thì ngày 2/9 sẽ nằm trong khoảng sau ngày 10/6. bạn set điều kiện như thế có đầy đủ không?
chào ad ạ, e đang muốn sd làm if để tính vd như
>= 1 : thừa K.n
2: thỏa mãn điều kiện
thì chỉ dùng mình hàm if thôi hay nên kết hợp với cả hàm khác nữa ạ, ad trả lời giúp e với, e cảm ơn
Hi bạn,
Bạn nói rõ hơn nhu cầu của bạn, ad không hiểu yêu cầu của bạn là gì.
Ad cho em hỏi tí ạ, Em muốn tính hàm IF như này:
Ví dụ: nếu C8=D-40 thì G8=D8*100 em dùng công thức: =IF(B9=”D-40A”;C9*100) là chính xác.
Nhưng em muốn C8 = nhiều thứ hơn là chỉ D-40 ví dụ như C8=D-40 hoặc D-40A hoặc D-40B thì G8=D8x100 thì dùng như nào ạ. Em dùng dấu “,” nhưng không được. Em cảm ơn
hi bạn, lúc đó bạn dùng kết hợp thêm hàm OR nữa nhé.
Ad ơi cho mình hỏi. Ví dụ: Mình muốn tính công thức như sau: Anh A làm từ 401 triệu đến 500 triệu thì đạt mốc 1 sẽ được tính lương là doanh số thực trừ 401 triệu *1,5% nếu làm trên 500 thì doanh thu thực trừ 500*2,5% + với mức 1.
Bạn có thể hỗ trợ giúp mình.
Cảm ơn ad!
Hi bạn,
=if(DST >=401, (DST-401)*1.5%, if(DST >=500, (DST – 500)*2.5% + Mức 1)
Thực ra, phần Mức 1 của bạn cần làm rõ hơn bạn nhé.
bạn ơi sao dùng hàm if, khi sum tổng giá trị lại là 0. các khắc phục
Ad oi. E co bai tap nay. Ad giai gium e vs ạ.
Ví dụ như 500k
Chia cho 10 ng
Trong do 7 nguoi lam 2 tieng
Va 3 nguoi lam 1 tieng
Chia lam sao để nguoi lam 2 tiếng se co tiền gấp đôi người làm 1 tiếng.
Ad mình có trường hợp này giúp mình với:
Cột 1 cột 1 cột 3
1 = Cột 1 * 250.000
1 = Cột 2*500.000
1 1 = Cột 1 *250.000 + cột 2*500.000
Nếu cột 1 có giá trị thì cột 3 tính là cột 1 * 250.000
Nếu cột 2 có giá trị thì cột 3 tính là cột 3 * 500.000
Nếu cột 1 và cột 2 đều có giá trị thì cột 3 tính là cột 1*250.000+cootj*500.000
Giúp mình với nhé
Ad mình có trường hợp này giúp mình với:
Nếu cột 1 có giá trị thì cột 3 tính là cột 1 * 250.000
Nếu cột 2 có giá trị thì cột 3 tính là cột 3 * 500.000
Nếu cột 1 và cột 2 đều có giá trị thì cột 3 tính là cột 1*250.000+cột2*500.000
Giúp mình với nhé
Ad mình có trường hợp này giúp mình nhé:
Tông đầu kỳ vị trí A mã hàng c306 có số lượng 300pcs, vị trí B mã hàng C306 có số lượng là 100pcs(Vị trí A và B chỉ chứa tối đa là 500 pcs). Trong tháng 8 nhập hàng mã C306 vào tháng 8 số lượng 500pcs vậy làm thế nào để tính tổng mã hàng C306 theo tháng nhập trùng với tháng nhập của tồn đầu kỳ và nhập vào vị trí không vượt quá sức chứa tối đa của vị trí a, b là 500
Mình cảm ơn!
ad cho mình hỏi, biết E2=5, tại sao công thức = (E2>=8,”GIỎI”,IF(E2>=6.5,”KHÁ”)) lại trả về kết quả FALSE ạ? Cảm ơn ad nhiều!
Cho mình hỏi vơi, mình có một trường hợp rất lạ.
Đó là mình dùng hàm if trong tính lương.
Như thế này: if (F1>0, F1*F5, 0)
Nhưng kết quả trả ra lại ra giá trị không đúng.
F1 = 24
F5 = 25 000
Thì kết quả phải trả ra là = 24 * 25000 = 3.270.000 nhưng lại ra dư thêm 5000 là = 3.275.000
Cho mình hỏi tại sao với
Cho mình hỏi nếu mình muốn lập 1 công thức như sau thì phải làm thế nào :
Nếu giá trị 1 ô (C1 )lớn hơn 3 thì kết quả nhận được = kết quả của ô (B1)
mình cũng không lồng được quá 7 if. xin chỉ dẫn
Thanks Admin