Thep Excel

511 functions

ฟังก์ชัน PERMUT ใช้สำหรับคำนวณจำนวนวิธีเรียงสับเปลี่ยน (Permutations) ของวัตถุจำนวนหนึ่งที่เลือกมาจากกลุ่มของวัตถุทั้งหมด โดยคำนึงถึงลำดับของการเรียงสับเปลี่ยน ซึ่งแตกต่างจากการจัดหมู่ (Combination) ที่ไม่สนใจลำดับ

Syntax
=PERMUT(number, number_chosen)

ฟังก์ชัน PERMUTATIONA ใน Excel ใช้สำหรับคำนวณจำนวนวิธีเรียงสับเปลี่ยนของวัตถุ (Permutations with repetition) โดยอนุญาตให้มีการทำซ้ำได้ ตัวอักษรเดิมสามารถใช้หลายครั้งได้ ซึ่งต่างจาก PERMUT ที่ห้ามซ้ำ

Syntax
=PERMUTATIONA(number, number_chosen)

ฟังก์ชัน PHI ส่งกลับค่าฟังก์ชันความหนาแน่นความน่าจะเป็น (PDF) สำหรับการแจกแจงปกติมาตรฐาน (Standard Normal Distribution) ที่ค่า Z ที่ระบุ มีประโยชน์ในการวิเคราะห์สถิติและความน่าจะเป็น

Syntax
=PHI(x)

ฟังก์ชัน PI ส่งกลับค่าคงที่ทางคณิตศาสตร์ π (พาย) ที่มีความแม่นยำสูง ประมาณ 3.14159265358979 ใช้สำหรับการคำนวณวงกลม ทรงกลม และตรีโกณมิติ ฟังก์ชันนี้ไม่ต้องใส่พารามิเตอร์ใดๆ

Syntax
=PI()

PIVOTBY เป็นฟังก์ชัน Excel 365 ที่สร้าง Pivot Table แบบไดนามิก โดยกำหนด Row Fields, Column Fields และ Values ผ่านสูตร พร้อมตั้งค่าการแสดงผลรวมและการเรียงลำดับได้ทันที

Syntax
=PIVOTBY(row_fields, col_fields, values, function, [field_headers], [row_total_depth], [row_sort_order], [col_total_depth], [col_sort_order], [filter_array])

PMT คำนวณค่างวดที่ต้องจ่ายต่อเดือนจากยอดเงินกู้ อัตราดอกเบี้ย และจำนวนงวด โดยค่าที่ได้จะรวมทั้งเงินต้นและดอกเบี้ย

Syntax
=PMT(rate, nper, pv, [fv], [type])

ฟังก์ชัน POISSON ใน Excel ใช้สำหรับคำนวณค่าความน่าจะเป็นของการแจกแจงแบบปัวซอง (Poisson Distribution) สำหรับค่าที่ระบุ โดยใช้ค่าเฉลี่ยที่คาดว่าจะเกิดขึ้น ฟังก์ชันนี้เป็นเวอร์ชันเก่าและถูกแทนที่ด้วย POISSON.DIST เพื่อความแม่นยำและความสอดคล้องกับ Excel เวอร์ชันใหม่.

Syntax
=POISSON(x, mean, cumulative)

POWER คำนวณค่าการยกกำลังได้ง่ายดาย ทำให้ไม่ต้องใช้เครื่องหมาย ^ ในสูตรที่ซับซ้อน เหมาะสำหรับการคำนวณทางวิทยาศาสตร์และวิศวกรรม

Syntax
=POWER(number, power)

PPMT คำนวณเฉพาะเงินต้นที่จ่ายในงวดที่ระบุ โดยแยกออกจากดอกเบี้ย ตรงข้ามกับ PMT ที่รวมทั้งเงินต้นและดอกเบี้ย

Syntax
=PPMT(rate, per, nper, pv, [fv], [type])

PRICEDISC คำนวณราคาต่อเงินหน้าตั๋ว $100 ของตราสารลดราคา (discounted security) เช่น ตั๋วเงิน (Treasury bills) ที่ขายในราคาต่ำกว่ามูลค่าที่จะไถ่ถอนมา โดยคำนึงถึงวันที่ซื้อ วันที่ครบกำหนด อัตราลดราคา และมูลค่าไถ่ถอน

Syntax
=PRICEDISC(settlement, maturity, discount, redemption, [basis])

