Công thức nhiều điều kiện (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

letienmai

Thành viên hoạt động
Tham gia
16/7/14
Bài viết
146
Được thích
45
Kính gửi: anh/chị
Hiện tại mình đang xây dựng nhật ký kiểm tra chất lượng mình muốn gõ kết quả vào sẽ so sánh với tiêu chuẩn và kết luận là đạt hoặc không đạt. Tuy nhiên đang vướng là cột tiêu chuẩn có nhiều định dạng +/- . >=, <= vì vậy mình làm cách thủ công là tạo 02 cột phụ Min,Max và dùng hàm if,left,right,search...nhưng rất là loằng ngoằng.
Vì vậy rất mong mọi người giúp đỡ gợi ý công thức nào không cần dùng cột phụ để dung lượng file được nhẹ (Mình có đính kèm file và ảnh)
Xin cám ơn.

Capture.PNG
 

File đính kèm

Kính gửi: anh/chị
Hiện tại mình đang xây dựng nhật ký kiểm tra chất lượng mình muốn gõ kết quả vào sẽ so sánh với tiêu chuẩn và kết luận là đạt hoặc không đạt. Tuy nhiên đang vướng là cột tiêu chuẩn có nhiều định dạng +/- . >=, <= vì vậy mình làm cách thủ công là tạo 02 cột phụ Min,Max và dùng hàm if,left,right,search...nhưng rất là loằng ngoằng.
Vì vậy rất mong mọi người giúp đỡ gợi ý công thức nào không cần dùng cột phụ để dung lượng file được nhẹ (Mình có đính kèm file và ảnh)
Xin cám ơn.

View attachment 262336
Bạn ví dụ minh họa thêm 20 Tiêu chuẩn nữa xem. Hay chỉ bao nhiêu tiêu chuẩn đó thôi bạn?
 
"Đầu bày" là đầu gì vậy bạn? @@
1626141832478.png

Cột Ghi chú để làm gì? Có liên quan gì đề bài?

Còn chưa thấy nêu yêu cầu làm gì? Mới thấy kêu cấm dùng cột phụ!
 
"Đầu bày" là đầu gì vậy bạn? @@
View attachment 262338

Cột Ghi chú để làm gì? Có liên quan gì đề bài?

Còn chưa thấy nêu yêu cầu làm gì? Mới thấy kêu cấm dùng cột phụ!
Hi anh
1. Cột ghi chú em thay bằng Diễn giải.
2. Đầu bày em gõ nhầm đúng là Đầu bài
3. Yêu cầu: em có ghi rõ là dùng công thức ở các ô tô màu xanh lá cây.
Bài đã được tự động gộp:

Bạn ví dụ minh họa thêm 20 Tiêu chuẩn nữa xem. Hay chỉ bao nhiêu tiêu chuẩn đó thôi bạn?
Có mấy trường hợp như trên thôi bạn.
 
Vậy dễ ẹc, haha. Bạn đợi mình xíu. :D
Hi anh.
Ô xanh cụ thể là cột kết quả sẽ được gọi là Đạt khi cột kết quả thỏa mãn các điều kiện cột tiêu chuẩn ngược lại thì là Không đạt.
Bài đã được tự động gộp:

Vậy dễ ẹc, haha. Bạn đợi mình xíu. :D
Hi cám ơn bạn.
 
Đề bài ghi rất rõ:
90 ± 10 ==> trong khoảng 80- 100 ==> Kết quả 99 ==> Đạt, kết quả 105 ==> Không đạt
Đề bài giờ mới gọi là "ghi rất rõ". Còn trước đó: Đề bài không ghi gì cả.

Có biết 90 ± 10 là gì đâu.

=CHOOSE(MATCH(SUBSTITUTE(C6," ",""),{"90±10";"≥90";"≤90"},0),IF(AND(D6<=90+10,D6>=90-10),"Đạt","Không đạt"),IF(D6>=90,"Đạt","Không đạt"),IF(D6<=90,"Đạt","Không đạt"))
 
@letienmai :
Bạn tham khảo công thức tại ô E6 trong file mình đính kèm nhé.
Mình làm rừng thôi, thấy cũng dài. Nếu bạn muốn ngắn hơn thì chờ các bạn khác xem sao, híc.

Mã:
=IF(LEN(C6)>=5;IF(AND(D6>=80;D6<=100);"Đạt";"Không đạt");IF(LEFT(C6;1)="≥";IF(D6>=90;"Đạt";"Không đạt");IF(D6<=90;"Đạt";"Không đạt")))
 

File đính kèm

Đề bài giờ mới gọi là "ghi rất rõ". Còn trước đó: Đề bài không ghi gì cả.

Có biết 90 ± 10 là gì đâu.

=CHOOSE(MATCH(SUBSTITUTE(C6," ",""),{"90±10";"≥90";"≤90"},0),IF(AND(D6<=90+10,D6>=90-10),"Đạt","Không đạt"),IF(D6>=90,"Đạt","Không đạt"),IF(D6<=90,"Đạt","Không đạt"))
Cám ơn anh đã quan tâm giúp đỡ.
Tuy nhiên em xin đính chính gõ hơn là số 90 ± 10 là em chỉ demo một số thôi trong thực tế thì không cố định là 90 mà cũng không cố định là 10 mà nó là số nguyên dương ví dụ có thể là: 85 ± 5 hoặc 4 ± 2 .v.v
 
@letienmai :
Bạn tham khảo công thức tại ô E6 trong file mình đính kèm nhé.
Mình làm rừng thôi, thấy cũng dài. Nếu bạn muốn ngắn hơn thì chờ các bạn khác xem sao, híc.

Mã:
=IF(LEN(C6)>=5;IF(AND(D6>=80;D6<=100);"Đạt";"Không đạt");IF(LEFT(C6;1)="≥";IF(D6>=90;"Đạt";"Không đạt");IF(D6<=90;"Đạt";"Không đạt")))
Cám ơn bạn đã quan tâm giúp đỡ.
Do #4 mình sai sót không nói rõ là chỉ có mấy trường hợp là +/-, >=,<= còn lại con số thì ngẫu nhiên như mình vừa viết ở bài #11
 
Kính gửi: anh/chị
Hiện tại mình đang xây dựng nhật ký kiểm tra chất lượng mình muốn gõ kết quả vào sẽ so sánh với tiêu chuẩn và kết luận là đạt hoặc không đạt. Tuy nhiên đang vướng là cột tiêu chuẩn có nhiều định dạng +/- . >=, <= vì vậy mình làm cách thủ công là tạo 02 cột phụ Min,Max và dùng hàm if,left,right,search...nhưng rất là loằng ngoằng.
Chỉ có 3 dạng này: ±, ≥, ≤ , hay còn nhiều dạng khác? Mỗi dạng có thể phải dủng 1 hàm IF+

.
 
Chào bạn,
Bạn có thể tham khảo thêm công thức bên dưới:
=IF(CHOOSE(MATCH(1,--(SUBSTITUTE(C6," ","")={"90±10","≥90","≤90"}),0),(D6>=80)*(D6<=100),D6>=90,D6<=90),"Đạt","Không Đạt")

Hoặc Choose 2 lần thì không cần IF:
=CHOOSE(CHOOSE(MATCH(1,--(SUBSTITUTE(C6," ","")={"90±10","≥90","≤90"}),0),(D6>=80)*(D6<=100),D6>=90,D6<=90)+1,"Không Đạt","Đạt")
 
Lần chỉnh sửa cuối:
Bài này phải diễn thành bảng tra. Dùng công thức tạo bảng tra cũng được. Hoặc dùng INDEX để tạo bảng tra bên trong công thức (theo yêu cầu khong cột phụ, khó hiểu, khó trông hơn thì mặc xác).

Tuy nhiên các điều kiện của thớt có chỗ chồng nhau mà không hề cho biết thằng nào trước mẹ nào cho nên chưa thể làm được gì.
 
Chào bạn,
Bạn có thể tham khảo thêm công thức bên dưới:


Hoặc Choose 2 lần thì không cần IF:
Hi anh
Cám ơn anh đã quan tâm và giúp đỡ ạ. Tuy nhiên do thiếu xót nên phần đầu bài em nêu chưa cụ thể rõ ràng em có bổ sung thêm ở bài #11 ạ.
 
Hi anh
Cám ơn anh đã quan tâm và giúp đỡ ạ. Tuy nhiên do thiếu xót nên phần đầu bài em nêu chưa cụ thể rõ ràng em có bổ sung thêm ở bài #11 ạ.
À, vậy thì mình thêm tham số so sánh với Kết quả ở cột D vào, công thức hơi dài chút nhé.

=IF(CHOOSE(MATCH(1,--(IFERROR(SEARCH({"±","≥","≤"},SUBSTITUTE(C6," ",""),1),0)>0),0),(D6>=LEFT(C6,FIND("±",C6,1)-1)-RIGHT(C6,LEN(C6)-FIND("±",C6,1)))*(D6<=LEFT(C6,FIND("±",C6,1)-1)+RIGHT(C6,LEN(C6)-FIND("±",C6,1))),--(D6>=--RIGHT(C6,LEN(C6)-FIND("≥",C6,1))),--(D6<=--RIGHT(C6,LEN(C6)-FIND("≤",C6,1)))),"Đạt","Không đạt")


Hàm LET trong Office 365 cũng chẳng ngắn hơn được!
=LET(mR,SUBSTITUTE(C6," ",""),xR,FIND("±",mR,1),yR,FIND("≥",mR,1),zR,FIND("≤",mR,1),iNbr1,LEFT(mR,xR-1),jNbr1,RIGHT(mR,LEN(mR)-xR),iNbr2,
--RIGHT(mR,LEN(mR)-yR),iNbr3,--RIGHT(mR,LEN(mR)-zR),iAr,MATCH(1,--(IFERROR(SEARCH({"±","≥","≤"},mR,1),0)>0),0), IF(CHOOSE(iAr,(D6>=iNbr1-jNbr1)*(D6<=iNbr1+jNbr1),D6>=iNbr2,D6<=iNbr3),"Đạt","Không Đạt"))


cadafi_2021-07-13_16-33-10.jpg
 

File đính kèm

Lần chỉnh sửa cuối:
Cám ơn anh đã quan tâm giúp đỡ.
Tuy nhiên em xin đính chính gõ hơn là số 90 ± 10 là em chỉ demo một số thôi trong thực tế thì không cố định là 90 mà cũng không cố định là 10 mà nó là số nguyên dương ví dụ có thể là: 85 ± 5 hoặc 4 ± 2 .v.v
Góp thêm cho bạn một cách khác, chỉ áp dụng cho cột "kết quả" là số nguyên dương từ 1 đến 1000 (có thể hơn chút :) )
Mã:
E6=IF(MEDIAN(D6,IFERROR(LEFT(C6,FIND("±",C6)-1)+MID(C6,FIND("±",C6)+1,5)*{-1,1},MID(C6,2,5)*IF(LEFT(C6)="≤",{0,1},{1,1000})))=D6,"Đạt","Không đạt")
Enter, fill xuống.

