ฟังก์ชัน HAS ช่วยให้คุณสามารถตรวจสอบว่าค่าอยู่ที่ใดที่หนึ่งในอาร์เรย์หรือช่วงหรือไม่ จะส่งกลับค่า TRUE ถ้าพบค่า และส่งกลับค่า FALSE ถ้าไม่พบค่า
HAS จะค้นหาอาร์เรย์ที่ซ้อนกันทุกระดับ ดังนั้น คุณจึงสามารถใช้อาร์เรย์นั้นบนอาร์เรย์ที่ถูกเก็บอยู่ภายในเซลล์เดียวได้
ไวยากรณ์
ฟังก์ชัน HAS จะระบุว่า มีค่า อยู่ใน อาร์เรย์หรือไม่
ไวยากรณ์ของฟังก์ชัน HAS คือ
HAS(array, value)
| อาร์กิวเมนต์ | คำอธิบาย |
|---|---|
|
array (ต้องระบุ) |
อาร์เรย์หรือช่วงที่จะค้นหาภายใน ทุกระดับของอาร์เรย์ที่ซ้อนกันจะถูกค้นหา |
|
value (ต้องระบุ) |
ค่า หรืออาร์เรย์ของค่าที่จะค้นหา |
หมายเหตุ
- การเปรียบเทียบจะเข้มงวดเกี่ยวกับประเภท ตัวเลข 1 ไม่ตรงกับข้อความ "1" และตัวเลข 1 ไม่ตรงกับ TRUE ถ้าคุณต้องการเปรียบเทียบระหว่างชนิดต่างๆ ให้แปลงค่าก่อน — ตัวอย่างเช่น ใช้ฟังก์ชัน VALUE
- การเปรียบเทียบข้อความจะไม่ตรงตามตัวพิมพ์ใหญ่-เล็ก ดังนั้น "apple" จะตรงกับ "APPLE"
- เมื่อค่าเป็นอาร์เรย์ HAS จะส่งกลับอาร์เรย์ของผลลัพธ์ TRUE และ FALSE ที่มีรูปร่างเดียวกับค่า ค่าแต่ละค่าจะถูกทดสอบด้วยตัวของมันเอง
- ถ้า array ว่างเปล่า ฟังก์ชัน HAS จะส่งกลับข้อผิดพลาด #CALC!
- ถ้า ค่า มีข้อผิดพลาดอยู่ ข้อผิดพลาดนั้นจะถูกส่งกลับ
- เมื่อต้องการตรวจสอบค่าหลายค่าพร้อมกันด้วยคําตอบ TRUE หรือ FALSE คําตอบเดียว ให้ใช้ HASANY หรือ HASALL
ตัวอย่าง
คัดลอกข้อมูลตัวอย่างและวางในเซลล์ A1 ของเวิร์กชีต Excel ใหม่ ถ้าคุณต้องการ คุณสามารถปรับความกว้างของคอลัมน์เพื่อดูข้อมูลทั้งหมดได้
ตัวอย่าง 1
ตรวจสอบว่าช่วงมีค่าที่เฉพาะเจาะจงหรือไม่
| ข้อมูล | ||||
|---|---|---|---|---|
| 10 | 20 | 30 | 40 | 50 |
| สูตร | คำถาม |
|---|---|
| =HAS(A2:E2,30) | 30 อยู่ในรายการหรือไม่? |
| =HAS(A2:E2,99) | 99 อยู่ในรายการหรือไม่? |
ภาพประกอบต่อไปนี้แสดงผลลัพธ์
ตัวอย่าง 2
ตรวจสอบค่าหลายค่าในคราวเดียว เนื่องจากอาร์กิวเมนต์ที่สองเป็นอาร์เรย์ HAS จะส่งกลับผลลัพธ์หนึ่งรายการต่อค่า โดยจะอยู่ในรูปร่างเดียวกันกับค่าที่คุณค้นหา
| ข้อมูล | ||
|---|---|---|
| 1 | 2 | 3 |
ปล่อยให้เซลล์ว่างสองเซลล์ใต้สูตรที่สองเพื่อให้ผลลัพธ์สามารถสปิลล์ได้
| สูตร | คำอธิบาย |
|---|---|
| =HAS(A2:C2,{{2,5}}) | ส่งกลับเซลล์เดียวที่มีอาร์เรย์ซ้อน {TRUE,FALSE} |
| =HAS(A2:C2,{2; 5; 3}) | ส่งกลับค่า TRUE, FALSE, TRUE สปิลล์ลงสามเซลล์ — หนึ่งผลลัพธ์ต่อค่า |
ภาพประกอบต่อไปนี้แสดงผลลัพธ์
ตัวอย่าง 3
ค้นหาภายในอาร์เรย์ซ้อนกัน คัดลอกทั้งตาราง แล้ววางลงในเซลล์ A1 ของเวิร์กชีตใหม่ สูตรใน A2 จะจัดเก็บอาร์เรย์ที่ซ้อนกันไว้ในเซลล์เดียว
| ข้อมูล | |
|---|---|
| ={{;{1,2}}}{3,4} | |
| สูตร | คำอธิบาย |
| =HAS(A2,3) | ส่งกลับค่า TRUE HAS จะค้นหาทุกระดับ ดังนั้นจึงพบ 3 รายการภายในอาคาร {3,4} |
| =HAS(A2,5) | ส่งกลับค่า FALSE ไม่มีระดับของอาร์เรย์ซ้อนที่มี 5 |
ภาพประกอบต่อไปนี้แสดงผลลัพธ์