---
title: RATE – คำนวณอัตราดอกเบี้ยต่องวด
url: https://www.thepexcel.com/functions/excel/financial/rate/
type: function-explainer
program: Excel
syntax: "=RATE(nper, pmt, pv, [fv], [type], [guess])"
date: 2025-12-02
updated: 2025-12-22
scores:
  popularity: 5
  difficulty: 6
  usefulness: 7
---

# RATE – คำนวณอัตราดอกเบี้ยต่องวด

> RATE เป็นฟังก์ชันการเงินที่ใช้สำหรับคำนวณอัตราดอกเบี้ยต่องวด (Interest Rate Per Period) สำหรับเงินกู

## คำอธิบาย

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

## Syntax

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

## Arguments

| Name | Required | Type | Default | Description |
| --- | --- | --- | --- | --- |
| nper | Yes | Number |  | จำนวนงวดทั้งหมด ต้องเป็นตัวเลขบวกเท่านั้น ตัวอย่าง: เงินกู้ 5 ปี ผ่อนเดือนละ 1 ครั้ง = 5*12 = 60 งวด, เงินลงทุน 10 ปี = 10 งวด |
| pmt | Yes | Number |  | จำนวนเงินชำระต่องวด (Payment per Period) - ต้องคงที่ตลอด เครื่องหมายสำคัญ: ผ่อนชำระ (เงินออก) = ลบ (-), เงินรับ (เงินเข้า) = บวก (+) เช่น เงินกู้ผ่อน 1000 = -1000, ได้เงินหุ้นจ่ายปละ 500 = +500 |
| pv | Yes | Number |  | Present Value - มูลค่าปัจจุบัน (เงินต้น) ที่ได้รับ หรือจ่ายในเบิ้งแรก เครื่องหมาย: เงินกู้ (ได้เงิน) = บวก (+), เงินลงทุน (จ่ายเงิน) = ลบ (-) เช่น กู้เงิน 50000 = 50000, ลงทุน 50000 = -50000 |
| fv | No | Number | 0 | Future Value - มูลค่าในอนาคต (เงินที่เหลือ) หลังจากสิ้นสุดทุกงวด ค่า Default = 0 หมายถึงไม่มีเงินค้างเหลือ เช่น ลงทุน 50000 ต้องการให้เป็น 60000 ใน 5 ปี = 60000, เงินกู้ต้องชำระจนหมดตัว = 0 (ไม่ต้องใส่ก็ได้) |
| type | No | Number | 0 | ระบุเวลาการชำระเงิน: 0 = สิ้นสุดงวด (End of Period) - ค่า Default, 1 = ต้นงวด (Beginning of Period) ตัวอย่าง: เงินกู้ผ่อนต้นเดือน = 1, ผ่อนปลายเดือน = 0 |
| guess | No | Number | 0.1 (10%) | ค่าประมาณของอัตราดอกเบี้ยที่คาดหวัง (Initial Guess) - ช่วย RATE ลู่เข้าหาคำตอบได้เร็วขึ้น ค่า Default = 0.1 (10%) หากไม่บรรจบ (Converge) อาจต้องเปลี่ยนค่านี้ เช่น guess = 0.05 (5%), guess = 0.15 (15%) |

## ตัวอย่าง

### 1. ตัวอย่างที่ 1: พื้นฐาน - หาอัตราดอกเบี้ยรายเดือนของเงินกู้

```excel
=RATE(60, -1000, 50000)
```

**ผลลัพธ์:** `0.00830 หรือ 0.83% ต่อเดือน`

สมมติ:
- กู้เงิน 50,000 บาท (pv = 50000 เป็นบวก เพราะได้เงินเข้า)
- ผ่อนเป็นเวลา 5 ปี = 60 เดือน (nper = 60)
- ผ่อนเดือนละ 1,000 บาท (pmt = -1000 เป็นลบ เพราะจ่ายเงินออก)
- ไม่มี fv ค่า default = 0 (ชำระจนหมด)
.
ผลลัพธ์: 0.00830 = 0.83% ต่อเดือน
.
อัตราต่อปี = 0.83% × 12 = 9.96% ต่อปี (อัตราดอกเบี้ยจริง) 💰
.
💡 หมายเหตุ: เครื่องหมายสำคัญมากครับ! ถ้าเปลี่ยนเป็น pmt = 1000 (บวก) หรือ pv = -50000 (ลบ) จะได้ผลผิด

