Thep Excel

COUPDAYS – นับวันในงวดคูปอง

ฟังก์ชันคำนวณจำนวนวันทั้งหมดในงวดคูปอง (coupon period) ที่มีวันชำระราคาอยู่

=COUPDAYS(settlement, maturity, frequency, [basis])

By ThepExcel AI Agent
2 December 2025

Function Metrics


Popularity
4/10

Difficulty
6/10

Usefulness
6/10

Syntax & Arguments

=COUPDAYS(settlement, maturity, frequency, [basis])

Argument Type Required Default Description
settlement Date Yes วันชำระราคาหลักทรัพย์ – วันที่ผู้ซื้อรับโอนหลักทรัพย์จากผู้ขาย (ต้องเป็นวันก่อนวันครบกำหนด)
maturity Date Yes วันครบกำหนด – วันสิ้นสุดของหลักทรัพย์ (ต้องเป็นวันหลังจากวันชำระราคา)
frequency Number Yes ความถี่ของการชำระคูปอง ต่อปี: 1 = ประจำปี, 2 = ครึ่งปี (ล้ะ 6 เดือน), 4 = รายไตรมาส (ล้ะ 3 เดือน)
basis Number Optional 0 วิธีการนับวัน: 0 หรือละไว้ (30/360 NASD), 1 (Actual/Actual), 2 (Actual/360), 3 (Actual/365), 4 (European 30/360)

Examples

นับวันในงวดคูปองแบบพื้นฐาน
COUPDAYS("2024-01-25", "2024-12-31", 2, 0)
สมมติว่าพันธบัตรชำระราคาเมื่อ 25 มกราคม 2024 และครบกำหนด 31 ธันวาคม 2024 โดยชำระคูปองครึ่งปีแต่ละครั้ง และใช้วิธีการนับแบบ 30/360 NASD ผลลัพธ์คือ 180 วัน (จำนวนวันในงวดคูปองตั้งแต่ 1 ตุลาคม 2023 ถึง 31 มีนาคม 2024)
Excel Formula:

=COUPDAYS("2024-01-25", "2024-12-31", 2, 0)

Result:

180

นับวันด้วยวิธี Actual/Actual
COUPDAYS("2024-01-25", "2024-12-31", 2, 1)
ใช้ข้อมูลเดียวกับตัวอย่างแรก แต่เปลี่ยนเป็นใช้วิธี Actual/Actual (basis = 1) ซึ่งนับวันจริงๆ ได้ผลลัพธ์เป็น 181 วัน เนื่องจากการนับแบบนี้พิจารณาจำนวนวันที่แน่นอนของปีนั้น
Excel Formula:

=COUPDAYS("2024-01-25", "2024-12-31", 2, 1)

Result:

181

ความถี่รายไตรมาส (Quarterly)
COUPDAYS("2024-02-15", "2025-03-31", 4, 0)
พันธบัตรชำระคูปองทั้ง 4 ครั้งต่อปี (รายไตรมาส) เมื่อใช้ basis = 0 ผลลัพธ์จะเป็น 90 วัน เนื่องจากงวดคูปองโดยทั่วไปจะยาวประมาณ 90 วันสำหรับการชำระแบบรายไตรมาส
Excel Formula:

=COUPDAYS("2024-02-15", "2025-03-31", 4, 0)

Result:

90

ความถี่ประจำปี (Annual)
COUPDAYS("2024-06-15", "2025-12-31", 1, 2)
พันธบัตรชำระคูปองเพียง 1 ครั้งต่อปี เมื่อใช้ basis = 2 (Actual/360) ผลลัพธ์จะเป็น 360 วัน เนื่องจากงวดคูปองประจำปีในวิธีนี้ถือว่าปีมี 360 วัน
Excel Formula:

=COUPDAYS("2024-06-15", "2025-12-31", 1, 2)

Result:

360

FAQs

ความแตกต่างระหว่าง COUPDAYS กับ COUPDAYBS คืออะไร?

COUPDAYS นับจำนวนวันทั้งหมดในงวดคูปองที่มีวันชำระราคา ส่วน COUPDAYBS นับจำนวนวันตั้งแต่จุดเริ่มต้นของงวดคูปองไปจนถึงวันชำระราคา ดังนั้น COUPDAYS – COUPDAYBS = COUPDAYSNC (วันที่เหลือจนถึงสิ้นสุดงวด)

ต้องใส่ basis เสมอหรือไม่?

ไม่จำเป็น basis เป็นพารามิเตอร์ที่ทำให้เลือก หากละไว้ Excel จะใช้ 0 (30/360 NASD) โดยค่าเริ่มต้น ซึ่งเป็นวิธีที่ใช้กันทั่วไปในสหรัฐฯ

ถ้าค่า frequency ไม่ใช่ 1, 2 หรือ 4 จะเกิดอะไร?

Excel จะแสดงข้อผิดพลาด #NUM! เนื่องจาก frequency จะต้องเป็น 1 (ประจำปี), 2 (ครึ่งปี), หรือ 4 (รายไตรมาส) เท่านั้น

เมื่อไหร่ที่ควรใช้ basis = 1 แทน basis = 0?

ใช้ basis = 1 (Actual/Actual) เมื่อต้องการนับวันที่แน่นอน ซึ่งเป็นมาตรฐานในตลาดยุโรป และสำหรับหลักทรัพย์ที่ต้องการความแม่นยำสูง basis = 0 (30/360 NASD) ใช้กับตลาดสหรัฐฯ และเป็นมาตรฐานทั่วไป

settlement date ต้องเป็นวันธรรมชาติหรือเบอร์ที่แทนวันได้?

ทั้งสองอย่างได้ คุณสามารถใส่วันเป็นข้อความ เช่น “2024-01-25” หรือ DATE(2024,1,25) หรือเบอร์ที่แทนวัน เช่น 45318 ทั้งหมดจะให้ผลลัพธ์เดียวกัน

Resources & Related

Additional Notes

COUPDAYS เป็นฟังก์ชันทางการเงินที่ใช้คำนวณจำนวนวันในงวดดอกเบี้ยของพันธบัตรหรือหลักทรัพย์อื่น ซึ่งรวมถึงวันชำระราคา (settlement date) ด้วย

ฟังก์ชันนี้มีประโยชน์เมื่อคุณต้องการหาจำนวนวันทั้งหมดในงวดคูปอง เพื่อใช้ในการคำนวณดอกเบี้ยที่ค้างชำระหรือตัวประกอบของหลักทรัพย์ สำเร็จรูป ที่เกี่ยวข้องกับการซื้อขายพันธบัตรหรือหลักทรัพย์ที่มีคูปอง

ที่เจ๋งคือ COUPDAYS จะคืนค่าจำนวนวันในงวดเดียวเท่านั้น ไม่ใช่จำนวนวันตั้งแต่เริ่มต้นไปจนถึงการตั้งถิ่นฐาน หากคุณต้องการจำนวนวันตั้งแต่เริ่มต้น ให้ใช้ COUPDAYBS แทน 😎

Leave a Reply

Your email address will not be published. Required fields are marked *