Đăng ký học Excel và VBA cùng GPE tháng 11 - TPHCM

Mua sách "VBA trong Excel - Cải thiện và tăng tốc" tái bản

Cách kết hợp hàm if và hàm or

Thảo luận trong 'Hàm và công thức Excel' bắt đầu bởi phuong khanh, 17 Tháng tư 2010.

  1. phuong khanh

    phuong khanh Thành viên mới

    Chào các anh chị, anh chị kiểm tra giúp em công thức trong bài tập này với nha. Em làm hàm IF lồng với hàm OR nhưng hình như nó bị lỗi chỗ nào ah (File đính kèm). EM cảm ơn cả nhà. Chúc các anh chị cuối tuần vui nha :)
     

    Các file đính kèm:

    • Book 1.xls
      Kích thước:
      31.5 KB
      Đọc:
      3,699
  2. Hoàng Trọng Nghĩa

    Hoàng Trọng Nghĩa .: Never Stand Still :. Staff Member

    Trước tiên về cột THƯỞNG, em chép công thức này vào nè Phương Khánh:
    PHP:
    =IF(AND(C3="nu",D3>=24),200000,IF(OR(C3="nu",AND(C3="nam",D3>24)),100000,0))
    Đặc biệt quan trọng nè: Ngay cột PHÁI, em ghi thừa 1 ký tự trắng phía sau chữ Nam và Nu, thay vì "NAM" và "NỮ" thì em lại viết "NAM " và "NỮ ", cần sửa lại em nhé!
     
    Lần chỉnh sửa cuối: 17 Tháng tư 2010
  3. Ba Tê

    Ba Tê Cạo Rồi Vẫn Gội

    -----------
    Xin thêm một ý kiến:
    Nếu bài tập không bắt buộc phải có hàm OR, trong trường hợp này chỉ IF thôi cũng được:
    PHP:
    =IF(D3>=24;IF(C3="Nu";200000;100000);IF(C3="Nu";100000;0))
     
  4. dat_butmuc

    dat_butmuc weitə r ə'pɔn prɔvidəns

    Thêm chút này cho "vui cửa, vui nhà":
    PHP:
    =IF(D3<24,IF(C3="Nu ",1,0),IF(C3="Nu ",2,1))*10^5
     
  5. phuong khanh

    phuong khanh Thành viên mới

    Em Thanks Bác Ba Tê nhiều nha. Em áp dụng công thức của Bac ra kết quả rồi. Nhưng Bác cho em hỏi tí xíu với. E thấy trong yêu cầu có đề cập đến Nam, nhưng điều kiện trong hàm e thấy cả 2 đều là điều kiện nũ, nhưng e chưa hỉu lắm. Bác giải thích giúp em vơi. E cảm ơn bác truớc nha ^.^! Nice day!
     
  6. nghiaphuc

    nghiaphuc Hoàng Nghĩa Phúc Staff Member

    PHP:
    =IF(D3>=24;IF(C3="Nu";200000;100000);IF(C3="Nu";100000;0))
    Có thể hiểu công thức này như sau: Đối với những nhân viên có số ngày công từ 24 trở lên (D3>=24), nếu là nữ thì thưởng 200000, nếu là nam thì thưởng 100000 (IF(C3="Nu";200000;100000)). Ngược lại (số ngày công <24), nếu là nữ thì thưởng 100000, nếu là nam thì không thưởng (IF(C3="Nu";100000;0)).
     
  7. chungbhxh

    chungbhxh Thành viên mới

    Chào các bạn! Các bạn có thể giúp mình làm công thức trên exel:
    Nếu A1=28,5 hoặc A1=25 hoặc A1=4 là x, các giá trị khác là 0.
    Mình mới làm được:
    =IF(A1=28,5;"x";"0")
    còn lại chưa nối được.
    Mong hồi âm sớm
     
  8. concogia

    concogia Gội rồi mới Cạo

    =IF(OR(A1=28.5,A1=25,A1=4),"x",0)
    Chú ý dấu phân cách ";" "," tùy định dạng của bạn
     
  9. nhung_neo_duong_phu_sa

    nhung_neo_duong_phu_sa Thành viên mới

    Hàm lồng if and và or

    Cho em hỏi hàm này sai ở đâu ạ? em làm ra giá trị false hết, mong mọi người giúp em với.
    IF(AND(AO11>"10 ",AL11>"5 "),IF(AND(AO11>"5",AL11>"3"),IF(AND(AO11>"2",AL11>"1"),IF(AND(AO11>"1",AL11>"6"),IF(AND(BH11>30,BH11>"20"),"TN ")))))
    Em cảm ơn.
     
  10. nghiaphuc

    nghiaphuc Hoàng Nghĩa Phúc Staff Member

    Ặc ặc... đọc hàm của bạn mà suýt ngộp thở, chi mà lắm IF với AND rứa?
    Chỉ xét riêng hàm IF ngoài cùng thì:
    + logical_test là AND(AO11>"10 ",AL11>"5 ")
    + value_if_true là IF(AND(AO11>"5",AL11>"3"),IF(AND(AO11>"2",AL11> "1"),IF(AND(AO11>"1",AL11>"6"),IF(AND(BH11>30,BH11 >"20"),"TN "))))
    + value_if_false không có.
    Như vậy, hàm trả về FALSE chứng tỏ biểu thức AND(AO11>"10 ",AL11>"5 ") luôn sai, có thể do kiểu dữ liệu chăng?
    Bạn hãy gửi file lên và nêu yêu cầu cụ thể vào đó, chắc chắn sẽ có cách giải khác hay hơn đó.
     
  11. nhung_neo_duong_phu_sa

    nhung_neo_duong_phu_sa Thành viên mới

    hàm kết hợp

    Kn làm việc Kn chuyên môn Tuổi Chiều cao Học vấn Chuyên ngành TN
    10 Y 5 Y 30 - 40 170 ĐH Kế toán
    5 Y 3 Y
    3 2
    2 1
    1 6 tháng
    Mã:
    IF(AND(AO11>"10 ",AL11>"5 "),IF(AND(AO11>"5",AL11>"3"),IF(AND(AO11>"2",AL11> "1"),IF(AND(AO11>"1",AL11>"6"),IF(AND(BH11>30,BH11 >"20"),"TN ")))))
    Em muốn dùng hàm lọc để kết hợp các điều kiện năm kn và năm chuyên môn, tuổi học vấn và chuyên ngành để ra được mã TN, nhưng khi dùng công thức trên em ra false hết, anh chỉ cách giùm em để em lọc với vì em có nhiều mã nhân viên, mooiux mã lại tương ứng với số năm kn và chuyên môn khác nhau, nếu cứ 1 mã em tạo 1 công thức thì rất bất tiện, chỉ cho em cách dùng 1 công thức mà lọc tất cả các vị trí. Em cảm ơn.
     
    Chỉnh sửa lần cuối bởi điều hành viên: 10 Tháng ba 2012
  12. nghiaphuc

    nghiaphuc Hoàng Nghĩa Phúc Staff Member

    Bạn mô tả như vầy khó hiểu quá. Nếu không đưa file lên được thì bạn gửi file mẫu cho mình theo địa chỉ sau, mình sẽ đưa lên diễn đàn giúp bạn (chỉ cần một ít dữ liệu, nhưng nhớ mô tả chi tiết yêu cầu trong file nhé): bluecactus_ayhs@yahoo.com

    P/S: Mình vừa check mail đầu buổi chiều nay và đã nhận được file của nhung_neo_duong_phu_sa. Tuy nhiên, trong file chỉ có một ít dữ liệu, thậm chí dữ liệu còn không được nhập đầy đủ cho các hàng, và cái quan trọng là chẳng có cơ sở nào để thiết lập công thức cả. Mình cũng xin đưa file lên đây để nếu thành viên nào có thể "hiểu" được yêu cầu thì giúp đỡ (đã chuyển sang Excel 2003 để tất cả thành viên có thể đọc được).
     

    Các file đính kèm:

    Lần chỉnh sửa cuối: 14 Tháng năm 2011
  13. tungluuhuong

    tungluuhuong Thành viên mới

    bạn ơi! hàm của mình làm ra kết quả đúng có cả hàm and và hàm or bạn thử xem có đúng không nhé!
    =IF(AND(C4="nữ";D4>=24);200000;IF(AND(C4="nữ";D4<24);100000;IF(OR(C4="Nam";D4>24);100000;"")))
     
  14. ZznaughtyzZ

    ZznaughtyzZ Thành viên mới

    tinh so lan gui xe.JPG Nhờ bác nào pro chỉ em với !
    Thanks !
     
  15. bebo021999

    bebo021999 Thành viên gắn bó

    Thời gian có giải đáp:
    Gửi file: 1-2h
    Gửi hình : 1- 2 ngày
    Bạn chọn cái nào?
     
  16. ZznaughtyzZ

    ZznaughtyzZ Thành viên mới

  17. hoaithutb2000

    hoaithutb2000 Thành viên mới

    ban oi ban giup minh ktra xem cthuc sai o cho nao, minh cam on
    =IF(OR(BI3=20,BI3=25),"Đảo"),IF(OR(BI3=22,BI3=24,BI3=26,BI3=28),10-BK3),IF(OR(BI3=21,BI3=23,BI3=29,BI3=30),"ok","x")

    nghiaphuc: Nhớ gõ tiếng Việt có dấu nha bạn.
     
    Chỉnh sửa lần cuối bởi điều hành viên: 10 Tháng ba 2012
  18. hoaithutb2000

    hoaithutb2000 Thành viên mới

    cac ban oi hay giup minh voi,minh dang can lam
     
  19. phihndhsp

    phihndhsp Thành viên gắn bó

    IF( OR(BI3=20,BI3=25) , "Đảo") , IF( OR(BI3=22,BI3=2 4,BI3=26,BI3=28) ,10-BK3),IF(OR(BI3=21,BI3=23,BI3=29,BI3=30),"ok","x")
    Như vậy mới đúng nè
    IF(OR(BI3=20,BI3=25) , "Đảo", IF(OR(BI3=22,BI3=2 4,BI3=26,BI3=28),10-BK3, IF(OR(BI3=21,BI3=23,BI3=29,BI3=30),"ok","x")))
     
  20. bebo021999

    bebo021999 Thành viên gắn bó

    Mã:
    =IF(OR(BI3=20,BI3=25),"Đảo",IF(OR(BI3=22,BI3=24,BI3=26,BI3=28),10-BK3,IF(OR(BI3=21,BI3=23,BI3=29,BI3=30),"ok","x")))
     

Chia sẻ trang này