Thân
 

File đính kèm

Góp thêm cho bạn một cách khác, chỉ áp dụng cho cột "kết quả" là số nguyên dương từ 1 đến 1000 (có thể hơn chút :) )
Mã:
E6=IF(MEDIAN(D6,IFERROR(LEFT(C6,FIND("±",C6)-1)+MID(C6,FIND("±",C6)+1,5)*{-1,1},MID(C6,2,5)*IF(LEFT(C6)="≤",{0,1},{1,1000})))=D6,"Đạt","Không đạt")
Enter, fill xuống.

Thân
Hi anh.
- Cám ơn anh đã giúp đỡ. Quả thật lần đầu tiên em biết đến hàm MEDIAN qua google thì em biết thêm là hàm Trung bình vị.
- Thật sự rất ngưỡng mộ kiến thức rộng lớn của các anh/chị trong diễn đàn.
 
Quả thật lần đầu tiên em biết đến hàm MEDIAN qua google thì em biết thêm là hàm Trung bình vị.
Median() tìm số "Trung vị" không phải là số "Trung bình vị".
Ví dụ:
  • Nếu dãy các số đếm lẻ: như 3 (5, 7, 9.... ) thì nó sẽ lấy số nằm ở khoảng giữa của 2 (4, 6, 8...) số còn lại. Vd: dãy 5 (số lẻ) số sau: 2, 8, 37, 15, 6 thì 8 là số trung vị vì nó nằm ở khoảng giữa so với 4 số còn lại là 2, 6, 15, 37.
  • Nếu dãy các số đếm chẵn: thì nó là số "trung bình" của 2 số nằm ở khoảng giữa các số còn lại. Vd: dãy 4 (số chẵn) số: 7, 15, 51, 1 thì nó lấy trung bình của 2 số: 7 và 15 (2 số này nằm khoảng giữa của 1, 51), bằng 11 là số trung vị.
Thân
 
Lần chỉnh sửa cuối:

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

Back
Top Bottom