# ใช้สูตรแผ่นงานแผนภูมิในงานนำเสนอด้วย .NET

> ใช้สูตรแบบ Excel ใน Aspose.Slides สำหรับแผ่นงานแผนภูมิ .NET และอัตโนมัติรายงานในไฟล์ PPT และ PPTX

Source: https://docs.aspose.com/slides/th/net/chart-worksheet-formulas/
Updated: 2026-06-13

## **ภาพรวม**

แผ่นงานแผนภูมิคือแหล่งข้อมูลที่อยู่ด้านหลังแผนภูมิในงานนำเสนอ มันเก็บชื่อหมวดหมู่และชื่อชุดข้อมูลพร้อมกับค่าตัวเลขที่แผนภูมิแสดงผล ใน Aspose.Slides แผ่นงานนี้สามารถเข้าถึงได้ผ่าน workbook ข้อมูลแผนภูมิ ซึ่งให้คุณทำงานกับข้อมูลแผนภูมิแบบโปรแกรมได้

บทความนี้อธิบายวิธีใช้สูตรในแผ่นงานแผนภูมิเพื่อให้ค่าของเซลล์คำนวณและอัปเดตโดยอัตโนมัติ แทนการใส่ค่าด้วยตนเอง โดยแสดงวิธีกำหนดสูตร ใช้การอ้างอิงแบบ A1‑style และ R1C1‑style คำนวณสูตรใน workbook ใหม่ และทำงานกับค่าคงที่ ตัวดำเนินการ การอ้างอิงเซลล์ และฟังก์ชันที่กำหนดล่วงหน้าที่รองรับสำหรับแผ่นงานแผนภูมิในงานนำเสนอ

## **เกี่ยวกับสูตรสเปรดชีตแผนภูมิในงานนำเสนอ**
**สเปรดชีตแผนภูมิ** (หรือแผ่นงานแผนภูมิ) ในงานนำเสนอคือแหล่งข้อมูลของแผนภูมิ สเปรดชีตแผนภูมิมีข้อมูลที่แสดงบนแผนภูมิในรูปแบบกราฟิก เมื่อคุณสร้างแผนภูมิใน PowerPoint แผ่นงานที่เชื่อมโยงกับแผนภูมินี้จะถูกสร้างโดยอัตโนมัติเช่นกัน แผ่นงานแผนภูมิถูกสร้างสำหรับแผนภูมิทุกประเภท: แผนภูมิเส้น, แผนภูมิคอลัมน์, แผนภูมิ Sunburst, แผนภูมิวงกลม ฯลฯ เพื่อดูสเปรดชีตแผนภูมิใน PowerPoint คุณควรดับเบิล‑คลิกที่แผนภูมิ:

![todo:image_alt_text](chart-worksheet-formulas_1.png)



สเปรดชีตแผนภูมิประกอบด้วยชื่อขององค์ประกอบแผนภูมิ (ชื่อหมวดหมู่: *Category1*, ชื่อชุดข้อมูล) และตารางข้อมูลตัวเลขที่สอดคล้องกับหมวดหมู่และชุดข้อมูลเหล่านั้น โดยค่าเริ่มต้นเมื่อคุณสร้างแผนภูมิใหม่ – ข้อมูลสเปรดชีตแผนภูมิจะตั้งค่าเป็นค่าดีฟอลต์ จากนั้นคุณสามารถเปลี่ยนแปลงข้อมูลสเปรดชีตในแผ่นงานด้วยตนเองได้

โดยทั่วไปแผนภูมิแทนข้อมูลที่ซับซ้อน (เช่น นักวิเคราะห์การเงิน, นักวิทยาศาสตร์) ที่มีเซลล์คำนวณจากค่าในเซลล์อื่นหรือจากข้อมูลไดนามิกอื่น การคำนวณค่าของเซลล์ด้วยตนเองและทำฮาร์ด‑โค้ดลงในเซลล์ทำให้ยากต่อการเปลี่ยนแปลงในภายหลัง หากคุณเปลี่ยนค่าของเซลล์หนึ่ง เซลล์ที่ขึ้นกับมันทั้งหมดก็ต้องอัปเดตด้วย นอกจากนี้ข้อมูลตารางอาจพึ่งพาข้อมูลจากตารางอื่น ๆ ทำให้เกิดแผนผังข้อมูลงานนำเสนอที่ซับซ้อนซึ่งต้องอัปเดตอย่างง่ายและยืดหยุ่น

