TLDR สรุปสั้นๆ
BYCOL ใช้ประยุกต์ฟังก์ชันกับแต่ละคอลัมน์ในอาร์เรย์ ใช้สำหรับคำนวณโดยแยกตามคอลัมน์
คำอธิบาย
ฟังก์ชัน BYCOL ใช้ในการประยุกต์ใช้ฟังก์ชันแบบเจาะจง (lambda) กับแต่ละคอลัมน์ในอาร์เรย์แล้วคืนค่าอาร์เรย์ที่ได้จากผลลัพธ์ ตัวอย่างเช่น ถ้าอาร์เรย์ตั้งต้นมี 3 คอลัมน์ใน 2 แถว ผลลัพธ์ที่ได้จะเป็น 3 คอลัมน์ใน 1 แถว
มีครั้งแรกในเวอร์ชันไหน
Excel 365
รูปแบบคำสั่ง (Syntax)
BYCOL(array, lambda(column))
Arguments
-
array (Required – array)
คืออาร์เรย์ที่ต้องการจะแยกด้วยคอลัมน์ -
lambda (Required – lambda function)
คือ LAMBDA ที่รับค่าเป็นคอลัมน์เดียวแล้วคำนวณผลลัพธ์ได้หนึ่งค่า -
column (Required – column)
คอลัมน์จากอาร์เรย์
ตัวอย่างการใช้งาน (Examples)
-
Formula:
Description: หาค่ามากที่สุดของแต่ละคอลัมน์ในอาร์เรย์ที่ระบุในช่วง A1:C2=BYCOL(A1:C2, LAMBDA(array, MAX(array)))
Result:ให้ผลลัพธ์เป็นคอลัมน์ค่ามากที่สุดของแต่ละคอลัมน์ -
Formula:
Description: หาผลรวมของค่าสี่เหลี่ยมจัตุรัสของแต่ละคอลัมน์ในช่วง A1:C2=BYCOL(A1:C2, LAMBDA(array, SUMSQ(array)))
Result:ให้ผลลัพธ์เป็นคอลัมน์ที่มีผลรวมของค่าสี่เหลี่ยมจัตุรัสของแต่ละคอลัมน์ -
Formula:
Description: คำนวณค่าเฉลี่ยของแต่ละคอลัมน์ในช่วง A1:C3=BYCOL(A1:C3, LAMBDA(col, AVERAGE(col)))
Result:ให้ผลลัพธ์เป็นคอลัมน์ที่บรรจุค่าเฉลี่ยของแต่ละคอลัมน์ -
Formula:
Description: นับค่าที่มากกว่า 3 ในแต่ละคอลัมน์ที่ช่วง A1:C5=BYCOL(A1:C5, LAMBDA(col, COUNTIF(col,">3")))
Result:ให้ผลลัพธ์เป็นคอลัมน์ที่บรรจุจำนวนนับของค่าที่มากกว่า 3 แต่ละคอลัมน์ -
Formula:
Description: เชื่อมค่าของแต่ละคอลัมน์ในช่วง A1:C4 ด้วยเครื่องหมายคอมม่า=BYCOL(A1:C4, LAMBDA(col, TEXTJOIN(", ", TRUE, col)))
Result:ให้ผลลัพธ์เป็นการเรียงต่อกันของค่าในแต่ละคอลัมน์
Tips & Tricks
BYCOL เหมาะกับการคำนวณเฉพาะคอลัมน์ เช่น หา MAX หรือ SUM ง่ายๆ เพียงแค่เปลี่ยนฟังก์ชันแลมบ์ดาให้ตรงความต้องการ และผลลัพธ์ยังสามารถนำไปใช้ในขั้นตอนถัดไปได้ง่ายด้วย
ข้อควรระวัง (Cautions)
จำเป็นต้องมี LAMBDA function ที่ถูกต้อง หากใส่ค่าผิดหรือไม่มีค่าเลย จะได้ข้อผิดพลาด #VALUE! หรือ #CALC ข้อควรระวังคือ LAMBDA function ต้องคืนค่าเพียงค่าเดียวไม่เช่นนั้นจะทำงานผิดพลาด
ฟังก์ชันที่เกี่ยวข้อง
References
ขอบคุณที่เข้ามาอ่านนะครับ ❤️
Leave a Reply