ไปยังเนื้อหาหลัก

วิธีค้นหาค่าที่ใกล้เคียงที่สุดหรือใกล้เคียงที่สุด (ตัวเลขหรือสตริงข้อความ) ใน Excel

สมมติว่าคุณมีรายการตัวเลขในคอลัมน์และตอนนี้คุณต้องค้นหาค่าที่ใกล้เคียงที่สุดหรือใกล้เคียงที่สุดกับค่าที่กำหนดจากรายการตัวเลข คุณจัดการกับมันอย่างไร? จริงๆแล้วคุณสามารถค้นหาค่าที่ใกล้เคียงที่สุดหรือค่าที่ใกล้ที่สุดใน Excel โดยทำตามขั้นตอนต่อไปนี้

ค้นหาตัวเลขที่ใกล้เคียงที่สุดหรือใกล้เคียงที่สุดด้วยสูตรอาร์เรย์

ตัวอย่างเช่นคุณมีรายการตัวเลขในคอลัมน์ A และตอนนี้คุณจะพบค่าที่ใกล้เคียงที่สุดหรือค่าที่ใกล้ที่สุดคือ 18 จากคอลัมน์ A คุณสามารถทำได้ดังนี้:

เลือกเซลล์ว่างและป้อนสูตรด้านล่างจากนั้นกดปุ่ม Ctrl + Shift + Enter คีย์ร่วมกัน

=INDEX(B3:B22,MATCH(MIN(ABS(B3:B22-E2)),ABS(B3:B22-E2),0))

หมายเหตุ ในสูตรอาร์เรย์ของ {=INDEX(B3:B22,MATCH(MIN(ABS(B3:B22-E2)),ABS(B3:B22-E2),0))},

  • B3: B22 คือช่วงที่คุณต้องการค้นหาค่าเฉพาะ
  • E2 คือค่าการค้นหาที่คุณต้องการเปรียบเทียบ
หมายเหตุริบบิ้น สูตรซับซ้อนเกินไปที่จะจำ? บันทึกสูตรเป็นรายการข้อความอัตโนมัติเพื่อใช้ซ้ำได้ในคลิกเดียวในอนาคต!
อ่านเพิ่มเติม ...     ทดลองใช้ฟรี

เลือกตัวเลขที่ใกล้เคียงที่สุดทั้งหมดในช่วงเบี่ยงเบนของค่าที่กำหนดได้อย่างง่ายดายด้วย Kutools for Excel

บางครั้งคุณอาจต้องการค้นหาและเลือกค่าตู้เสื้อผ้าทั้งหมดเป็นค่าที่กำหนดในช่วง จริงๆแล้วเราสามารถกำหนดค่าเบี่ยงเบนแล้วใช้ Kutools for Excel's เลือกเซลล์พิเศษ ยูทิลิตี้เพื่อค้นหาและเลือกค่าที่ใกล้เคียงที่สุดทั้งหมดภายในช่วงการหารของค่า Give ได้อย่างง่ายดาย

Kutools สำหรับ Excel- รวมเครื่องมือที่มีประโยชน์มากกว่า 300 รายการสำหรับ Excel ทดลองใช้ฟรี 60 วันเต็มไม่ต้องใช้บัตรเครดิต! Get It Now

ตัวอย่างเช่นในตัวอย่างของเราเรากำหนดค่าเบี่ยงเบนเป็น 2 และค่าที่กำหนดคือ 18 ดังนั้นเราจำเป็นต้องค้นหาและเลือกค่าระหว่าง 16 (= 18-2) and 20 (= 18 + 2). โปรดดูขั้นตอนต่อไปนี้:

1. เลือกช่วงที่คุณจะค้นหาค่าที่ใกล้เคียงที่สุดกับค่า Give จากนั้นคลิก Kutools > เลือก > เลือกเซลล์เฉพาะ.

2. ในการเปิดกล่องโต้ตอบเลือกเซลล์เฉพาะ
(1) ตรวจสอบไฟล์ เซลล์ ตัวเลือกใน ประเภทการเลือก มาตรา;
(2) ใน ประเภทเฉพาะ คลิกรายการแบบเลื่อนลงรายการแรกแล้วเลือก มากกว่าหรือเท่ากับ จากนั้นและพิมพ์ 16 ลงในช่องต่อไปนี้จากนั้นเลือก น้อยกว่าหรือเท่ากับ จากรายการแบบเลื่อนลงที่สองและพิมพ์ 20 ลงในช่องต่อไปนี้ ดูภาพหน้าจอด้านซ้าย:

