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

Liên hệ QC
Status
Không mở trả lời sau này.
Thế thì theo công thức của ThuNghi, nhưng có thể rút gọn 1 chút
Thay VALUE(RIGHT($C2,3))>2 thành RIGHT($C2,3)*1>2
hoặc RIGHT($C2,1)*1>2 nếu số mã phía sau ko lớn hơn 10
Nếu số mã phía sau không lớn hơn 10 thì... ngắn hơn tí nữa:
RIGHT($C2)*1>2
 
Lần chỉnh sửa cuối:
Gởi CATHY

Tôi đính kèm file cho bạn thấy rõ hơn nè, tôi lấy ý kiến của các bạn gởi cho bạn trong file này.--=0
 

File đính kèm

  • ham and va if.xls
    15 KB · Đọc: 92
Kết hợp 3 hàm if or and

Em có một bài kết hợp 3 hàm mà em giải không ra có ai đó biết chỉ giùm em với nha.
Đó là: nếu cột a là HN hoặc HL và là T thì được 300 còn lại là 0.
 
Em có một bài kết hợp 3 hàm mà em giải không ra có ai đó biết chỉ giùm em với nha.
Đó là: nếu cột a là HN hoặc HL và là T thì được 300 còn lại là 0.

Xin lỗi bạn, nhưng tôi không hiểu: Cột A làm sao vừa là HN/HL là T được. Giống như 2 = 3 vậy??? Bạn có thể nói rõ hơn không?
 
Em có một bài kết hợp 3 hàm mà em giải không ra có ai đó biết chỉ giùm em với nha.
Đó là: nếu cột a là HN hoặc HL và là T thì được 300 còn lại là 0.

Cột A đã là HL thì sao lại là T được nữa nhỉ, Bạn xem lại đề bài xem.
hay là hoặc là HN hoặc là HL hoặc T
Mã:
=IF(OR(A1="HN",A1="HL",A1="T"),300,0)
 
Không được đâu, trừ khi:
nếu cột a là HN hoặc HL và cột B là T ...
Thi dụ: nếu ai hộ khẩu tại HN hoặc HL, và giới tính nữ là True thì .... :)
 
Em cũng bí về cách lồng 3 hàm : If, Search, Or như trong File Ví dụ. Nhờ các Anh chỉ giúp.
 

File đính kèm

  • Vidu.xls
    16 KB · Đọc: 113
- Or nằm ngoài, 2 cái search nằm trong.
- Search() phải sửa thành IsError(search())
- đổi ngược lại Z và X
 
Em cũng bí về cách lồng 3 hàm : If, Search, Or như trong File Ví dụ. Nhờ các Anh chỉ giúp.
Cụ thể hơn cái lý thuyết của anh Ptm0412:

Cột C =IF(ISERROR(SEARCH(" "&"B"&" ",$B4)),"Z","X")

Cột D =IF(ISERROR(SEARCH(" "&"A"&" ",$B4)),"Z","X")

Cột E: Mặc dù lý thuyết là "Nếu trong cột B có chữ A hoặc chữ B", nhưng khi dùng ISERROR, thì phải hiểu là: "Nếu như có lỗi khi tìm chữ A và chữ B trong cột A", do đó phải dùng AND. Nếu dùng OR thì lúc nào nó cũng sai hết.

=IF(AND(ISERROR(SEARCH(" "&"A"&" ",$B4)),ISERROR(SEARCH(" "&"B"&" ",$B4))),"Z","X")
 
Lần chỉnh sửa cuối:
Nếu dùng OR thì lúc nào nó cũng sai hết
Đúng rồi, vì:
Not(A Or B) = Not(A) And Not(B) (viết theo theo luận lý học)
Not(Or(A,B)) = And(Not(A), Not(B)) (viết theo hàm Excel)
Cám ơn BNTT đã nhắc nhở.
 
Em đang làm lại bài tập này mà không hiểu sao không được, rõ ràng trước làm ngon mà. Các bác chỉ giúp em với. Thanks.

Tính cột giá thành=Thành tiền+Thuế+thưởng (dùng hàm if)
Trong đó cột thành tiền và thuế sau khi tính toán đã có đầy đủ số liệu rồi
Cột thưởng thì có người được, có người không (để trống)
Em dùng công thức thế này:

=if(thưởng>0,thành tiền+thuế+thưởng,if(thưởng=" ",thành tiền+thuế+0))

dùng công thức này thì những cột thưởng nào mà có dữ liệu thì cho kết quả đúng, nhưng cột thưởng nào không có dữ liều thì nó báo #VALUE!

Hic, em không tải file lên được, các bác thông cảm nhé.
 
Cột thưởng thì có người được, có người không (để trống)

Trống và " " khác nhau bạn à,
- nếu thực sự là trống thí bạn cứ cộng thành tiền+thuế+thưởng không cần if.
- nếu nhìn thì trống, nhưng do công thức mà trống, thì xem lại công thức trả về là 0, hay là "", hay là " " để IF cho đúng.

