# ใช้สูตร Worksheet ของแผนภูมิในงานนำเสนอด้วย Python

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

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

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

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

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

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

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

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

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

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

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

- Logical constants
- Numerical constants
- String constants
- Error constants
- Arithmetic operators
- Comparison operators
- A1‑style cell references
- R1C1‑style cell references
- Predefined functions

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

## **เพิ่ม Chart Spreadsheet Formula ไปยังงานนำเสนอ**
แรกเริ่มให้เพิ่มแผนภูมิพร้อมตัวอย่างข้อมูลลงในสไลด์แรกของงานนำเสนอใหม่ด้วย 
[add_chart](https://reference.aspose.com/slides/th/python-net/aspose.slides/ishapecollection/)  
worksheet ของแผนภูมิจะถูกสร้างอัตโนมัติและสามารถเข้าถึงได้ด้วยคุณสมบัติ 
[**chart_data_workbook**](https://reference.aspose.com/slides/th/python-net/aspose.slides.charts/ichartdata/) :

```py
import aspose.slides.charts as charts
import aspose.slides as slides

with slides.Presentation() as presentation:
    chart = presentation.slides[0].shapes.add_chart(charts.ChartType.CLUSTERED_COLUMN, 150, 150, 500, 300)
    workbook = chart.chart_data.chart_data_workbook
    # ...
```

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

```py
    workbook.get_cell(0, "F2").value = -2.5
    workbook.get_cell(0, "G3").value = 6.3
    workbook.get_cell(0, "H4").value = 3
```

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

```py
    workbook.get_cell(0, "B2").formula = "F2+G3+H4+1"
```

*Note*: [**IChartDataCell.Formula**](https://reference.aspose.com/slides/th/python-net/aspose.slides.charts/ichartdatacell/) ใช้กำหนดการอ้างอิงเซลล์แบบ A1‑style  

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

```py
    workbook.get_cell(0, "C2").r1c1_formula = "R[1]C[4]/R[2]C[5]"
```

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

```py
    workbook.calculate_formulas()
    print(workbook.get_cell(0, "B2").value) # 7.8
    print(workbook.get_cell(0, "C2").value) # 2.1
```

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

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

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

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

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

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

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

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

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

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

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

|**การอ้างอิงเซลล์**|**ตัวอย่าง**| | |
| :- | :- | :- | :- |
||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** ใช้กับ worksheet ที่ทั้งแถวและคอลัมน์มีตัวเลขเป็นตัวระบุ สามารถใช้ได้ดังนี้ :

|**การอ้างอิงเซลล์**|**ตัวอย่าง**| | |
| :- | :- | :- | :- |
||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 date system)
- DAYS
- FIND
- FINDB
- IF
- INDEX (reference form)
- LOOKUP (vector form)
- MATCH (vector form)
- MAX
- SUM
- VLOOKUP

## **FAQ**

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

ใช่ Aspose.Slides รองรับ workbook ภายนอกเป็น [chart's data source](https://reference.aspose.com/slides/th/python-net/aspose.slides.charts/chartdatasourcetype/) ซึ่งทำให้คุณใช้งานสูตรจากไฟล์ XLSX ภายนอกได้

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

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