3. คลิก Ok เพื่อใช้ยูทิลิตี้นี้ จากนั้นกล่องโต้ตอบจะปรากฏขึ้นและแสดงจำนวนเซลล์ที่เลือกไว้ และคุณจะเห็นค่าที่ใกล้เคียงที่สุดทั้งหมดภายในช่วงเบี่ยงเบนของค่าที่กำหนดจะถูกเลือกตามภาพหน้าจอด้านล่าง:


ค้นหาสตริงข้อความที่ใกล้เคียงที่สุดหรือใกล้ที่สุดด้วยเครื่องมือที่มีประโยชน์

หากคุณติดตั้ง Kutools for Excel คุณสามารถใช้คุณลักษณะ Fuzzy Find เพื่อค้นหาสตริงข้อความที่ใกล้เคียงที่สุดจากช่วงที่กำหนดได้อย่างง่ายดายใน Excel กรุณาดำเนินการดังนี้:

Kutools สำหรับ Excel- รวมเครื่องมือที่มีประโยชน์มากกว่า 300 รายการสำหรับ Excel ทดลองใช้ฟรี 60 วันเต็มไม่ต้องใช้บัตรเครดิต! Get It Now

1. คลิก Kutools > หา > การค้นหาที่ไม่ชัดเจน เพื่อเปิดใช้งานบานหน้าต่าง Fuzzy Lookup ในสมุดงานของคุณ

2. ในบานหน้าต่าง Fuzzy Lookup โปรดกำหนดค่าดังนี้;
(1) ตรวจสอบไฟล์ ระบุ และเลือกช่วงที่คุณจะค้นหาสตริงข้อความที่ใกล้เคียงที่สุด
(2) ตรวจสอบไฟล์ ค้นหาตามข้อความที่ระบุ ตัวเลือก;
(3) ไปที่ไฟล์ ข้อความ กล่องและพิมพ์ข้อความที่ระบุซึ่งคุณจะพบสตริงข้อความที่ใกล้เคียงที่สุด
(4) ใน จำนวนอักขระสูงสุดที่แตกต่างกัน กรุณาพิมพ์ตัวเลข ในกรณีของฉันฉันพิมพ์ 1;
(5) ใน ความยาวสตริงของเซลล์เป็นอย่างน้อย กรุณาพิมพ์ตัวเลข ในกรณีของฉันฉันพิมพ์ 5;

3. คลิก หา ปุ่ม

ตอนนี้ขยายผลการค้นหาและคุณจะเห็นสตริงข้อความที่ใกล้เคียงที่สุดทั้งหมดแสดงรายการเป็นกลุ่ม ดูภาพหน้าจอ:


Demo: เลือกค่าที่ใกล้เคียงที่สุดทั้งหมดในช่วงเบี่ยงเบนของค่าที่กำหนด

Kutools สำหรับ Excel: เครื่องมือแสนสะดวกกว่า 300 รายการอยู่แค่เพียงปลายนิ้วสัมผัส! เริ่มทดลองใช้ฟรี 30 วันโดยไม่มีข้อจำกัดด้านฟีเจอร์ตั้งแต่วันนี้ Download Now!

สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน

🤖 Kutools AI ผู้ช่วย: ปฏิวัติการวิเคราะห์ข้อมูลโดยยึดตาม: การดำเนินการที่ชาญฉลาด   |  สร้างรหัส  |  สร้างสูตรที่กำหนดเอง  |  วิเคราะห์ข้อมูลและสร้างแผนภูมิ  |  เรียกใช้ฟังก์ชัน Kutools...
คุณสมบัติยอดนิยม: ค้นหา เน้น หรือระบุรายการที่ซ้ำกัน   |  ลบแถวว่าง   |  รวมคอลัมน์หรือเซลล์โดยไม่สูญเสียข้อมูล   |   รอบโดยไม่มีสูตร ...
การค้นหาขั้นสูง: VLookup หลายเกณฑ์    VLookup หลายค่า  |   VLookup ข้ามหลายแผ่น   |   การค้นหาที่ไม่ชัดเจน ....
รายการแบบเลื่อนลงขั้นสูง: สร้างรายการแบบหล่นลงอย่างรวดเร็ว   |  รายการแบบหล่นลงขึ้นอยู่กับ   |  เลือกหลายรายการแบบหล่นลง ....
ผู้จัดการคอลัมน์: เพิ่มจำนวนคอลัมน์เฉพาะ  |  ย้ายคอลัมน์  |  สลับสถานะการมองเห็นของคอลัมน์ที่ซ่อนอยู่  |  เปรียบเทียบช่วงและคอลัมน์ ...
คุณสมบัติเด่น: กริดโฟกัส   |  มุมมองการออกแบบ   |   บาร์สูตรใหญ่    สมุดงานและตัวจัดการชีต   |  ห้องสมุดทรัพยากร (ข้อความอัตโนมัติ)   |  เลือกวันที่   |  รวมแผ่นงาน   |  เข้ารหัส/ถอดรหัสเซลล์    ส่งอีเมลตามรายการ   |  ซุปเปอร์ฟิลเตอร์   |   ตัวกรองพิเศษ (กรองตัวหนา/ตัวเอียง/ขีดทับ...) ...
ชุดเครื่องมือ 15 อันดับแรก12 ข้อความ เครื่องมือ (เพิ่มข้อความ, ลบอักขระ, ... )   |   50 + แผนภูมิ ประเภท (แผนภูมิ Gantt, ... )   |   40+ ใช้งานได้จริง สูตร (คำนวณอายุตามวันเกิด, ... )   |   19 การแทรก เครื่องมือ (ใส่ QR Code, แทรกรูปภาพจากเส้นทาง, ... )   |   12 การแปลง เครื่องมือ (ตัวเลขเป็นคำ, การแปลงสกุลเงิน, ... )   |   7 ผสานและแยก เครื่องมือ (แถวรวมขั้นสูง, แยกเซลล์, ... )   |   ... และอื่น ๆ

เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา  คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...

รายละเอียด


แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
Comments (42)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How do we do this if our data is filtered?
This comment was minimized by the moderator on the site
copy the filtered data to a new sheet
This comment was minimized by the moderator on the site
Using the formula how would you return the value next to 17 if there was another column next to number like names. So if 17 is the closest in rang the name next to 17 (John) would be returned?


Example: 18 is nearest to 17 so the return value would be John


Numbers Names
38 Tammy
17 John
20 Amy
This comment was minimized by the moderator on the site
You can use the Approximate match of VLOOKUP function to solve this problem.
=VLOOKUP(E2,A1:B15,2,TRUE)
This comment was minimized by the moderator on the site
I used this formula =INDEX(B3:B22,MATCH(MIN(ABS(B3:B22-E2)),ABS(B3:B22-E2),0)) and it works great. However i have found that where the source number is exactly between two numbers in the range, the lower range number is selected to be the closest.

eg: Searching for the closest number to 9 in the range: 6, 8, 10, 12. It will chose 8 instead of 10. Rounding convention is to round up if exactly half way between. Is there a workaround? Thanks.
This comment was minimized by the moderator on the site
ITS NOT WORKING its #N/A somehow
This comment was minimized by the moderator on the site
Hi DAKOT,
=INDEX(A1:A20,MATCH(MIN(ABS(A1:A20-D1)),ABS(A1:A20-D1),0)) is an array formula, after entering it, please remember to press the Ctrl + Shift + Enter keys together.
This comment was minimized by the moderator on the site
Hi,
im using that formula in finding closest date, it is working.but i want to add condition: closest date that is less than 30 days of the current date (today).it is possible?
Anyone can help please?thank you
This comment was minimized by the moderator on the site
Hi farolito,
How about changing the value you will compare with to =TODAY() in Cell D1?
This comment was minimized by the moderator on the site
Hi, I can get it to work, amazing, BUT not when I input '1' as my 'match_type', instead of the '0' that you used. I want to return values less than or equal to, not just closest to +/-. If I enter 1 instead of 0, it doesn't work. Thoughts on why this might be?
This comment was minimized by the moderator on the site
Great formula -thank you-just a quick question. Anyone know how to highlight the cell that is closest in the match so in long lists it is easy to find??
This comment was minimized by the moderator on the site
If you have the row number from the formula above then you could set a conditional formatting rule on the search array to highlight a cell if it lies on that row.
This comment was minimized by the moderator on the site
It does not work for me! Excel says that there is an error :(
This comment was minimized by the moderator on the site
My bad This will look for all nearest date to today in column d =LARGE(D:D,COUNTIF(d:D,">="&TODAY())) http://WWW.excelireland.com
This comment was minimized by the moderator on the site
Hi, I tried the above formula. however, it is giving me a #N/A. 1. Copy pasted the range from A2 to A43. 2. Formula given was : =INDEX(A2:A43,MATCH(MIN(ABS(A2:A43-H1)),ABS(A2:A43-H1),0)) 3. Press control +Shift +enter Can anybody help me as to what wrong I am doing. :(
This comment was minimized by the moderator on the site
Replace the " , " separator for " ; "
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations