Thep Excel

511 functions

คำนวณอัตราดอกเบี้ยประจำปีสำหรับหลักทรัพย์ที่ลงทุนเต็มจำนวน (fully invested security) โดยคำนึงถึงวันซื้อ วันครบกำหนด เงินลงทุน และเงินคืน

Syntax
=INTRATE(settlement, maturity, investment, redemption, [basis])

ISERROR ตรวจสอบค่าว่าเป็น Error หรือไม่ โดยครอบคลุม Error ทุกประเภทใน Excel ได้แก่ #N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, และ #NULL! มักใช้คู่กับ IF เพื่อแสดงข้อความเตือนหรือจัดการกับ Error ก่อนที่จะแสดงผล

Syntax
=ISERROR(value)

ISEVEN ตรวจสอบว่าค่าในเซลล์เป็นเลขคู่หรือไม่ และส่งกลับ TRUE (ถ้าเป็นเลขคู่) หรือ FALSE (ถ้าเป็นเลขคี่) ใช้ได้กับตัวเลขที่เป็นจำนวนเต็มเท่านั้น

Syntax
=ISEVEN(number)

ISNA ตรวจสอบเฉพาะ Error #N/A ที่เกิดจากการค้นหาไม่เจอในฟังก์ชันต่างๆ เช่น VLOOKUP หรือ MATCH มีประโยชน์มากเมื่อต้องแยกแยะระหว่าง "หาไม่เจอ" กับ "สูตรคิดผิด"

Syntax
=ISNA(value)

ISNUMBER ตรวจสอบค่าที่ระบุว่าเป็นประเภทตัวเลขหรือไม่ (รวมถึงวันที่และเวลาซึ่ง Excel เก็บเป็นตัวเลข) แต่จะไม่นับตัวเลขที่ถูกจัดเก็บเป็นข้อความ (Numbers stored as text) ผลลัพธ์ที่ได้คือ TRUE หรือ FALSE

Syntax
=ISNUMBER(value)

ISOWEEKNUM คืนค่าหมายเลขสัปดาห์ตามมาตรฐาน ISO 8601 (สัปดาห์เริ่มวันจันทร์ สัปดาห์แรกมีวันพฤหัสบดี) ทำให้วันที่ 1 ม.ค. อาจอยู่ในสัปดาห์ปีก่อน ใช้ในการรายงานแบบรายสัปดาห์ตามมาตรฐานสากล

Syntax
=ISOWEEKNUM(date)

ISTEXT ตรวจสอบว่าค่าในเซลล์เป็นข้อความจริงหรือไม่ จุดเด่นของมันคือมันแยกความแตกต่างระหว่าง '123' (ข้อความ) กับ 123 (ตัวเลข) ซึ่งช่วยเมื่อต้องการตรวจสอบรูปแบบข้อมูลก่อนคำนวณ

Syntax
=ISTEXT(value)

LAMBDA สร้าง custom function ที่ใช้ซ้ำได้โดยไม่ต้องเขียน VBA กำหนด parameter และ calculation แล้วบันทึกผ่าน Name Manager (Ctrl+F3) ด้วยชื่อที่จดจำง่าย เรียกใช้เหมือนฟังก์ชันมาตรฐาน สูตรอยู่ที่เดียว แก้ไขที่เดียวมีผลทั้ง workbook ใช้ร่วมกับ helper functions (MAP, REDUCE, SCAN, BYROW, BYCOL, MAKEARRAY) สร้างสูตร dynamic array ขั้นสูงได้ รองรับ recursive LAMBDA เรียกตัวเองซ้ำจนถึงเงื่อนไข แทนที่สูตรยาวๆ ด้วย custom function ที่อ่านง่าย

Syntax
=LAMBDA([parameter1, parameter2, ...], calculation)

LARGE คืนค่าตัวเลขที่มากที่สุดในลำดับที่ k จากช่วงข้อมูล (array) ถ้า k=1 จะได้ค่าเดียวกับ MAX ถ้า k=n จะได้ค่าที่น้อยที่สุด (MIN) ใช้สำหรับจัดอันดับข้อมูลหรือดึงค่า Top N ออกมาวิเคราะห์

Syntax
=LARGE(array, k)

ฟังก์ชัน LCM ใน Excel ใช้สำหรับคำนวณค่าคูณร่วมน้อยที่สุด (Least Common Multiple หรือ ค.ร.น.) ของจำนวนเต็มตั้งแต่หนึ่งจำนวนขึ้นไป มีประโยชน์ในการแก้ปัญหาที่เกี่ยวข้องกับการจับเวลาหรือการจัดตารางเวลา.

Syntax
=LCM(number1, [number2], ...)

