---
title: COMBINEVALUES – สร้างคีย์รวมด้วยตัวคั่น
url: https://www.thepexcel.com/functions/dax/text/combinevalues-dax/
type: function-explainer
program: DAX
syntax: "COMBINEVALUES(<delimiter>, <expression1>, <expression2>[, <expression3>...])"
date: 2025-12-13
updated: 2025-12-17
scores:
  popularity: 5
  difficulty: 3
  usefulness: 5
---

# COMBINEVALUES – สร้างคีย์รวมด้วยตัวคั่น

> รวมหลายค่าเป็นสตริงเดียวด้วยตัวคั่น

## คำอธิบาย

COMBINEVALUES รวมหลายค่าสเกลาร์เป็นข้อความเดียว โดยกำหนดตัวคั่นได้ เหมาะกับการสร้างคีย์รวมจากหลายคอลัมน์ในแถวเดียว

## Syntax

```excel
COMBINEVALUES(&lt;delimiter&gt;, &lt;expression1&gt;, &lt;expression2&gt;[, &lt;expression3&gt;...])
```

**Variant**

```excel
COMBINEVALUES(&lt;delimiter&gt;, &lt;expression1&gt;, &lt;expression2&gt;[, &lt;expression3&gt;...])
```

รวมค่าหลายค่าเป็นสตริงเดียว โดยคั่นด้วย delimiter

## Arguments

| Name | Required | Type | Default | Description |
| --- | --- | --- | --- | --- |
| delimiter | Yes | scalar |  | ตัวคั่นระหว่างค่าแต่ละส่วน (เช่น "\|") |
| expression1 | Yes | scalar |  | ค่าส่วนที่ 1 |
| expression2 | Yes | scalar |  | ค่าส่วนที่ 2 |
| expression3 | No | scalar | ไม่ระบุ | ค่าส่วนเพิ่มเติม (ถ้ามี) |

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

### สร้างคีย์รวมจากหลายคอลัมน์

เช่น รวม CustomerID และ OrderID เป็นคีย์เดียว

_เหมาะกับ:_ composite-key

### สร้าง label แบบหลายส่วน

รวมรหัส/ชื่อ/ปี ให้แสดงในรูปแบบเดียวกัน

_เหมาะกับ:_ multi-part-label

## ตัวอย่าง

### 1. ตัวอย่างที่ 1: สร้างคีย์ Customer|Order

```excel
Customer Order Key =
COMBINEVALUES(
    "|",
    Sales[CustomerID],
    Sales[OrderID]
)
```

**ผลลัพธ์:** `ได้สตริงคีย์รวม เช่น 1001|A-000123`

เหมาะเมื่ออยากมีคีย์เดียวที่ระบุเอกลักษณ์จากหลายคอลัมน์ในแถวเดียว

### 2. ตัวอย่างที่ 2: สร้างคีย์หลายส่วนด้วยตัวคั่น

```excel
Composite Key =
COMBINEVALUES(
    "-",
    Sales[Region],
    Sales[Store],
    Sales[InvoiceNo]
)
```

**ผลลัพธ์:** `ได้สตริงลักษณะ Region-Store-Invoice`

รองรับมากกว่า 2 ค่า ทำให้สร้างคีย์หลายส่วนได้สะดวก

### 3. ตัวอย่างที่ 3: สร้าง label ที่อ่านง่าย

```excel
Display Label =
COMBINEVALUES(
    " / ",
    Products[Brand],
    Products[ProductName]
)
```

**ผลลัพธ์:** `ได้สตริง “Brand / ProductName”`

ใช้ทำ label สำหรับแสดงผลในภาพรวม/ตารางได้ง่าย

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

ถ้าต้องการรวมข้อความจากหลายแถวเป็นสตริงเดียว ให้ใช้ CONCATENATEX ซึ่งเป็นแบบ iterator

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

**Q: COMBINEVALUES ต่างจาก CONCATENATE อย่างไร?**

CONCATENATE ต่อได้ 2 ค่าและไม่ได้มีแนวคิดเรื่องตัวคั่นเป็นหลัก ส่วน COMBINEVALUES ออกแบบมาสำหรับรวมหลายค่าโดยมี delimiter ชัดเจน เหมาะกับการทำคีย์รวม

**Q: ควรเลือก delimiter อะไรดี?**

เลือกตัวคั่นที่ไม่ชนกับข้อมูลจริง เช่น "|" หรือ " / " เพื่อหลีกเลี่ยงความกำกวมเมื่อแยกส่วนหรืออ่านค่า

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

- [CONCATENATE – ต่อข้อความ 2 ส่วน](https://www.thepexcel.com/functions/dax/text/concatenate-dax/)
- concatenatex
- format
- [FIXED – แปลงตัวเลขเป็นข้อความพร้อมกำหนดทศนิยม/คอมมา](https://www.thepexcel.com/functions/dax/text/fixed-dax/)

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

- [DAX Guide: COMBINEVALUES](https://dax.guide/combinevalues/) _(documentation)_

---

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