Hỏi về hàm điều kiện khi so sánh giá trị một ô với một loạt giá trị khác nhau (3 người xem)

  • Thread starter Thread starter member
  • Ngày gửi Ngày gửi
Liên hệ QC

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

member

Thành viên chính thức
Tham gia
30/8/07
Bài viết
62
Được thích
7
Chào mọi người;
Em đang cần làm một bài toán đơn giản như sau:
Có một cột số liệu và em muốn check xem từng số liệu đó có thỏa mãn điều kiện như sau k0:
1. Nằm trong khoảng (a, b), VD: từ 1 đến 100
2. Không phải là một trong nhiều giá trị khác. VD: 3, 8, 17, 21, 22, 59 (giá trị bất kì, k0 có công thức nào cả)

Và em viết cái công thức để kiểm tra các ô dữ liệu đó ntn (VD là ô A3)

=if(and(A3>=1,A3<=100, A3<>3, A3<>8, A3<>17, A3<>21, A3<>22, A3<>59),true(),false())

Các bác có cách nào để rút gọn cái công thức trên kia xuống được k0 ạ?

Ví dụ như các giá trị khác kia không phải là 6 giá trị nữa, mà là 20-30 giá trị, thì viết rất là dài, sẽ rất mất thời gian để viết, kiểm tra và chỉnh sửa ạ

Cảm ơn và chúc mọi người một ngày tốt lành!
 
Nếu chỉ có điều kiện <> thì bạn có thể bỏ tất cả dãy số vào một mảng (mảng viết tay hay mảng range đều được) rồi dùng hàm match để xét.
iserror(match(A3, {3,8,17,21,22,59}, 0))
Nhưng vì có thêm điều kiện >= và <= cho nên bạn phải thêm những cái này vào.
if(or(A3<1,A3>100), false, iserror(match(....)))

Chú: lúc hỏi bài về kỹ thuật, bạn nên lưu ý rằng kỹ thuật dùng ký hiệu rất nhiều. Do đó những từ dùng diên tả vấn đề thì không nên viết tắt, dễ bị nhầm lẫn với ký hiệu.
Ý tôi muón nói cái từ "k0" mà bạn dùng.
 
Chào mọi người;
Em đang cần làm một bài toán đơn giản như sau:
Có một cột số liệu và em muốn check xem từng số liệu đó có thỏa mãn điều kiện như sau k0:
1. Nằm trong khoảng (a, b), VD: từ 1 đến 100
2. Không phải là một trong nhiều giá trị khác. VD: 3, 8, 17, 21, 22, 59 (giá trị bất kì, k0 có công thức nào cả)

Và em viết cái công thức để kiểm tra các ô dữ liệu đó ntn (VD là ô A3)

=if(and(A3>=1,A3<=100, A3<>3, A3<>8, A3<>17, A3<>21, A3<>22, A3<>59),true(),false())

Các bác có cách nào để rút gọn cái công thức trên kia xuống được k0 ạ?

Ví dụ như các giá trị khác kia không phải là 6 giá trị nữa, mà là 20-30 giá trị, thì viết rất là dài, sẽ rất mất thời gian để viết, kiểm tra và chỉnh sửa ạ

Cảm ơn và chúc mọi người một ngày tốt lành!
Bạn sửa lại như vầy xem:
Mã:
=IF(AND(A3>=1,A3<=100, A3<>{3,8,17,21,22,59}),TRUE(),FALSE())
 
Cảm ơn bác nhé! Đơn giản vậy mà không nghĩ ra :D
 
Nếu chỉ có điều kiện <> thì bạn có thể bỏ tất cả dãy số vào một mảng (mảng viết tay hay mảng range đều được) rồi dùng hàm match để xét.
iserror(match(A3, {3,8,17,21,22,59}, 0))
Nhưng vì có thêm điều kiện >= và <= cho nên bạn phải thêm những cái này vào.
if(or(A3<1,A3>100), false, iserror(match(....)))

Chú: lúc hỏi bài về kỹ thuật, bạn nên lưu ý rằng kỹ thuật dùng ký hiệu rất nhiều. Do đó những từ dùng diên tả vấn đề thì không nên viết tắt, dễ bị nhầm lẫn với ký hiệu.
Ý tôi muón nói cái từ "k0" mà bạn dùng.

Cảm ơn bác ạ, em làm được rồi! Đơn giản như vậy mà k0 nghĩ ra :D
 
Cái này có vẻ gọn hơn, Thanks bác!
nhưng k0 dùng được trong Conditional Formatting bác ạ :D
bạn nhập CT này trong Conditional Formatting:
Mã:
=AND(A1>=1,A1<=100, A1<>[B][COLOR=#ff0000]$C$1:$C$6)[/COLOR][/B]
Vùng C1:C6 bạn nhập các số: 3,8,17,21,22,59!!!
 
Web KT

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

Back
Top Bottom