ngoài ra công thức If của bạn chưa đúng chuẩn: thiếu giá trị trả về nếu đk không thoả. Công thức đúng là:
= If(thưởng>0,thành tiền+thuế+thưởng, thành tiền+thuế)

Khỏi cần cộng zero nha bạn.
 
Em đang làm lại bài tập này mà không hiểu sao không được, rõ ràng trước làm ngon mà. Các bác chỉ giúp em với. Thanks.

Tính cột giá thành=Thành tiền+Thuế+thưởng (dùng hàm if)
Trong đó cột thành tiền và thuế sau khi tính toán đã có đầy đủ số liệu rồi
Cột thưởng thì có người được, có người không (để trống)
Em dùng công thức thế này:

=if(thưởng>0,thành tiền+thuế+thưởng,if(thưởng=" ",thành tiền+thuế+0))

dùng công thức này thì những cột thưởng nào mà có dữ liệu thì cho kết quả đúng, nhưng cột thưởng nào không có dữ liều thì nó báo #VALUE!

Hic, em không tải file lên được, các bác thông cảm nhé.
Bạn thử lại như vầy xem sao:
=thành tiền + thuế + IF(OR(thưởng="", thưởng=0), 0, thưởng)
Lưu ý: Dấu "" là liền nhau, không phải là " "
 
Lần chỉnh sửa cuối:
Em đang làm lại bài tập này mà không hiểu sao không được, rõ ràng trước làm ngon mà. Các bác chỉ giúp em với. Thanks.

Tính cột giá thành=Thành tiền+Thuế+thưởng (dùng hàm if)
Trong đó cột thành tiền và thuế sau khi tính toán đã có đầy đủ số liệu rồi
Cột thưởng thì có người được, có người không (để trống)
Em dùng công thức thế này:

=if(thưởng>0,thành tiền+thuế+thưởng,if(thưởng=" ",thành tiền+thuế+0))

dùng công thức này thì những cột thưởng nào mà có dữ liệu thì cho kết quả đúng, nhưng cột thưởng nào không có dữ liều thì nó báo #VALUE!

Hic, em không tải file lên được, các bác thông cảm nhé.
bài này bạn không cần dùng if cũng được. bạn chỉ cần
=thành tiền+thuế+thưởng
 
bài này bạn không cần dùng if cũng được. bạn chỉ cần
=thành tiền+thuế+thưởng
Công thức này nếu thưởng mà là 1 dấu cách là sẽ có vấn đề, trong trường hợp này nên dùng hàm SUM
Mã:
    =SUM(Thành tiền,Thuế,Thưởng)
Nếu liền nhau thì chọn cả vùng 3 ô luôn cho nhanh
 
Công thức này nếu thưởng mà là 1 dấu cách là sẽ có vấn đề, trong trường hợp này nên dùng hàm SUM
Mã:
    =SUM(Thành tiền,Thuế,Thưởng)
Nếu liền nhau thì chọn cả vùng 3 ô luôn cho nhanh

Hàm SUM thì làm được bác ạ. Mỗi tội em nhớ là lần trước làm hàm IF và đề bài cũng yêu cầu dùng hàm IF. Thanks bác -\\/.

bài này bạn không cần dùng if cũng được. bạn chỉ cần
=thành tiền+thuế+thưởng

Thanks bạn nhưng công thức này không được, mình đã thử rồi, chỉ được với ô mà thưởng có dữ liệu thôi

Trống và " " khác nhau bạn à,
- nếu thực sự là trống thí bạn cứ cộng thành tiền+thuế+thưởng không cần if.
- nếu nhìn thì trống, nhưng do công thức mà trống, thì xem lại công thức trả về là 0, hay là "", hay là " " để IF cho đúng.

ngoài ra công thức If của bạn chưa đúng chuẩn: thiếu giá trị trả về nếu đk không thoả. Công thức đúng là:
= If(thưởng>0,thành tiền+thuế+thưởng, thành tiền+thuế)

Khỏi cần cộng zero nha bạn.

Cột thưởng có ô trống không dữ liệu là do công thức mà trống, công thức trả về là " " bạn ạ.

Ui có ai giải thích được hộ tớ tại sao tớ up file lên đều báo là không được mặc dù file chỉ có 21kb thôi không (xlxs), thế để các bạn nhìn cho dễ ý mà.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Nếu vậy thì
=thành tiền + thuế + if(thưởng <>" ", thưởng, 0)
hoặc
=thành tiền + thuế + if(isnumber(thưởng), thưởng, 0)
 
Thanks các bác, cuối cùng theo gợi ý của bác Ptm0412 em đã làm được theo công thức sau:

=if(thưởng<>"",thành tiền+thuế+thưởng,if(thưởng="",thành tiền+thuế))

Cảm ơn các bác rất nhiều :)
 
Status
Không mở trả lời sau này.
Web KT
Back
Top Bottom