**สูตรสเปรดชีตแผนภูมิ** ในงานนำเสนอคือ นิพจน์ที่คำนวณและอัปเดตข้อมูลสเปรดชีตแผนภูมิโดยอัตโนมัติ สูตรสเปรดชีตกำหนดตรรกะการคำนวณข้อมูลสำหรับเซลล์หรือชุดของเซลล์ สูตรสเปรดชีตอาจเป็นสูตรคณิตศาสตร์หรือสูตรตรรกะ โดยใช้: การอ้างอิงเซลล์, ฟังก์ชันคณิตศาสตร์, ตัวดำเนินการตรรกะ, ตัวดำเนินการคณิตศาสตร์, ฟังก์ชันแปลงค่า, ค่าคงที่สตริง ฯลฯ นิยามของสูตรจะถูกเขียนลงในเซลล์และเซลล์นั้นจึงไม่ใช่ค่าธรรมดา สูตรสเปรดชีตคำนวณค่าและส่งค่ากลับ จากนั้นค่านั้นจะถูกกำหนดให้กับเซลล์ สูตรสเปรดชีตแผนภูมิในงานนำเสนอจริง ๆ แล้วเหมือนสูตรใน Excel และสนับสนุนฟังก์ชัน, ตัวดำเนินการและค่าคงที่เริ่มต้นเดียวกันสำหรับการใช้งาน

