---
title: PRODUCTX – คูณค่าจากนิพจน์ทีละแถวแล้วคูณรวมทั้งตาราง
url: https://www.thepexcel.com/functions/dax/aggregation/productx-dax/
type: function-explainer
program: DAX
syntax: "PRODUCTX(<Table>, <Expression>)"
date: 2025-12-13
updated: 2025-12-17
scores:
  popularity: 3
  difficulty: 5
  usefulness: 3
---

# PRODUCTX – คูณค่าจากนิพจน์ทีละแถวแล้วคูณรวมทั้งตาราง

> คูณผลของ Expression ทุกแถวใน Table เป็นค่าเดียว

## คำอธิบาย

PRODUCTX วนประเมิน Expression บน Table แล้วคูณผลลัพธ์ของแต่ละแถวเข้าด้วยกันเป็นค่าเดี่ยว เหมาะกับการคูณปัจจัย/อัตราการเปลี่ยนแปลงต่อเนื่องหลายงวด และควรระวัง BLANK/ศูนย์/ค่าติดลบตามตรรกะงาน

## Syntax

```excel
PRODUCTX(&lt;Table&gt;, &lt;Expression&gt;)
```

## Arguments

| Name | Required | Type | Default | Description |
| --- | --- | --- | --- | --- |
| Table | Yes | table |  | ตารางที่ต้องการวนแถวเพื่อคูณค่า |
| Expression | Yes | expression |  | นิพจน์ที่คำนวณต่อแถวและถูกนำไปคูณรวมกัน |

## เคสการใช้งาน

### คูณอัตราการเติบโตต่อเนื่อง

คำนวณตัวคูณสะสมจาก (1+r) หลายงวด

_เหมาะกับ:_ compound-growth

### คูณปัจจัยหลายตัวในตาราง

เช่นคูณค่าปรับ/ตัวคูณจากหลายแถวเพื่อได้ผลรวมแบบคูณ

_เหมาะกับ:_ multiply-factors

## ตัวอย่าง

### 1. ตัวอย่างที่ 1: ตัวคูณสะสมจากอัตราเปลี่ยนแปลงรายวัน (แนวคิด)

```excel
ตัวคูณสะสม =
PRODUCTX(
    VALUES('Date'[Date]),
    1 + [Daily Return]
)
```

**ผลลัพธ์:** `ได้ตัวคูณสะสมจากการคูณ (1 + Daily Return) ทุกวันในช่วงที่ถูกกรอง`

ใช้ VALUES('Date'[Date]) เป็นชุดวัน แล้วคูณปัจจัยต่อวันเข้าด้วยกัน

### 2. ตัวอย่างที่ 2: คูณปัจจัยจากตาราง Factor

```excel
ผลคูณปัจจัย =
PRODUCTX(
    Factors,
    Factors[Multiplier]
)
```

**ผลลัพธ์:** `ได้ผลคูณของ Multiplier ทุกแถวในตาราง Factors`

เหมาะเมื่อมีตัวคูณหลายตัวที่ต้องการรวมแบบคูณ

### 3. ตัวอย่างที่ 3: ทำให้ปลอดภัยเมื่อมี BLANK (แนวคิด)

```excel
ผลคูณ (แทน BLANK เป็น 1) =
PRODUCTX(
    Factors,
    IF(ISBLANK(Factors[Multiplier]), 1, Factors[Multiplier])
)
```

**ผลลัพธ์:** `BLANK จะไม่ทำให้ผลลัพธ์เสียรูปด้วยการแทนเป็น 1`

เลือกวิธีจัดการ BLANK ให้สอดคล้องกับตรรกะของงาน (บางงานอาจต้องการ BLANK แทน)

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

PRODUCTX เป็น iterator และอาจมีผลต่อประสิทธิภาพเมื่อ Table มีจำนวนแถวมาก หากต้องคูณตามช่วงเวลา ให้พิจารณาจำกัดช่วงด้วยตัวกรองหรือใช้ VALUES ของแกนที่จำเป็นเท่านั้น

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

**Q: PRODUCTX ต่างจาก SUMX อย่างไร?**

SUMX วนแล้วรวมผลลัพธ์ ส่วน PRODUCTX วนแล้วคูณผลลัพธ์ของแต่ละแถว

**Q: ถ้าในชุดมีค่า 0 จะเป็นอย่างไร?**

ผลคูณจะเป็น 0 ทันทีตามคณิตศาสตร์ ดังนั้นควรพิจารณาว่า 0/BLANK ควรถูกจัดการอย่างไรตามความหมายของข้อมูล

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

- sumx
- averagex
- countx
- values
- [IF – ตรวจสอบเงื่อนไขและคืนค่าตามผลลัพธ์ TRUE/FALSE](https://www.thepexcel.com/functions/dax/logical/if-dax/)
- isblank-dax
- calculate

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

- [DAX Guide: PRODUCTX](https://dax.guide/productx/) _(documentation)_

---

_Source: [https://www.thepexcel.com/functions/dax/aggregation/productx-dax/](https://www.thepexcel.com/functions/dax/aggregation/productx-dax/)_