### 2. ตัวอย่างที่ 2: การใช้งานจริง - หาอัตราผลตอบแทน CAGR

```excel
=RATE(5, 0, -50000, 65000)
```

**ผลลัพธ์:** `0.0696 หรือ 6.96% ต่อปี`

สมมติ:
- ลงทุนเงิน 50,000 บาท (pv = -50000 เป็นลบ เพราะจ่ายเงินออก)
- ไม่มีการชำระซ้ำๆ (pmt = 0)
- หลังจาก 5 ปี (nper = 5) มูลค่ากลายเป็น 65,000 บาท (fv = 65000)
.
ผลลัพธ์: 0.0696 = 6.96% ต่อปี
.
แปลว่า: เงิน 50,000 บาท เติบโตเป็น 65,000 บาท ใน 5 ปี คิดเป็นอัตราการเติบโตทบต้น (CAGR) = 6.96% ต่อปี
.
ประโยชน์: เปรียบเทียบกับการลงทุนตัวเลือกอื่นๆ เช่น ฝากธนาคาร 5% ต่อปี (ต่ำกว่า) หรือหุ้น 8% ต่อปี (สูงกว่า) 📈

### 3. ตัวอย่างที่ 3: หาอัตราดอกเบี้ยรายเดือนของสินเชื่อบ้าน

```excel
=RATE(360, -11544, 2500000)*12
```

**ผลลัพธ์:** `0.05 หรือ 5% ต่อปี`

สมมติ:
- กู้เงินซื้อบ้าน 2,500,000 บาท (pv = 2500000)
- ระยะเวลา 30 ปี = 360 เดือน (nper = 360)
- ผ่อนเดือนละ 11,544 บาท (pmt = -11544)
- ไม่คิด fv = 0 (ชำระเสร็จสิ้น)
.
ผลลัพธ์จากสูตร: 0.004167 ต่อเดือน
คูณ 12 เพื่อได้อัตราต่อปี: 0.004167 × 12 = 0.05 = 5% ต่อปี
.
💡 สำคัญ: RATE คืนค่าต่องวดเสมอ ถ้าต้องการอัตราต่อปี ต้องคูณ 12 (สำหรับเดือน) หรือคูณ 4 (สำหรับไตรมาส) ให้ตรงกับหน่วยเวลา

### 4. ตัวอย่างที่ 4: หาอัตราผลตอบแทนของพันธบัตร (Bond Yield)

```excel
=RATE(20, 5000, -100000, 100000)
```

**ผลลัพธ์:** `0.0471 หรือ 4.71% ต่อปี`

