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

 วิธีค้นหาค่าสูงสุดในแถวและส่งคืนส่วนหัวของคอลัมน์ใน Excel

ในบทความนี้ฉันจะพูดถึงวิธีการคืนค่าส่วนหัวของคอลัมน์ที่มีค่ามากที่สุดในแถวใน Excel ตัวอย่างเช่นฉันมีช่วงข้อมูลต่อไปนี้คอลัมน์ A คือปีและคอลัมน์ B ถึง F จะเติมหมายเลขคำสั่งซื้อตั้งแต่เดือนมกราคมถึงพฤษภาคม ตอนนี้ฉันต้องการรับชื่อเดือนของค่าที่มากที่สุดในแต่ละแถว

doc-get-column-header-1

ค้นหาค่าสูงสุดในแถวและส่งคืนส่วนหัวของคอลัมน์ด้วยสูตร


ลูกศรสีฟ้าฟองขวา ค้นหาค่าสูงสุดในแถวและส่งคืนส่วนหัวของคอลัมน์ด้วยสูตร

ในการดึงข้อมูลส่วนหัวคอลัมน์ที่มีค่ามากที่สุดในแถวคุณสามารถใช้ฟังก์ชัน INDEX, MATCH และ MAX ร่วมกันเพื่อให้ได้ผลลัพธ์ กรุณาดำเนินการดังนี้:

1. ป้อนสูตรนี้ลงในเซลล์ว่างที่คุณต้องการ: =INDEX($B$1:$F$1,0,MATCH(MAX($B2:$F2),$B2:$F2,0))จากนั้นกด เข้าสู่ คีย์เพื่อรับชื่อเดือนที่ตรงกับค่าที่มากที่สุดในแถว ดูภาพหน้าจอ:

doc-get-column-header-2

2. จากนั้นเลือกเซลล์แล้วลากที่จับเติมไปยังช่วงที่คุณต้องการให้มีสูตรนี้ดูภาพหน้าจอ:

doc-get-column-header-3

หมายเหตุ: ในสูตรข้างต้น: B1: F1 คือแถวส่วนหัวที่คุณต้องการส่งคืน B2: F2 คือช่วงข้อมูลที่มีค่ามากที่สุดที่คุณต้องการค้นหา


บทความที่เกี่ยวข้อง:

วิธีค้นหาค่าสูงสุดและส่งคืนค่าเซลล์ที่อยู่ติดกันใน Excel

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

🤖 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 (26)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Can you do this with a MAXIFS function?
This comment was minimized by the moderator on the site
Hello, Ted,
In this case, here can't use the MAXIFS function. In Excel, the MAXIFS function is used to return the largest number in a column based on one or more criteria.
Please click to know more about this MAXIFS fucntion..., it explains this function clearly and detailedly.
Thank you!
This comment was minimized by the moderator on the site
What if there are 2 same highest value, how can i return both column headers, for example the sales for both april and august are 30k, how can i return the name of both april and august
This comment was minimized by the moderator on the site
Hello, To return all the column headers with multiple higest values, you should apply the below User Defined Function.
Function getmax(rngRst As Range, rngVal As Range) As String
Dim i As Integer
Dim xNum As Double
Dim xStr As String
xNum = Application.WorksheetFunction.Max(rngVal)
For i = 1 To rngVal.Count
If rngVal(i).Value = xNum Then
xStr = xStr & rngRst(i).Value & ","
End If
Next
getmax = Left(xStr, Len(xStr) - 1)
End Function

Please copy the above code into the VBA module, and then use the below formula to get the first result, and then drag the fill handle down to return other column headers.=getmax($B$1:$H$1,B2:H2)

Please try, hope it can help you!
This comment was minimized by the moderator on the site
Hi, I have attendance sheet. First column heading is names and rest columns for dates.
Names columns shows names in rows and dates columns shows p (present) H (weekoff) L (leave)
It's for 23 people.
and at last I have made total presents in a day, then total leaves and then total weekoffs.
"Now I am searching the way where I can click on total present numbers and get list of all names who are present in a particular day."
I tried many ways but no luck.
first columns names, second shows if they were present or leave or on week offs.Is there anyway where I can get list of all names who are present or on leave?Any formula?
This comment was minimized by the moderator on the site
how can i modify this logic to show me all the records in one row where a value in all selected columns are greater than 1
This comment was minimized by the moderator on the site
how can i modify this logic to show all the column header in a single row where the value is > 1?
This comment was minimized by the moderator on the site
Did you figure this out
This comment was minimized by the moderator on the site
yoh you are so late man .  year has passed XD
This comment was minimized by the moderator on the site
Thank for this. It helped. Does it work the same way for a range of cells instead of just a row? I am trying to get the formula to return the column header (month) of the largest and smallest value in a range of cells? This is what I tried =INDEX($B$4:$M$4,0,MATCH(MAX($B5:$M42),$B5:$M42,0)) but it gives a #N/A answer
This comment was minimized by the moderator on the site
What happens if you have duplicate values in a row and you want the latest value's header. Is this possible?
The current formula only returns the first match, but in my case I need to know the latest one
This comment was minimized by the moderator on the site
hi. having same issue. Pls do reply if u have found the way out.
This comment was minimized by the moderator on the site
You're Aces Kid !!! ... this example worked perfect for my application: =INDEX($B$1:$F$1,0,MATCH(MAX($B2:$F2),$B2:$F2,0))

ISA 40:31
This comment was minimized by the moderator on the site
Thank you so much!!!
This comment was minimized by the moderator on the site
Hi, am trying to find lowest value in a row and the highest value on the corresponding column. Is there a formula or shortcut to find this. Please guide
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