PRICEMAT คำนวณราคาต่อเงินหน้าตั๋ว $100 ของตราสารหนี้ที่จ่ายดอกเบี้ยทั้งหมดเมื่อครบกำหนด (เช่น บัตรเงินสด Treasury Bills) โดยคำนึงถึงวันที่ชำระ วันครบกำหนด วันออกตราสาร อัตราดอกเบี้ยอ้างอิง และผลตอบแทนที่ต้องการ

Syntax
=PRICEMAT(settlement, maturity, issue, rate, yld, [basis])

PROB คำนวณความน่าจะเป็นที่ค่าสุ่มจะตกอยู่ในช่วงที่คุณระบุ โดยใช้ชุดค่าและความน่าจะเป็นของแต่ละค่า

Syntax
=PROB(x_range, prob_range, lower_limit, [upper_limit])

PROPER แปลงตัวอักษรแรกของแต่ละคำเป็นตัวพิมพ์ใหญ่ (Title Case) และแปลงตัวอักษรที่เหลือเป็นตัวพิมพ์เล็ก เหมาะสำหรับจัดรูปแบบชื่อคน ชื่อสถานที่ ใช้ร่วมกับ UPPER LOWER TRIM เพื่อทำความสะอาดข้อมูล

Syntax
=PROPER(text)

ฟังก์ชัน QUARTILE ใน Excel ใช้สำหรับคำนวณควอร์ไทล์ (Quartile) ของชุดข้อมูล ซึ่งเป็นค่าที่แบ่งข้อมูลออกเป็นสี่ส่วนเท่าๆ กัน โดยมีค่า Q1, Q2 (มัธยฐาน), และ Q3 ฟังก์ชันนี้เป็นเวอร์ชันเก่าและถูกแทนที่ด้วย QUARTILE.INC และ QUARTILE.EXC.

Syntax
=QUARTILE(array, quart)

RAND คืนค่าตัวเลขสุ่มแบบทศนิยมที่มีค่าตั้งแต่ 0 แต่ไม่ถึง 1 (เช่น 0.5234) เหมาะสำหรับการจำลองสถานการณ์ สุ่มตัวอย่าง หรือใช้สร้างคอลัมน์สำหรับเรียงลำดับข้อมูลแบบสุ่ม (Shuffle) เป็นฟังก์ชันที่ไม่มีอาร์กิวเมนต์

Syntax
=RAND()

RANDARRAY สร้างอาร์เรย์ของตัวเลขสุ่มระหว่างค่าที่กำหนด สามารถระบุจำนวนแถว คอลัมน์ ช่วงค่า และชนิดข้อมูล (จำนวนเต็มหรือทศนิยม)

Syntax
=RANDARRAY([rows], [columns], [min], [max], [whole_number])

RANDBETWEEN คืนค่าจำนวนเต็มสุ่มที่อยู่ระหว่างค่าต่ำสุดและสูงสุดที่ระบุ ใช้สำหรับจำลองข้อมูล สร้างรหัสสุ่ม หรือเลือกข้อมูลแบบสุ่ม

Syntax
=RANDBETWEEN(bottom, top)

RANK จัดลำดับตัวเลขเทียบกับรายการข้อมูล คืนค่าอันดับ (1=สูงสุด/ต่ำสุด) เป็นเวอร์ชันเก่าที่ถูกแทนที่ด้วย RANK.EQ และ RANK.AVG แนะนำให้ใช้ RANK.EQ แทนในไฟล์ใหม่ เหมาะสำหรับจัดอันดับยอดขาย คะแนน หรือประสิทธิภาพ

Syntax
=RANK(number, ref, [order])

RANK.AVG จัดลำดับตัวเลขในช่วงข้อมูล โดยถ้ามีค่าซ้ำกันจะคืนค่าลำดับเฉลี่ย เหมาะสำหรับการจัดอันดับทางสถิติที่ต้องการความเป็นธรรม

Syntax
=RANK.AVG(number, ref, [order])

RANK.EQ จัดลำดับตัวเลขในช่วงข้อมูล โดยถ้ามีค่าซ้ำกันจะคืนค่าลำดับที่ดีที่สุดเหมือนกัน เหมาะสำหรับการจัดอันดับการแข่งขัน ยอดขาย หรือคะแนน

Syntax
=RANK.EQ(number, ref, [order])

RATE เป็นฟังก์ชันการเงินที่ใช้สำหรับคำนวณอัตราดอกเบี้ยต่องวด (Interest Rate Per Period) สำหรับเงินกู้หรือการลงทุนที่มีการชำระเงินเป็นงวดๆ ด้วยจำนวนเงินคงที่ เหมาะสำหรับวิเคราะห์อัตราผลตอบแทนจากการให้กู้ยืมหรือการลงทุนในหลักทรัพย์

Syntax
=RATE(nper, pmt, pv, [fv], [type], [guess])

REDUCE เป็นฟังก์ชัน Helper ที่ทำงานร่วมกับ LAMBDA เพื่อวนลูปประมวลผลข้อมูลใน Array โดยรับค่าเริ่มต้น (initial_value) และส่งค่าเข้า LAMBDA ทีละ element เพื่อคำนวณค่าสะสม (accumulator) ที่สืบเนื่องจากรอบก่อนหน้า แล้ว return ผลลัพธ์สุดท้ายเพียงค่าเดียว ต่างจาก SCAN ที่ return Array ของทุกขั้นตอน REDUCE เหมาะสำหรับการสร้าง custom aggregation ที่ซับซ้อนกว่าฟังก์ชันมาตรฐาน

Syntax
=REDUCE([initial_value], array, lambda)

REGEXEXTRACT เป็นฟังก์ชันสำหรับดึงข้อความย่อย (Substring) ที่ตรงกับรูปแบบ Regular Expression (Regex) ที่กำหนด เหมาะสำหรับการทำ Data Cleaning ขั้นสูง

Syntax
=REGEXEXTRACT(text, pattern, [return_mode], [case_sensitivity])

REGEXTEST เป็นฟังก์ชันสำหรับทดสอบว่าข้อความตรงกับรูปแบบ Regular Expression ที่กำหนดหรือไม่ คืนค่า TRUE หรือ FALSE เหมาะสำหรับการตรวจสอบความถูกต้องของข้อมูล (Validation) เช่น ที่อยู่อีเมล เบอร์โทรศัพท์ หรือรูปแบบข้อมูลอื่น ๆ

Syntax
=REGEXTEST(text, pattern, [case_sensitivity])

REGISTER.ID ลงทะเบียน DLL หรือทรัพยากรโค้ดและส่งกลับรหัสที่ใช้อ้างอิง ซึ่งต่างจาก REGISTER ตรงที่ REGISTER.ID ใช้งานได้ในแผ่นงานปกติ (worksheet) ไม่เพียงแผ่นงาน Macro และเมื่อเรียกใช้แล้ว สามารถใช้รหัสที่ส่งกลับมาร่วมกับฟังก์ชัน CALL เพื่อเรียกใช้ฟังก์ชันใน DLL ได้

Syntax
=REGISTER.ID(module_text, procedure, [type_text])

REPLACE แทนที่ข้อความจากตำแหน่งที่กำหนด โดยระบุตำแหน่งเริ่มต้น จำนวนตัวอักษรที่ต้องการลบ และข้อความใหม่ที่จะใส่แทน แตกต่างจาก SUBSTITUTE ที่ค้นหาคำที่ตรงตามความพึงพอใจ REPLACE ใช้ตำแหน่งแน่นอน

Syntax
=REPLACE(old_text, start_num, num_chars, new_text)

REPT ทำซ้ำข้อความตามจำนวนครั้งที่ระบุ เหมาะสำหรับสร้าง In-cell Bar Chart แสดง Rating ด้วยดาว เติม Padding ให้ข้อความ หรือสร้างเส้นแบ่ง ถ้า number_times เป็นทศนิยมจะถูกตัดเหลือจำนวนเต็ม

Syntax
=REPT(text, number_times)

RIGHT จะคืนค่าเป็นข้อความ (Text) ที่ถูกตัดมาจากด้านขวาสุดของข้อความต้นฉบับตามจำนวนที่ระบุ ถ้าไม่ระบุจำนวน ฟังก์ชันจะดึงมาเพียง 1 ตัวอักษร.ที่เจ๋งคือสามารถใช้ร่วมกับ LEN หรือ FIND เพื่อตัดข้อความแบบไดนามิกได้ ผลลัพธ์ที่ได้จะเป็น Text เสมอ ถ้าต้องการนำไปคำนวณต่อ ต้องแปลงเป็นตัวเลขก่อนครับ