LEN คืนค่าเป็นตัวเลขจำนวนเต็ม แสดงความยาวของข้อความในเซลล์ มีประโยชน์มากในการตรวจสอบความถูกต้องของข้อมูล (Data Validation) เช่น เช็ครหัสพนักงาน, เบอร์โทรศัพท์, หรือเลขบัตรประชาชน ว่ามีความยาวครบถ้วนหรือไม่

Syntax
=LEN(text)

LET ช่วยให้คุณกำหนดชื่อตัวแปร (Named Variables) ภายในสูตร Excel เพื่อเก็บค่าหรือผลลัพธ์การคำนวณ จากนั้นนำชื่อเหล่านั้นมาใช้ซ้ำในสูตรเดียวกัน.ทำให้สูตรที่ซับซ้อนอ่านง่ายขึ้นเยอะ ลดข้อผิดพลาดจากการเขียนซ้ำ และเพิ่มความเร็วเพราะแต่ละการคำนวณจะทำงานเพียงครั้งเดียว ไม่ว่าจะถูกอ้างอิงกี่ครั้งก็ตาม

Syntax
=LET(name1, value1, [name2, value2, ...], calculation)

LOGNORM.INV คำนวณค่าผกผันของการแจกแจง Lognormal โดยรับค่าความน่าจะเป็นและส่งคืนค่า X ที่สอดคล้องกับความน่าจะเป็นนั้น ใช้ในการวิเคราะห์ความเสี่ยงและการวางแผนทางการเงิน

Syntax
=LOGNORM.INV(probability, mean, standard_dev)

คำนวณค่าความน่าจะเป็นสะสมของตัวแปรสุ่มที่แจกแจงแบบ Lognormal ที่ค่าที่ระบุ โดยใช้ค่าเฉลี่ยและส่วนเบี่ยงเบนมาตรฐานของลอการิทึมของการแจกแจง ฟังก์ชันนี้เป็นเวอร์ชันเก่าและอาจถูกแทนที่ด้วย LOGNORM.DIST.

Syntax
=LOGNORMDIST(x, mean, standard_dev)

LOOKUP ค้นหาค่าในช่วงข้อมูลที่เรียงลำดับแล้ว (ascending) และคืนค่าจากตำแหน่งเดียวกันในอีกช่วงหนึ่ง มีเทคนิคพิเศษคือหาค่าสุดท้ายที่ไม่ว่าง แนะนำใช้ XLOOKUP แทนสำหรับ Excel 365

Syntax
=LOOKUP(lookup_value, lookup_vector, [result_vector])

LOWER แปลงข้อความทั้งหมดเป็นตัวพิมพ์เล็ก (lowercase) เหมาะสำหรับทำความสะอาดข้อมูลและเปรียบเทียบข้อความโดยไม่สนตัวพิมพ์ เพราะในบางโปรแกรม Case-sensitive จึงต้องแปลงให้เป็นมาตรฐานเดียวกัน

Syntax
=LOWER(text)

MAKEARRAY สร้าง Dynamic Array ตามขนาดที่กำหนด (rows × cols) โดยใช้ LAMBDA function คำนวณค่าในแต่ละเซลล์ตามตำแหน่ง row และ column index (เริ่มที่ 1) ต่างจาก SEQUENCE ที่สร้างเฉพาะตัวเลขเรียงลำดับ MAKEARRAY สามารถสร้างข้อมูลได้หลากหลายรูปแบบตามการคำนวณที่กำหนดใน LAMBDA เช่น ตารางสูตรคูณ matrix ทางคณิตศาสตร์ pattern ข้อความ หรือค่าสุ่ม เหมาะสำหรับสร้าง dataset ขนาดใหญ่ที่มีรูปแบบเฉพาะ หรือ lookup table แบบ dynamic โดย LAMBDA จะถูกเรียกทำงานสำหรับทุกเซลล์ใน array ผลลัพธ์ ทำให้สร้างข้อมูลจำนวนมากได้อย่างรวดเร็วด้วยสูตรเดียว

Syntax
=MAKEARRAY(rows, cols, lambda)

MAP ส่งค่าทีละ element จาก Array หนึ่งหรือหลายตัวเข้าไปประมวลผลใน LAMBDA แล้วคืน Array ผลลัพธ์ที่มีขนาดเท่ากับ input array ต้นฉบับ เหมาะสำหรับ element-wise operations เช่น การแปลงค่าทุกตัว การตรวจสอบเงื่อนไขทีละเซลล์ หรือการคำนวณจากหลาย Array พร้อมกัน ต่างจาก BYROW/BYCOL ที่ส่งทั้งแถวหรือทั้งคอลัมน์ MAP จะส่งเฉพาะค่าเดี่ยวๆ ทีละตำแหน่ง