สมมติ:
- ซื้อพันธบัตร 100,000 บาท (pv = -100000 จ่ายเงินออก)
- พันธบัตรจ่ายคูปอง 5,000 บาท/ปี เป็นเวลา 20 ปี (pmt = 5000 เงินเข้า)
- หลังจาก 20 ปี พันธบัตรหักหุ้น (redemption) 100,000 บาท (fv = 100000)
.
ผลลัพธ์: 0.0471 = 4.71% ต่อปี
.
แปลว่า: เงินลงทุนในพันธบัตรนี้ให้ผลตอบแทน (Yield) 4.71% ต่อปี ซึ่งสูงกว่าปกติถ้ารวมคูปองและกำไรทุนด้วย 🎯
.
💡 ปัญหา: ถ้าไม่บรรจบ (Error #NUM!) ลองปรับ guess = 0.04 หรือ 0.05 แล้วลองใหม่

### 5. ตัวอย่างที่ 5: ผ่อนชำระต้นงวด vs สิ้นสุดงวด (Type Parameter)

```excel
=RATE(60, -1000, 50000, 0, 0) และ =RATE(60, -1000, 50000, 0, 1)
```

**ผลลัพธ์:** `Type=0: 0.8297% | Type=1: 0.8050%`

สมมติ:
- กู้เงิน 50,000 บาท
- ผ่อน 60 เดือน เดือนละ 1,000 บาท
.
การเปรียบเทียบ:
- Type=0 (ผ่อนปลายเดือน): 0.8297% = 9.956% ต่อปี ← ปกติในโลกจริง
- Type=1 (ผ่อนต้นเดือน): 0.8050% = 9.660% ต่อปี ← ต่ำกว่าเพราะจ่ายเร็ว
.
ความแตกต่าง: เมื่อผ่อนต้นเดือน เจ้าหนี้ได้เงินเร็ว จึงคิดอัตราดอกเบี้ยต่ำกว่า หรือกล่าวได้ว่าผู้กู้ได้อัตราดีกว่า 😊
.
💡 ทำไมต้องมีพารามิเตอร์นี้: เพราะการผ่อนต้นเดือนหรือปลายเดือนส่งผลต่อ Present Value ของเงินจริงๆ

### 6. ตัวอย่างที่ 6: จัดการเมื่อ Guess ต้องเปลี่ยน (Error #NUM!)

```excel
=RATE(120, -5000, 500000, 0, 0, 0.05)
```

**ผลลัพธ์:** `0.00813 หรือ 0.813% ต่อเดือน (9.756% ต่อปี)`

สมมติ:
- กู้เงิน 500,000 บาท ผ่อน 120 เดือน เดือนละ 5,000 บาท
- Guess default = 0.1 (10%) อาจไม่ลู่เข้า → ลอง Guess = 0.05 (5%)
.
ถ้าใส่ guess = 0.05:
- RATE จะเริ่มคำนวณจาก 5% แล้วปรับให้เข้าใจ
- ได้ผลลัพธ์ 0.00813 = 0.813% ต่อเดือน = 9.756% ต่อปี
.
⚠️ ปัญหา: บ่อยครั้งสูตรคืน #NUM! error เมื่อ Guess ไม่เหมาะ:
- เหตุ: RATE ใช้ Iteration วนซ้ำ 20 ครั้ง ถ้าไม่ลู่เข้า → Error
- วิธีแก้: ลองปรับ guess ตั้งแต่ 0.01 (1%) ถึง 0.20 (20%) แล้วใช้ค่าที่ได้ผล
- โค้ด: =IFERROR(RATE(120, -5000, 500000, 0, 0, 0.05), RATE(120, -5000, 500000, 0, 0, 0.10))

### 7. ตัวอย่างที่ 7: สถานการณ์ซับซ้อน - เงินต้นคืน (Balloon Payment)

```excel
=RATE(60, -1000, 50000, -25000)*12
```

**ผลลัพธ์:** `0.0596 หรือ 5.96% ต่อปี`

สมมติ:
- กู้เงิน 50,000 บาท (pv = 50000)
- ผ่อนเดือนละ 1,000 บาท เป็นเวลา 60 เดือน (nper = 60, pmt = -1000)
- หลังจาก 5 ปี ยังติดหนี้ 25,000 บาท (fv = -25000 ยังต้องจ่ายให้เจ้าหนี้)
.
ผลลัพธ์: 0.00497 ต่อเดือน × 12 = 0.0596 = 5.96% ต่อปี
.
เหมือนว่า: ผ่อนเดือนละ 1,000 แล้วหลังจากนั้นจ่ายก้อนใหญ่ 25,000 ครั้งเดียว
.
ความหมาย: อัตราดอกเบี้ยจริงคือ 5.96% ต่อปี เมื่อคิดรวมการจ่ายอุดหนุนครั้งสุดท้ายด้วย
.
💡 สถานการณ์จริง: การกู้รถยนต์มักมี Balloon Payment เพื่อลดเงินผ่อนรายเดือน

### 8. ตัวอย่างที่ 8: เปรียบเทียบแหล่งเงินกู้หลายแห่ง

```excel
=RATE(60, -1000, 50000)*12 | =RATE(60, -980, 50000)*12 | =RATE(72, -750, 50000)*12
```

**ผลลัพธ์:** `ธนาคาร A: 9.96% | ธนาคาร B: 9.35% | บริษัท C: 10.67%`

สมมติต้องการกู้เงิน 50,000 บาท มี 3 ตัวเลือก:
.
**ธนาคาร A:**
- ผ่อน 60 เดือน เดือนละ 1,000 บาท
- =RATE(60, -1000, 50000)*12 = 9.96% ต่อปี
.
**ธนาคาร B:**
- ผ่อน 60 เดือน เดือนละ 980 บาท (ต่ำกว่า)
- =RATE(60, -980, 50000)*12 = 9.35% ต่อปี ← ดีสุด!
.
**บริษัทเงินกู้ C:**
- ผ่อน 72 เดือน (ยาวกว่า) เดือนละ 750 บาท (ต่ำกว่า)
- =RATE(72, -750, 50000)*12 = 10.67% ต่อปี ← แพงสุด!
.
สรุป: ธนาคาร B ดีที่สุด (9.35%) เพราะอัตราต่ำสุด แม้ว่าธนาคาร A และ C จะดูดีเพราะเงินผ่อนต่างกัน
.
💡 เทคนิค: RATE ช่วยเปรียบเทียบตัวเลือกการกู้ยืมอย่างเป็นกลาง (Apples-to-Apples Comparison) โดยปรับให้เหมือนเงินต้นเดียวกัน

## หมายเหตุเพิ่มเติม

- ✓ **ใส่เครื่องหมายให้ถูก** - เงินเข้า(+) เงินออก(-) สำคัญเหมือนชีวิตจริง

- ✓ **คูณ 12 เมื่อต้องการต่อปี** - RATE คืนค่าต่องวดเสมอ ผ่อนรายเดือน = ×12

- ✓ **ตรวจสอบหน่วยเวลา** - nper กับ pmt ต้องเป็นหน่วยเดียวกัน (ทั้งเดือนหรือทั้งปี)

- ✓ **ตรวจสอบสัดส่วนเงิน** - ผ่อนรวม ≥ เงินต้น (อย่างน้อยกับลบดอกเบี้ย) ให้สมเหตุสมผล

- ✓ **ถ้า Error #NUM! ลองปรับ Guess** - 10% ไม่ลู่เข้า ลองเปลี่ยนเป็น 5% 1% 15% เป็นต้น

- ✓ **ใช้ IFERROR สำหรับ Error Handling** - เพื่อความปลอดภัยเมื่อใช้ RATE ในสูตรใหญ่

- ⚠️ **ไม่มีเครื่องหมายผิด = ผลผิด โดยไม่แสดง Error** - เพราะ Excel ยอมรับตัวเลขเป็นสูตรที่สมเหตุสมผล

- ⚠️ **ลืมคูณ 12 = อัตราผิด** - ถ้าควรเป็น 9.96% ต่อปี แต่บอกว่า 0.83% จะสับสน

- ⚠️ **Iteration ใช้เวลา** - RATE ช้าสักหน่อยเมื่อมี FV ด้วย (กำลังสูง > 2)

- ⚠️ **RATE ไม่ใช่อัตราต่อปี** - ทบทวนอีกครั้ง: ต้องคูณด้วยหน่วยเวลา

- 💡 **ใช้ PMT เช็คความสมเหตุสมผล** - =PMT(rate, 60, -50000) ถ้า rate ≈ 0.83% = PMT ≈ 1000 ✓

- 💡 **RATE ถูกใช้กับ PMT/NPER/PV/FV** - ทั้งหมดแก้สมการเดียวกัน เพียงแต่หาตัวแปรต่างกัน

- 💡 **IRR สำหรับกระแสเงินแปรผัน** - ถ้า pmt ไม่คงที่ ต้องใช้ IRR แทน RATE

- 💡 **Goal Seek ช่วยได้ถ้า RATE ไม่ลู่เข้า** - Tools > Goal Seek แล้ว Set Cell, To Value, By Changing Cell

- 💡 **ตัดเกรดจากคะแนนใช้ RATE ได้** - ตั้งสมมติว่า Score เติบโตเป็น Grade Scale

## คำถามที่พบบ่อย

**Q: RATE คืน Error #NUM! หมายความว่าอะไร แก้อย่างไร?**

Error #NUM! แปลว่า "No Solution Found" - RATE หาคำตอบไม่ได้ครับ 😅

**สาเหตุหลักๆ:**

1. **ข้อมูลขัดแย้งกัน** (ไม่สามารถหาอัตราให้เป็นจริงได้)
   - ตัวอย่าง: กู้เงิน 50,000 ผ่อนเดือนละ 100 บาท เป็นเวลา 60 เดือน (จ่ายรวมแค่ 6,000) → ไม่มีอัตราดอกเบี้ยไหนที่สมเหตุสมผล
   - แก้: ตรวจสอบ nper, pmt, pv, fv ให้ตรงกับความเป็นจริง

2. **Guess ไม่เหมาะ** (ค่าเริ่มต้น 10% อาจไม่ลู่เข้า)
   - เหตุ: RATE ใช้ Iteration 20 ครั้ง ถ้า guess เริ่มต้นห่างไกลจากคำตอบจริง อาจไม่ลู่เข้า
   - วิธีแก้: ลองเปลี่ยน guess เป็น 0.05 (5%), 0.01 (1%), 0.15 (15%) เป็นต้น
   ```
   =IFERROR(RATE(60, -1000, 50000, 0, 0, 0.05), RATE(60, -1000, 50000, 0, 0, 0.10))
   ```

3. **Nper = 0 หรือค่าไม่สมเหตุสมผล**
   - ตัวอย่าง: RATE(0, -1000, 50000) → Error!
   - แก้: ตรวจสอบว่า nper ≥ 1 เสมอ

4. **Pmt และ Pv มีเครื่องหมายเดียวกัน**
   - ตัวอย่าง: RATE(60, 1000, 50000) ← ทั้ง pmt และ pv เป็นบวก
   - หมายความ: ได้เงิน 50,000 แล้วยังได้เงินเพิ่มเดือนละ 1,000 → ไม่เข้าท่า!
   - แก้: ให้เครื่องหมายตรงกันข้าม pmt = -1000, pv = 50000

**วิธี Debug ที่ผมใช้:**
```
=IFERROR(RATE(nper, pmt, pv, fv, type, guess), "ลองเปลี่ยน guess")
```
แล้วลองค่า guess ต่างๆ จนกว่าจะได้ผล

**Q: RATE กับ IRR ต่างกันอย่างไร ควรใช้อันไหน?**

ใช่ครับ คำถามนี้ถามบ่อยมาก 😊

**ความเหมือน:**
- ทั้ง RATE และ IRR ต่างก็คำนวณอัตราผลตอบแทน (Discount Rate)
- ทั้งสองใช้ Iteration วนซ้ำ
- ทั้งสองอาจคืน Error #NUM! ได้

**ความต่างกัน:**

| สิ่ง | RATE | IRR |
|------|------|-----|
| **Input** | nper (เลข), pmt (คงที่), pv, fv | Cash Flow Series (Array) |
| **ใช้เมื่อ** | ชำระเงินเป็นจำนวนคงที่ทุกงวด (Annuity) | กระแสเงินสดแปรผัน (Variable Cash Flows) |
| **ตัวอย่าง** | เงินกู้ผ่อนคงที่ 1,000/เดือน | ลงทุนแล้วได้เงินต่างจำนวนแต่ละปี |
| **สูตร** | =RATE(60, -1000, 50000) | =IRR({-50000, 5000, 8000, 10000, ...}) |
| **ง่ายต่อการใช้** | ง่าย (พารามิเตอร์ชัดเจน) | ซับซ้อนกว่า (ต้องจัดเรียง Cash Flow) |

**คำแนะนำจากผม:**
- ใช้ **RATE** เมื่อ: เงินกู้, ผ่อนราคาเท่า, เงินฝาก/เงินออม
- ใช้ **IRR** เมื่อ: ลงทุนแล้วได้เงินแบบ Variable (หุ้น, โครงการลงทุน)
- ใช้ **NPER/PMT/PV** ร่วมกับ RATE เมื่อต้องการหาตัวแปรอื่นๆ

**Q: ทำไมต้องใส่เครื่องหมาย (บวก/ลบ) ให้ถูก ถ้าลืมจะเป็นไงบ้าง?**

นี่คือจุดที่ผ่อนหนักมากครับ! 😅 เครื่องหมายไม่ถูก = ผลลัพธ์ผิด

**กฎเบื้องต้น:**
- **เงินเข้า** (Inflow) = **บวก** (+)
- **เงินออก** (Outflow) = **ลบ** (-)

**ตัวอย่างการกู้ยืม:**
```
กู้เงิน 50,000 → เงินเข้า → pv = +50000
ผ่อนเดือนละ 1,000 → เงินออก → pmt = -1000
ได้ค่าตัดจำหน่ายส่วนกลับ → เงินเข้า → fv ??? (ไม่มี = 0)
```

**ตัวอย่างลงทุน:**
```
ลงทุน 50,000 → เงินออก → pv = -50000
ไม่มีการชำระซ้ำ → pmt = 0
ได้เงินกลับ 65,000 → เงินเข้า → fv = +65000
```

**ถ้าลืมใส่เครื่องหมาย:**

❌ ผิด:
```
=RATE(60, 1000, 50000)  ← pmt เป็นบวก
→ ได้ผลผิด หรือ Error #NUM!
```

✅ ถูก:
```
=RATE(60, -1000, 50000)  ← pmt เป็นลบ
→ ได้ผล 0.83% ต่อเดือน
```

**วิธีจำให้ง่าย:**
ลองคิดว่า "เงินของฉัน" ไหล่ไปไหน:
- ออกจากกระเป๋า (ผ่อนชำระ) = ลบ (-)
- เข้ากระเป๋า (ได้เงินคืน) = บวก (+)

💡 **Pro Tip:** ถ้าไม่แน่ใจ ลองคำนวณ 2 แบบแล้วเทียบดู คำตอบที่เหมาะสมขึ้นอยู่กับความเป็นจริง

**Q: ต้องคำนวณอัตราต่อปี (Annual Rate) อย่างไรจาก RATE?**

**กฎเบื้องต้น:** RATE คืนค่าต่องวด ต้องปรับให้เป็นต่อปี

**สูตรการปรับ:**
- เงินกู้รายเดือน → **คูณ 12**
- เงินกู้รายไตรมาส → **คูณ 4**
- เงินกู้รายครึ่งปี → **คูณ 2**
- เงินกู้รายปี → **ไม่ต้องคูณ** (ใช้ได้เลย)

**ตัวอย่าง:**
```
Annual Rate = RATE(nper, pmt, pv, fv, type, guess) × m

เมื่อ m = จำนวนงวดต่อปี (12 สำหรับเดือน)
```

**ตัวอย่างจริง:**

**1. เงินกู้รายเดือน:**
```
=RATE(60, -1000, 50000) = 0.00830 (0.83% ต่อเดือน)
อัตราต่อปี = 0.00830 × 12 = 0.0996 = 9.96% ต่อปี
```

**2. ฝากเงิน (คูณโดยตรง):**
```
=RATE(60, -1000, 50000)*12 = 9.96%
```

**3. การปรับ APR (Effective Annual Rate):**
ถ้าต้องการดอกเบี้ยที่เคลียร์เงื่อนไข (Effective Annual Rate) ต้องใช้สูตรอื่น:
```
EAR = (1 + r)^m - 1

เมื่อ r = RATE ต่องวด, m = งวดต่อปี

ตัวอย่าง:
r = 0.00830, m = 12
EAR = (1 + 0.00830)^12 - 1 = 0.1040 = 10.40%
```

**ความแตกต่าง APR vs EAR:**
- **APR** (Annual Percentage Rate) = ผลรวมอัตราต่องวด × 12 = 9.96%
- **EAR** (Effective Annual Rate) = พิจารณาดอกเบี้ยทบต้น = 10.40%
- ทั่วไปธนาคารประกาศ APR เพราะดูต่ำกว่า 😅

💡 **ส่วนตัวผมแนะนำ:** ใช้ APR (คูณ 12) เพราะเป็นมาตรฐานสากล และคำนวณง่าย

**Q: RATE เป็นของอะไรไหนบ้างใน Excel? มี Function อื่นที่คล้ายกันไหม?**

**RATE เป็น Financial Function** ใน Excel ที่อยู่กลุ่มเดียวกับ:

**ครอบครัว PMT Functions (Financial Calculations):**

| Function | ใช้หา | สูตร |
|----------|--------|-------|
| **RATE** | อัตราดอกเบี้ย | =RATE(nper, pmt, pv, fv) |
| **PMT** | เงินชำระต่องวด | =PMT(rate, nper, pv, fv) |
| **NPER** | จำนวนงวด | =NPER(rate, pmt, pv, fv) |
| **PV** | เงินต้น | =PV(rate, nper, pmt, fv) |
| **FV** | เงินในอนาคต | =FV(rate, nper, pmt, pv) |
| **PPMT** | ส่วนต้นในงวด | =PPMT(rate, per, nper, pv, fv) |
| **IPMT** | ส่วนดอกในงวด | =IPMT(rate, per, nper, pv, fv) |

**ความสัมพันธ์:**
ทั้งหมดใช้สมการเดียวกัน เพียงแต่แก้หาตัวแปรต่างกัน:

**PV + FV = PMT × [ (1+rate)^nper - 1 ] / rate × (1+type×rate)**

**ตัวอย่างใช้ร่วมกัน:**

**เงินกู้ 50,000 บาท อัตรา 10% ต่อปี = 0.833% ต่อเดือน:**

```
ดึง pmt รายเดือน:
=PMT(0.833%/100, 60, -50000) = -1,055 บาท

หรือดึง rate:
=RATE(60, -1000, 50000) = 0.83% ต่อเดือน

หรือดึง nper:
=NPER(0.833%/100, -1000, 50000) = 60 เดือน

หรือดึง pv:
=PV(0.833%/100, 60, -1000) = 50,000 บาท
```

**Function ที่คล้ายในเวอร์ชันใหม่:**
- **XLOOKUP** (ไม่เกี่ยว) - สำหรับค้นหา
- **IRR** - สำหรับ Internal Rate of Return (กระแสเงินแปรผัน)
- **XIRR** - สำหรับ IRR ของเงินที่ไม่คงที่และช่วงเวลาไม่เท่า

💡 **ส่วนตัวผมแนะนำ:** เรียนรู้ RATE + PMT + NPER + PV + FV ให้ครบ เพราะสามารถแก้ปัญหาการเงินได้ครอบจักรวาลเลย 😎

**Q: ทำไม RATE ช้า เมื่อมี PMT หลายงวด ต้องลองเหมือน PMT ทั่วไปหลายครั้งไหม?**

ใช่ครับ นี่คือเหตุผลที่ RATE ใช้ **Iteration** (วนซ้ำ) 😊

**เหตุผล:**

**1. ไม่มีสูตรปิด (Closed-form Solution)**
- สมการที่ RATE ต้องแก้: `PV + PMT×[(1+r)^nper-1]/r + FV/(1+r)^nper = 0`
- ไม่สามารถแก้เพื่อหา r ด้วยพีชคณิตได้โดยตรง (ต่างจาก PMT ที่เป็นสูตรเชิงเส้น)
- บังคับต้อง "ลองหา" ด้วย Newton-Raphson Method

**2. วิธี Iteration ของ RATE:**
```
Iteration ที่ 1: ลองค่า r = 0.1 (10%) → ตรวจสอบผล
Iteration ที่ 2: ลองค่า r = 0.08 → ตรวจสอบผล (ใกล้เข้ามา)
Iteration ที่ 3: ลองค่า r = 0.0083 → ตรวจสอบผล (ใกล้เข้ามา)
...
Iteration ที่ 20: ถ้าลู่เข้า → คืนค่า หรือ Error #NUM!
```

**3. ประสิทธิภาพ:**
- โดยปกติ RATE บรรจบใน 3-5 iteration (เร็ว)
- แต่ถ้า guess ห่างจากคำตอบจริง อาจต้อง 10-20 iteration
- Excel กำหนด Limit 20 iteration หากไม่ลู่เข้า → Error #NUM!

**ตัวอย่างความเร็ว:**
```
Calculate RATE(60, -1000, 50000):
- Iteration 1-5: ประมาณ 0.0083 ±5% ← บรรจบ!
- ลำดับเวลา: < 1 millisecond ← เร็วมาก!

แต่ถ้า guess ผิด guess = 0.5 (50%):
- Iteration 1-20: ปรับลงมา 0.0083 ± 0.001
- ลำดับเวลา: 1-2 milliseconds ← ช้ากว่าเล็กน้อย
```

**จะช้ามากไหม (Performance Impact)?**

ปกติ **ไม่** มีปัญหา เพราะ:
- RATE วนแค่ 20 ครั้งสูงสุด (ไม่ได้เยอะ)
- ใน Excel sheet 1,000 เซลล์ก็คำนวณเสร็จใน < 100ms

**แต่ถ้า...**
- ใช้ RATE ใน **Data Table** (recalculate หลายพัน times) → เหนื่อย
- ใช้ RATE ใน **Array Formula** ของหมื่นแถว → โปรแกรมช้า

**วิธีเร่งความเร็ว:**
1. ใช้ `Guess` ที่ดี (default 0.1 มักดี)
2. ถ้าใช้ RATE เยอะๆ ปิด Automatic Calculation: `Ctrl+Alt+F9`
3. ใช้ **Goal Seek** แทน RATE สำหรับกรณี 1-2 การคำนวณ
4. ใช้ VBA/Macro เขียน Solver ที่เร็วกว่า (เท่านั้น)

💡 **สรุป:** RATE ไม่ช้า เพียงแต่ "ลองหา" แทนที่จะคำนวณตรง เหตุในการใช้งานปกติจะไม่มีปัญหา

## ฟังก์ชันที่เกี่ยวข้อง

- [PMT – คำนวณค่างวดสินเชื่อหรือเงินกู้](https://www.thepexcel.com/functions/excel/financial/pmt/)
- [NPER – คำนวณจำนวนงวดการชำระเงิน](https://www.thepexcel.com/functions/excel/financial/nper/)
- [PV – มูลค่าปัจจุบัน](https://www.thepexcel.com/functions/excel/financial/pv/)
- [FV – คำนวณค่าลงทุนในอนาคต](https://www.thepexcel.com/functions/excel/financial/fv/)
- [IRR – คำนวณอัตราผลตอบแทนภายใน](https://www.thepexcel.com/functions/excel/financial/irr/)
- [PPMT – คำนวณเงินต้นที่ต้องจ่ายในงวด](https://www.thepexcel.com/functions/excel/financial/ppmt/)
- [IPMT – หาดอกเบี้ยต่องวด](https://www.thepexcel.com/functions/excel/financial/ipmt/)

## แหล่งข้อมูลเพิ่มเติม

- [Microsoft Support: RATE Function](https://support.microsoft.com/en-us/office/rate-function-9f665657-4a7e-4bb7-a030-83fc59e748ce) _(official)_
- [Wall Street Prep: RATE Function Guide](https://www.wallstreetprep.com/knowledge/rate-function/) _(article)_
- [Corporate Finance Institute: RATE Function Tutorial](https://corporatefinanceinstitute.com/resources/excel/rate-function/) _(article)_
- [Able Bits: RATE Function for Interest Calculations](https://www.ablebits.com/office-addins-blog/excel-rate-function-calculate-interest-rate/) _(article)_

---

_Source: [https://www.thepexcel.com/functions/excel/financial/rate/](https://www.thepexcel.com/functions/excel/financial/rate/)_