Syntax
=RIGHT(text, [num_chars])

ROMAN ใช้แปลงตัวเลข (1–3999) ให้เป็นเลขโรมันในรูปข้อความ เช่น 10 → "X" และ 2024 → "MMXXIV" โดยสามารถกำหนดรูปแบบ (form) เพื่อให้เป็นแบบคลาสสิกหรือแบบย่อได้

Syntax
=ROMAN(number, [form])

ROUND จะปัดตัวเลขไปยังค่าที่ใกล้เคียงที่สุดตามจำนวนหลักที่ระบุ (num_digits) สามารถปัดทศนิยม (ค่าบวก), ปัดเป็นจำนวนเต็ม (0), หรือปัดหลักสิบ หลักร้อย (ค่าลบ) ได้ เป็นฟังก์ชันพื้นฐานที่ใช้บ่อยที่สุดในการสรุปตัวเลข

Syntax
=ROUND(number, num_digits)

ROUNDDOWN จะปัดตัวเลขลงเข้าหาศูนย์เสมอ (ลดค่าสัมบูรณ์ลง) ตามจำนวนหลักที่กำหนด (num_digits) ให้ผลลัพธ์คล้ายกับ TRUNC สำหรับจำนวนเต็มบวก แต่สามารถระบุหลักทศนิยมหรือหลักหน่วย/สิบ/ร้อยได้

Syntax
=ROUNDDOWN(number, num_digits)

ROUNDUP จะปัดตัวเลขขึ้นเสมอ 1 ค่าในหลักที่กำหนด โดยไม่สนใจว่าเศษข้างหลังจะเป็นเลขอะไร (ต่างจาก ROUND ปกติที่ต้องดูว่า >=5 หรือไม่) สามารถระบุจำนวนหลักทศนิยม (num_digits) เป็นบวกเพื่อปัดทศนิยม หรือเป็นลบเพื่อปัดหลักหน่วย/หลักสิบ/หลักร้อยได้

Syntax
=ROUNDUP(number, num_digits)

ROW ส่งคืนหมายเลขแถว (Row Number) ของเซลล์หรือช่วงที่ระบุ ส่งคืนตัวเลขแถว 1, 2, 3… มีประโยชน์ในการกำหนดหมายเลขลำดับแบบไดนามิก และสร้างสูตรที่ปรับตัวตามตำแหน่ง

Syntax
=ROW([reference])

ฟังก์ชันที่ส่งคืนค่า R-squared (R²) หรือสัมประสิทธิ์การตัดสินใจ แสดงสัดส่วนของความแปรปรวนในตัวแปรตามที่สามารถอธิบายได้จากตัวแปรอิสระ ค่าอยู่ระหว่าง 0 ถึง 1

Syntax
=RSQ(known_y's, known_x's)

ฟังก์ชัน RTD ใช้สำหรับดึงข้อมูลแบบ Real-time จากโปรแกรมที่รองรับ COM automation เช่น ราคาหุ้น อัตราแลกเปลี่ยน หรือข้อมูลที่มีการอัพเดทอย่างต่อเนื่อง.ที่เจ๋งคือ RTD จะอัพเดทข้อมูลโดยอัตโนมัติเมื่อ Excel อยู่ในโหมดคำนวณอัตโนมัติ ไม่ต้องนั่งกด F9 หรือรีเฟรชด้วยตนเอง ซึ่งเหมาะมากสำหรับการติดตามข้อมูลตลาดการเงิน การวิเคราะห์หุ้น หรือการเชื่อมต่อกับ Data Server ภายนอก

Syntax
=RTD(ProgID, server, topic1, [topic2], ...)

SCAN วนลูปผ่าน array โดยใช้ LAMBDA function คำนวณค่าสะสม (accumulator) และ return array ที่แสดงค่าสะสมในทุกขั้นตอนของการคำนวณ ต่างจาก REDUCE ที่ return เฉพาะค่าสุดท้าย SCAN เหมาะสำหรับ Running Total, Running Maximum/Minimum, การคำนวณดอกเบี้ยทบต้น หรือการแสดงผลลัพธ์แบบต่อเนื่องที่ต้องการเห็นทุกขั้นตอนของการเปลี่ยนแปลง ใช้งานได้ใน Excel 365 และ Excel 2024

Syntax
=SCAN([initial_value], array, lambda)