ใน [**Aspose.Slides**](https://products.aspose.com/slides/th/net/) สเปรดชีตแผนภูมิแสดงด้วยคุณสมบัติ 
[**Chart.ChartData.ChartDataWorkbook**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdata/properties/chartdataworkbook) ของ 
[**IChartDataWorkbook**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdataworkbook) 
สูตรสเปรดชีตสามารถกำหนดและเปลี่ยนแปลงได้ด้วยคุณสมบัติ 
[**IChartDataCell.Formula**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdatacell/properties/formula) 
ฟังก์ชันต่อไปนี้ได้รับการสนับสนุนสำหรับสูตรใน Aspose.Slides:

- ค่าคงที่ตรรกะ
- ค่าคงที่เชิงตัวเลข
- ค่าคงที่สตริง
- ค่าคงที่ข้อผิดพลาด
- ตัวดำเนินการคณิตศาสตร์
- ตัวดำเนินการเปรียบเทียบ
- การอ้างอิงเซลล์แบบ A1‑style
- การอ้างอิงเซลล์แบบ R1C1‑style
- ฟังก์ชันที่กำหนดล่วงหน้า



โดยทั่วไปสเปรดชีตจะเก็บค่าของสูตรที่คำนวณล่าสุด หากหลังจากโหลดงานนำเสนอแล้วข้อมูลแผนภูมิไม่ได้เปลี่ยนแปลง – คุณสมบัติ **IChartDataCell.Value** จะคืนค่าที่เก็บไว้เมื่ออ่านค่า แต่หากข้อมูลสเปรดชีตมีการเปลี่ยนแปลงขณะอ่าน **ChartDataCell.Value** จะโยน **CellUnsupportedDataException** สำหรับสูตรที่ไม่รองรับ สาเหตุคือเมื่อสูตรถูกพาร์สสำเร็จ การพึ่งพาเซลล์จะถูกกำหนดและความถูกต้องของค่าล่าสุดจะถูกยืนยัน แต่หากสูตรไม่สามารถพาร์สได้ ความถูกต้องของค่าเซลล์ไม่สามารถรับประกันได้

## **เพิ่มสูตรสเปรดชีตแผนภูมิลงในงานนำเสนอ**
แรกเริ่มให้เพิ่มแผนภูมิพร้อมข้อมูลตัวอย่างลงในสไลด์แรกของงานนำเสนอใหม่ด้วย 
[IShapeCollection.Shapes.AddChart](https://reference.aspose.com/slides/th/net/aspose.slides.ishapecollection/addchart/methods/1) 
แผ่นงานของแผนภูมิจะถูกสร้างอัตโนมัติและสามารถเข้าถึงได้ด้วยคุณสมบัติ 
[**Chart.ChartData.ChartDataWorkbook**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdata/properties/chartdataworkbook) :

``` csharp

using (var presentation = new Presentation())

{

    IChart chart = presentation.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 150, 150, 500, 300);

    IChartDataWorkbook workbook = chart.ChartData.ChartDataWorkbook;

    // ...

}

```

ให้เขียนค่าบางอย่างลงในเซลล์ด้วยคุณสมบัติ 
[**IChartDataCell.Value**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdatacell/properties/value) 
ของชนิด **Object** ซึ่งหมายความว่าคุณสามารถกำหนดค่าใด ๆ ให้กับคุณสมบัตินี้ได้ :

``` csharp

workbook.GetCell(0, "F2").Value = -2.5;

workbook.GetCell(0, "G3").Value = 6.3;

workbook.GetCell(0, "H4").Value = 3;

```

ต่อไปเพื่อเขียนสูตรลงในเซลล์ คุณสามารถใช้คุณสมบัติ 
[**IChartDataCell.Formula**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdatacell/properties/formula) :

``` csharp
workbook.GetCell(0, "B2").Formula = "F2+G3+H4+1";
```

*หมายเหตุ*: คุณสมบัติ [**IChartDataCell.Formula**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdatacell/properties/formula) ใช้ตั้งการอ้างอิงเซลล์แบบ A1‑style .

เพื่อกำหนดการอ้างอิงเซลล์ [R1C1Formula](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdatacell/properties/r1c1formula) ให้ใช้คุณสมบัติ [**IChartDataCell.R1C1Formula**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/ichartdatacell/properties/r1c1formula) :

``` csharp
workbook.GetCell(0, "C2").R1C1Formula = "R[1]C[4]/R[2]C[5]";
```

จากนั้นใช้เมธอด [**IChartDataWorkbook.CalculateFormulas**](https://reference.aspose.com/slides/th/net/aspose.slides.charts/chartdataworkbook/methods/calculateformulas) เพื่อคำนวณสูตรทั้งหมดภายใน workbook และอัปเดตค่าของเซลล์ที่สอดคล้องกัน :

``` csharp
workbook.CalculateFormulas();

object value1 = workbook.GetCell(0, "B2"); // 7.8

object value2 = workbook.GetCell(0, "C2"); // 2.1

```

## **ค่าคงที่ตรรกะ**
คุณสามารถใช้ค่าคงที่ตรรกะเช่น *FALSE* และ *TRUE* ในสูตรของเซลล์ได้ :

## **ค่าคงที่เชิงตัวเลข**
สามารถใช้ตัวเลขในรูปแบบทั่วไปหรือแบบวิทยาศาสตร์เพื่อสร้างสูตรสเปรดชีตแผนภูมิได้ :

## **ค่าคงที่สตริง**
ค่าคงที่สตริง (หรือ literal) คือค่าที่ใช้ตามที่เป็นและไม่เปลี่ยนแปลง ค่าคงที่สตริงอาจเป็น: วันที่, ข้อความ, ตัวเลข ฯลฯ :

## **ค่าคงที่ข้อผิดพลาด**
บางครั้งสูตรไม่สามารถคำนวณผลลัพธ์ได้ ในกรณีนั้นรหัสข้อผิดพลาดจะแสดงในเซลล์แทนค่าของมัน แต่ละประเภทของข้อผิดพลาดมีรหัสเฉพาะ:

- #DIV/0! – สูตรพยายามหารด้วยศูนย์
- #GETTING_DATA – อาจแสดงในเซลล์ขณะที่ค่ากำลังคำนวณอยู่
- #N/A – ข้อมูลหายหรือไม่มีอยู่ ตัวอย่างเช่น เซลล์ที่ใช้ในสูตรว่างเปล่า, มีอักขระช่องว่างเพิ่มเติม, พิมพ์ผิด ฯลฯ
- #NAME? – ไม่พบเซลล์หรือวัตถุสูตรอื่นตามชื่อ
- #NULL! – เกิดเมื่อสูตรมีข้อผิดพลาด เช่น (,) หรือใช้ช่องว่างแทนเครื่องหมายโคลอน (:)
- #NUM! – ตัวเลขในสูตรอาจไม่ถูกต้อง, ยาวเกินไปหรือสั้นเกินไป ฯลฯ
- #REF! – การอ้างอิงเซลล์ไม่ถูกต้อง
- #VALUE! – ชนิดค่าที่ไม่คาดคิด เช่น ค่าสตริงถูกตั้งให้กับเซลล์ตัวเลข

## **ตัวดำเนินการคณิตศาสตร์**
คุณสามารถใช้ตัวดำเนินการคณิตศาสตร์ทั้งหมดในสูตรแผ่นงานแผนภูมิได้ :

|**ตัวดำเนินการ**|**ความหมาย**|**ตัวอย่าง**|
| :- | :- | :- |
|+ (เครื่องหมายบวก)|การบวกหรือบวกเชิงยูเนอรี|2 + 3|
|- (เครื่องหมายลบ)|การลบหรือการปฏิเสธ|2 - 3<br>-3|
|* (ดอกจัน)|การคูณ|2 * 3|
|/ (เส้นทแยง)|การหาร|2 / 3|
|% (เปอร์เซ็นต์)|เปอร์เซ็นต์|30%|
|^ (เครื่องหมาย caret)|ยกกำลัง|2 ^ 3|

*หมายเหตุ*: หากต้องการเปลี่ยนลำดับการประเมิน ให้ใส่วงเล็บล้อมส่วนของสูตรที่ต้องคำนวณก่อน

## **ตัวดำเนินการเปรียบเทียบ**
คุณสามารถเปรียบเทียบค่าของเซลล์ด้วยตัวดำเนินการเปรียบเทียบได้ เมื่อเปรียบเทียบสองค่าโดยใช้ตัวดำเนินการเหล่านี้ ผลลัพธ์จะเป็นค่าตรรกะ *TRUE* หรือ FALSE :

|**ตัวดำเนินการ**|**ความหมาย**|**ตัวอย่าง**|
| :- | :- | :- |
|= (เครื่องหมายเท่ากับ)|เท่ากับ|A2 = 3|
|<> (เครื่องหมายไม่เท่ากับ)|ไม่เท่ากับ|A2 <> 3|
|> (เครื่องหมายมากกว่า)|มากกว่า|A2 > 3|
|>= (เครื่องหมายมากกว่าหรือเท่ากับ)|มากกว่าหรือเท่ากับ|A2 >= 3|
|< (เครื่องหมายน้อยกว่า)|น้อยกว่า|A2 < 3|
|<= (เครื่องหมายน้อยกว่าหรือเท่ากับ)|น้อยกว่าหรือเท่ากับ|A2 <= 3|

## **การอ้างอิงเซลล์แบบ A1‑style**
**การอ้างอิงเซลล์แบบ A1‑style** ใช้กับแผ่นงานที่คอลัมน์มีตัวอักษรระบุ (เช่น "*A*") และแถวมีตัวเลขระบุ (เช่น "*1*") การอ้างอิงแบบ A1‑style สามารถใช้ได้ดังนี้ :

|**การอ้างอิงเซลล์**|**ตัวอย่าง**| | |
| :- | :- | :- | :- |
| |Absolute|Relative|Mixed|
|Cell|$A$2|A2|<p>A$2</p><p>$A2</p>|
|Row|$2:$2|2:2|-|
|Column|$A:$A|A:A|-|
|Range|$A$2:$C$4|A2:C4|<p>$A$2:C4</p><p>A$2:$C4</p>|

ต่อไปเป็นตัวอย่างการใช้การอ้างอิงเซลล์แบบ A1‑style ในสูตร :

## **การอ้างอิงเซลล์แบบ R1C1‑style**
**การอ้างอิงเซลล์แบบ R1C1‑style** ใช้กับแผ่นงานที่ทั้งแถวและคอลัมน์มีตัวเลขระบุ การอ้างอิงแบบ R1C1‑style สามารถใช้ได้ดังนี้ :

|**การอ้างอิงเซลล์**|**ตัวอย่าง**| | |
| :- | :- | :- | :- |
| |Absolute|Relative|Mixed|
|Cell|R2C3|R[2]C[3]|R2C[3]<br>R[2]C3|
|Row|R2|R[2]|-|
|Column|C3|C[3]|-|
|Range|R2C3:R5C7|R[2]C[3]:R[5]C[7]|R2C3:R[5]C[7]<br>R[2]C3:R5C[7]|

ต่อไปเป็นตัวอย่างการใช้การอ้างอิงเซลล์แบบ R1C1‑style ในสูตร :

## **ฟังก์ชันที่กำหนดล่วงหน้า**
มีฟังก์ชันที่กำหนดล่วงหน้า ซึ่งสามารถใช้ในสูตรเพื่อทำให้การใช้งานง่ายขึ้น ฟังก์ชันเหล่านี้สรุปการทำงานที่ใช้บ่อยที่สุด เช่น :

- ABS
- AVERAGE
- CEILING
- CHOOSE
- CONCAT
- CONCATENATE
- DATE (ระบบวันที่ 1900)
- DAYS
- FIND
- FINDB
- IF
- INDEX (รูปแบบอ้างอิง)
- LOOKUP (รูปแบบเวกเตอร์)
- MATCH (รูปแบบเวกเตอร์)
- MAX
- SUM
- VLOOKUP

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

**ไฟล์ Excel ภายนอกรองรับเป็นแหล่งข้อมูลสำหรับแผนภูมิที่มีสูตรหรือไม่?**

ใช่ Aspose.Slides รองรับเวิร์กบุ๊กภายนอกเป็น [แหล่งข้อมูลของแผนภูมิ](https://reference.aspose.com/slides/th/net/aspose.slides.charts/chartdatasourcetype/) ซึ่งทำให้คุณใช้สูตรจากไฟล์ XLSX นอกงานนำเสนอได้

**สูตรแผนภูมิสามารถอ้างอิงชีตภายในเวิร์กบุ๊กเดียวกันโดยใช้ชื่อชีตได้หรือไม่?**

ได้ สูตรทำตามโมเดลการอ้างอิงของ Excel มาตรฐาน ดังนั้นคุณสามารถอ้างอิงชีตอื่นในเวิร์กบุ๊กเดียวกันหรือเวิร์กบุ๊กภายนอกได้ สำหรับการอ้างอิงภายนอก ให้รวมพาธและชื่อเวิร์กบุ๊กโดยใช้ไวยากรณ์ของ Excel