Syntax
=MAP(array1, [array2, ...], lambda)

MATCH คืนเลขลำดับตำแหน่งของค่าที่ค้นหาในช่วงข้อมูลแถวเดียวหรือคอลัมน์เดียว รองรับการค้นหา 3 โหมด คือ Exact Match (0) ที่ไม่ต้องเรียงข้อมูล, Approximate Match แบบ Less Than or Equal (1) ที่ต้องเรียงจากน้อยไปมาก, และ Greater Than or Equal (-1) ที่ต้องเรียงจากมากไปน้อย รองรับ Wildcard (* และ ?) ในโหมด Exact Match และมักใช้คู่กับ INDEX เป็นรูปแบบ INDEX-MATCH ที่ยืดหยุ่นกว่า VLOOKUP

Syntax
=MATCH(lookup_value, lookup_array, [match_type])

MAX คืนค่าสูงสุดจากชุดข้อมูลที่มี Data Type เป็นตัวเลข เพิกเฉยเซลล์ว่าง ข้อความ และค่า Logic โดยอัตโนมัติ ทำให้ไม่ต้องกังวลว่าจะมีข้อมูลประเภทอื่นปนอยู่ในช่วง เหมาะสำหรับหาค่าสูงสุดเช่น คะแนนสูงสุด ยอดขายสูงสุด หรือวันที่ล่าสุด และยังใช้เทคนิค Clamp (จำกัดค่า) โดยการใส่ 0 เป็น argument แรกเพื่อบังคับให้ค่าลบกลายเป็น 0 ได้อีกด้วย

Syntax
=MAX(number1, [number2], ...)

MAXIFS ใช้หาค่าสูงสุดจากช่วงข้อมูลที่ตรงตามเงื่อนไขหนึ่งหรือมากกว่า แตกต่างจาก MAX ที่หาเพียงค่าสูงสุดทั้งหมด MAXIFS มีความยืดหยุ่นในการกรองข้อมูลก่อนหาค่าสูงสุด

Syntax
=MAXIFS(max_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

MDETERM ใช้คำนวณค่า Determinant (ดีเทอร์มิแนนต์) ของเมทริกซ์ในช่วงข้อมูล/อาร์เรย์ เหมาะกับงานเชิงเส้น เช่น ตรวจว่าเมทริกซ์เป็นเอกฐานหรือไม่ (Det=0) และใช้ประกอบการหาผกผันของเมทริกซ์ร่วมกับ MINVERSE

Syntax
=MDETERM(array)

MDURATION ช่วยคำนวณความไว (modified duration) ของพันธบัตรต่อการเปลี่ยนแปลงของอัตราดอกเบี้ย ใช้วัดความเสี่ยงด้านดอกเบี้ย

Syntax
=MDURATION(settlement, maturity, coupon, yld, frequency, [basis])

MEDIAN คืนค่าที่อยู่ตำแหน่งตรงกลางของชุดข้อมูลที่เรียงลำดับแล้ว หากมีจำนวนข้อมูลเป็นเลขคี่ จะได้ค่าตรงกลางพอดี แต่ถ้าเป็นเลขคู่ จะนำ 2 ค่าตรงกลางมาหาค่าเฉลี่ย เหมาะสำหรับหาค่ากลางของข้อมูลที่มีค่าสุดโต่ง (Outliers) ปะปนอยู่ (เช่น เงินเดือน หรือราคาบ้าน)

Syntax
=MEDIAN(number1, [number2], ...)

MID ตัดข้อความออกจากตำแหน่งเริ่มต้นที่คุณกำหนด โดยระบุความยาวของข้อความที่ต้องการ สะดวกมากสำหรับดึงข้อมูลบางส่วนจากข้อความที่ยาว เช่น รหัสสินค้า, รหัสพนักงาน, หรือวันที่ที่ฝังตัวในข้อความ

Syntax
=MID(text, start_num, num_chars)

MIN คืนค่าต่ำสุดจากชุดข้อมูลที่มี Data Type เป็นตัวเลข เพิกเฉยเซลล์ว่าง ข้อความ และค่า Logic โดยอัตโนมัติ ซึ่งทำให้ไม่ต้องกลัวว่าจะมีข้อมูลปนมารบกวนผลลัพธ์ ใช้ได้กับตัวเลขทั่วไป วันที่ (ค่าน้อยสุด = วันเก่าสุด) และระยะเวลา สามารถใช้ร่วมกับ MATCH เพื่อหาตำแหน่ง หรือใช้ร่วมกับ MAX เพื่อจำกัดค่าอยู่ในช่วงที่กำหนด

Syntax
=MIN(number1, [number2], ...)