Những vấn đề về hàm IF

Liên hệ QC
Status
Không mở trả lời sau này.
J9 sao lại có kết quả = 500 (đấy là KV2 nhưng chỉ có 12 điểm ---> Lý ra phải =0 chứ)
Anh xem lại cái này:
Bài này em làm gần xong, còn mắc 1 chỗ tính tiền thưởng thui. Hình như dùng hàm if, and nhưng em làm không đúng :(
Tính thưởng nếu tổng điểm >=20 và khu vực 1 thì được 100
Nếu tổng điểm <20 >17 hoặc khu vực 2 thì được 500. Còn lại không được thưởng.
Lấn cấn ở cái chỗ này.
Nếu tổng điểm <20 >17 hoặc khu vực 2...
Có thể hiểu như thế nào?
  1. Tổng điểm nhỏ hơn 20 và (tổng điểm lớn hơn 17 hoặc thuộc khu vực 2)
  2. (Tổng điểm nhỏ hơn 20 và tổng điểm lớn hơn 17) hoặc thuộc khu vực 2
Nếu hiểu theo kiểu thứ nhất, thì 2 trường hợp sau được thưởng 500:
  • Tổng điểm lớn hơn 17 và nhỏ hơn 20 (khu vực nào cũng được)
  • Tổng điểm nhỏ hơn 20 và thuộc khu vực 2
Nếu hiểu theo kiểu thứ hai, thì 2 trường hợp sau được thưởng 500:
  • Tổng điểm lớn hơn 17 và nhỏ hơn 20 (khu vực nào cũng được)
  • Thuộc khu vực 2 (mấy điểm cũng được)
Xem kỹ lại cả 2 trường hợp, có thể thấy trường hợp anh nói: 12 điểm thuộc khu vực 2 --> thưởng 500 là đúng.
 
...
=IF(AND(G3>=20,C3=1),100,IF(OR(17<G3<20,C3=2), 500,0)
hoặc:
=IF(AND(G3>=20,C3=1),100,IF(OR(AND(G3>17,G3<20),C3=2), 500,0))
Chỉ có công thức ở dưới là đúng, còn công thức tôi tô màu đỏ là sai. Không thể là cái này hoặc cái kia đâu bạn ơi.
Excel không thể hiểu biểu thức này: 17<G3<20
 
Bác BNTT làm mới thực sự chính xác, cái nhận xét của bác về đề bài cũng đúng. bác ndu hiểu lầm đề bài giống em rùi. Hì hì
Cảm ơn bác BNTT ná
 
Hàm Sum và If

Tôi thường vẫn sử dụng hàm Sum để đếm các thông tin giống nhau, nhưng dạo này mỗi khi tôi dung lệnh đó thì lại bị báo lỗi đây là ví dụ, mọi người xem và giúp tôi với nhé.
Vd=SUM(IF($F$8:$F$55="Nữ",1,0))
Xin chân thành cảm ơn.
Chờ tin tốt lành từ các bạn.
 
Bạn gõ công thức xong phải ấn tổ hợp phím Ctrl+Shift+Enter mới được.

Trong bài toán này, không nhất thiết phải dùng công thức mảng đâu bạn, Dùng COUNTIF cho nhanh hơn.
 
Hàm IF

Mình dùng hàm IF theo câu hỏi của đề bài ở cột Đ.Thêm(H) nhưng nó lại ra sai. Nhờ các bạn xem wa file rồi chia sẽ cho mình chỗ sai ở đâu. Cám ơn
 

File đính kèm

  • HamIf.xls
    18.5 KB · Đọc: 56
Nó đâu có sai! Mà tại bạn khai báo thiếu một vế của hàm IF đầu tiên (nếu ĐTB < 10) nên khi gặp ĐTB > 10 thì hàm IF trả về giá trị False, là chính xác đó chứ. Nếu như không muốn thấy cái giá trị False này, thì bạn phải cho IF biết nếu gặp False thì trả về bao nhiêu...

Giả sử bạn muốn rằng nếu gặp False thì trả về 0:

Công thức của bạn:
=IF(G3<10, IF(C3<1970, G3+0.75, IF(B3="Nữ", G3+0.5, G3)))​
Chỉ cần thêm một chút xíu ở cuối:
=IF(G3<10, IF(C3<1970, G3+0.75, IF(B3="Nữ", G3+0.5, G3)), 0)​
Hoặc là sửa lại và thêm vào ngay từ đầu:
=IF(G3>=10, 0, IF(C3<"1970", G3+0.75, IF(B3="Nữ", G3+0.5, G3)))​
 
Nó đâu có sai! Mà tại bạn khai báo thiếu một vế của hàm IF đầu tiên (nếu ĐTB < 10) nên khi gặp ĐTB > 10 thì hàm IF trả về giá trị False, là chính xác đó chứ. Nếu như không muốn thấy cái giá trị False này, thì bạn phải cho IF biết nếu gặp False thì trả về bao nhiêu...

Giả sử bạn muốn rằng nếu gặp False thì trả về 0:

Công thức của bạn:
=IF(G3<10, IF(C3<1970, G3+0.75, IF(B3="Nữ", G3+0.5, G3)))​
Chỉ cần thêm một chút xíu ở cuối:
=IF(G3<10, IF(C3<1970, G3+0.75, IF(B3="Nữ", G3+0.5, G3)), 0)​
Hoặc là sửa lại và thêm vào ngay từ đầu:
=IF(G3>=10, 0, IF(C3<"1970", G3+0.75, IF(B3="Nữ", G3+0.5, G3)))​

Bác BNTT chưa đọc kĩ công thức của bạn ice_breaker rồi tôi Xin mạn phép suẳ lại công thức cho đúng với yêu cầu của bạn ice_breaker như sau:
=IF(G3<10, IF(C3<1970, G3+0.75, IF(B3="Nữ", G3+0.5, G3)), G3);
 
Lần chỉnh sửa cuối:
Bác BNTT chưa đọc kĩ công thức của bạn ice_breaker rồi tôi Xin mạn phép suẳ lại công thức cho đúng với yêu cầu của bạn ice_breaker như sau:
=IF(G3<10, IF(C3<1970, G3+0.75, IF(B3="Nữ", G3+0.5, G3)), G3);
Hì hì... Đương nhiên là tôi đã đọc kỹ rồi, chẳng những công thức mà còn cả cái đề bài nữa bạn à! Công thức của bạn, nếu như G3 (điểm TB) không < 10 (tức là >= 10) thì sẽ trả về kết quả là G3, Ở ĐÂU RA CHUYỆN ĐÓ VẬY?

Bạn xem cái này nhé:
000-1863.jpg
Để tôi dịch nguyên văn cái câu trong cái khung đó thành tiếng Việt nghe:
Nếu ĐTB dưới 10 thì được thêm như sau:
- Nếu sinh trước năm 1970 thì được thêm 0.75 điểm
- Ngược lại (từ năm 1970 trở về sau), nếu là phái nữ thì được thêm 0.5 điểm​
Người ta đâu có nói rằng nếu ĐTB từ 10 trở lên thì lấy ĐTB (ở cột G) ?

Tuy nhiên, tôi có sai khi quên sửa cái công thức của tác giả:
=IF(G3<10,IF(C3<"1970",G3+0.75,IF(B3="Nữ",G3+0.5,G3)))​
Bạn xem nha, cái cột G là cột điểm thêm, chứ đâu phải là cộng thêm với điểm TB? Do đó, bạn cộng thêm G3 vào là sai. Chỉ là 0.75 và 0.5 mà thôi.
Thứ hai, con số 1970 tại sao lại bỏ trong dấu nháy nháy làm gì?

Công thức chính xác (theo đúng đề bài) cho cột H sẽ là:
=IF(G3<10, IF(C3<1970, 0.75, IF(B3="Nữ", 0.5, 0)), 0)​
Hoặc là:
=IF(G3>=10, 0, IF(C3<1970, 0.75, IF(B3="Nữ", 0.5, 0)))​
Hoặc là như vầy, ngắn nhất, chỉ cần 1 cái IF thôi:
=(G3<10)*IF(C3<1970, 0.75, (B3="Nữ")*0.5)
 
Lần chỉnh sửa cuối:
Hi hi...! Em xin lỗi bác BNTT chắc hôm qua em buồn ngủ nên nhìn gà hóa cuốc mất rồi. Đúng là không có dK "nếu ĐTB từ 10 trở lên thì lấy ĐTB (ở cột G)" thật. Sorry bác!
 
Lần chỉnh sửa cuối:
Cám ơn tất cả các sự giải thích, góp ý và sửa lỗi của các bạn. Giờ mình đã hiểu rồi
 
các anh ơi chỉ dùm em cach sử dụng cũa hàm IF đi!
 
Xin cảm ơn bạn ca_dafi, nhờ bạn tớ đã làm được rồi.
 
Các bác ơi cho tôi hỏi chút nhé, trong excel có cách dung hàm nào ma khi ta ghi số liệu vào sổ nhật ký chung thì số liệu ở các sổ chi tiết đều tự nhảy được không. Bác nào biết thi bảo giúp em với nhe!
Thanks.
 
Giúp đỡ: Hàm IF

Cô giáo cho bài tập về ôn để thi ah. Mọi người giúp e làm bài nhé... Tks cả nhà ah.
Các bác cho e hỏi thêm cách làm với hàm khác ah, như VLOOK chẳng hạn ah...
 

File đính kèm

  • Nguyen thanh ha.xls
    18 KB · Đọc: 61
Lần chỉnh sửa cuối:
Bạn xem file đính kèm. Hy vọng lần sau bạn sẽ tự làm, có gì không hiểu thì post lên diễn đàn, mọi người sẽ giúp cho bạn.
Thân.
 

File đính kèm

  • Nguyen thanh ha.xls
    19.5 KB · Đọc: 74
Giúp em hàm If với!

Anh chị giúp em với. Em đang muốn tính như sau. Nếu em điền giá trị vào cột KL Bốc xúc thì se tự động nhân với đơn giá
bốc xúc, nếu điền vào cột KL chuyển tải thì nhân với đơn giá chuyển tải, còn nếu điền vào cột vun cốn thì nhân với giá vun cốn kết quả hiện ở cột Thành tiền!
EM gửi file đính kèm anh chi xem giúp em với ạ!
 

File đính kèm

  • KLBX.rar
    10.1 KB · Đọc: 68
Anh chị giúp em với. Em đang muốn tính như sau. Nếu em điền giá trị vào cột KL Bốc xúc thì se tự động nhân với đơn giá
bốc xúc, nếu điền vào cột KL chuyển tải thì nhân với đơn giá chuyển tải, còn nếu điền vào cột vun cốn thì nhân với giá vun cốn kết quả hiện ở cột Thành tiền!
EM gửi file đính kèm anh chi xem giúp em với ạ!
Tôi nghĩ đơn giản nhất là dùng SUMPRODUCT, tai cell E10 bạn gõ công thức sau:
=SUMPRODUCT((TRANSPOSE(B10:D10))*($H$1:$H$3))
Nhớ bấm Ctrl + Shift + Enter nhé
Hay đơn giản và dể hiểu thì:
=$B10*$H$1+$C10*$H$2+$D10*$H$3
 
Lần chỉnh sửa cuối:
Em cảm ơn bác nhiều em đã làm được rồi.
 
Status
Không mở trả lời sau này.
Web KT

Bài viết mới nhất

Back
Top Bottom