Class CalculationData

Class CalculationData

Namespace: Aspose.Cells
Assembly: Aspose.Cells.dll (25.2.0)

แสดงถึงข้อมูลที่จำเป็นเมื่อคำนวณฟังก์ชันหนึ่ง เช่น ชื่อฟังก์ชัน พารามิเตอร์ เป็นต้น

public class CalculationData

การสืบทอด

objectCalculationData

สมาชิกที่สืบทอด

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

หมายเหตุ

วัตถุทั้งหมดที่จัดเตรียมโดยคลาสนี้มีไว้เพื่อ “อ่าน” เท่านั้น ผู้ใช้ไม่ควรเปลี่ยนแปลงข้อมูลใด ๆ ใน Workbook ระหว่างกระบวนการคำนวณสูตร มิฉะนั้นผลลัพธ์ที่ไม่คาดคิดหรือข้อยกเว้นอาจเกิดขึ้น

คุณสมบัติ

CalculatedValue

รับหรือกำหนดค่าที่คำนวณสำหรับฟังก์ชันนี้

public object CalculatedValue { get; set; }

ค่า Property

object

หมายเหตุ

ผู้ใช้ควรกำหนดคุณสมบัตินี้ในเอนจินการคำนวณที่กำหนดเองของเขาสำหรับฟังก์ชันที่เอนจินรองรับ และค่าที่ตั้งจะถูกส่งคืนเมื่อเรียกดูคุณสมบัตินี้ในภายหลัง ค่าที่ตั้งอาจเป็นประเภทที่เป็นไปได้ของ Aspose.Cells.Cell.Value หรืออาร์เรย์ของค่าประเภทดังกล่าว หรือช่วง ชื่อ พื้นที่อ้างอิง การเรียกดูคุณสมบัตินี้ก่อนการตั้งค่าค่าจะทำให้ฟังก์ชันถูกคำนวณ โดยเอนจินการคำนวณเริ่มต้นของ Aspose.Cells และจากนั้นค่าที่คำนวณจะถูกส่งคืน (โดยทั่วไปควรเป็น #NAME? สำหรับฟังก์ชันที่ผู้ใช้กำหนดเอง)

Cell

รับวัตถุ Cell ที่ฟังก์ชันอยู่ในนั้น

public Cell Cell { get; }

ค่า Property

Cell

หมายเหตุ

เมื่อคำนวณสูตรโดยไม่ตั้งค่าให้กับเซลล์ เช่น โดย Aspose.Cells.Worksheet.CalculateFormula(System.String,Aspose.Cells.CalculationOptions) สูตรจะถูกคำนวณเหมือนกับว่ามันถูกตั้งค่าให้กับเซลล์ A1 ดังนั้นทั้ง Aspose.Cells.CalculationData.CellRow และ Aspose.Cells.CalculationData.CellColumn จะเป็น 0 อย่างไรก็ตาม เซลล์ A1 ในแผ่นงานอาจยังไม่ได้ถูกสร้างขึ้น ดังนั้นสำหรับสถานการณ์ประเภทนี้ คุณสมบัตินี้จะเป็น null

CellColumn

รับดัชนีคอลัมน์ของเซลล์ที่ฟังก์ชันอยู่ในนั้น

public int CellColumn { get; }

ค่า Property

int

CellRow

รับดัชนีแถวของเซลล์ที่ฟังก์ชันอยู่ในนั้น

public int CellRow { get; }

ค่า Property

int

FunctionName

รับชื่อฟังก์ชันที่ต้องการคำนวณ

public string FunctionName { get; }

ค่า Property

string

ParamCount

รับจำนวนพารามิเตอร์

public int ParamCount { get; }

ค่า Property

int

Workbook

รับวัตถุ Workbook ที่ฟังก์ชันอยู่ในนั้น

public Workbook Workbook { get; }

ค่า Property

Workbook

Worksheet

รับวัตถุ Worksheet ที่ฟังก์ชันอยู่ในนั้น

public Worksheet Worksheet { get; }

ค่า Property

Worksheet

วิธีการ

GetParamText(int)

รับข้อความตัวอักษรของพารามิเตอร์ที่ดัชนีที่กำหนด

public string GetParamText(int index)

พารามิเตอร์

index int

ดัชนีของพารามิเตอร์ (เริ่มต้นที่ 0)

คืนค่า

string

ข้อความตัวอักษรของพารามิเตอร์

GetParamValue(int)

รับวัตถุค่าที่แทนของพารามิเตอร์ที่ดัชนีที่กำหนด

public object GetParamValue(int index)

พารามิเตอร์

index int

ดัชนีของพารามิเตอร์ (เริ่มต้นที่ 0)

คืนค่า

object

ค่าที่คำนวณของพารามิเตอร์

หมายเหตุ

สำหรับพารามิเตอร์หนึ่ง:

ถ้ามันเป็นค่าธรรมดา จะส่งคืนค่าธรรมดาเอง;

ถ้ามันเป็นการอ้างอิง จะส่งคืนวัตถุ ReferredArea;

ถ้ามันอ้างอิงไปยังชุดข้อมูลที่มีค่าหลายค่า จะส่งคืนอาร์เรย์ของวัตถุ;

ถ้ามันเป็นประเภทของนิพจน์ที่ต้องคำนวณ จะคำนวณในโหมดค่า และโดยทั่วไปจะส่งคืนค่าหนึ่งเดียวตามเซลล์พื้นฐานปัจจุบัน ตัวอย่างเช่น ถ้าพารามิเตอร์หนึ่งของสูตร D2 คือ A:A+B:B จะคำนวณ A2+B2 และส่งคืน อย่างไรก็ตาม หากพารามิเตอร์นี้ถูกกำหนดเป็นโหมดอาร์เรย์ (โดย Aspose.Cells.Workbook.UpdateCustomFunctionDefinition(Aspose.Cells.CustomFunctionDefinition) หรือ Aspose.Cells.FormulaParseOptions.CustomFunctionDefinition) จะส่งคืนอาร์เรย์ (object[][]) ซึ่งมีรายการคือ A1+B1,A2+B2,...

GetParamValueInArrayMode(int, int, int)

รับค่า(s) ของพารามิเตอร์ที่ดัชนีที่กำหนด ถ้าพารามิเตอร์เป็นประเภทของนิพจน์ที่ต้องคำนวณ จะคำนวณในโหมดอาร์เรย์

public object[][] GetParamValueInArrayMode(int index, int maxRowCount, int maxColumnCount)

พารามิเตอร์

index int

ดัชนีของพารามิเตอร์ (เริ่มต้นที่ 0)

maxRowCount int

ขีดจำกัดจำนวนแถวสำหรับอาร์เรย์ที่ส่งคืน ถ้ามันไม่เป็นบวกหรือมากกว่าจำนวนแถวจริง จะใช้จำนวนแถวจริง

maxColumnCount int

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

คืนค่า

object[][]

อาร์เรย์ที่มีรายการทั้งหมดที่แสดงโดยพารามิเตอร์ที่กำหนด

หมายเหตุ

สำหรับนิพจน์ที่ต้องคำนวณ โดยใช้ A:A+B:B เป็นตัวอย่าง: ในโหมดค่า จะคำนวณเป็นค่าหนึ่งเดียวตามเซลล์พื้นฐานปัจจุบัน แต่ในโหมดอาร์เรย์ จะคำนวณค่าทั้งหมดของ A1+B1,A2+B2,A3+B3,… และใช้เพื่อสร้างอาร์เรย์ที่ส่งคืน และสำหรับสถานการณ์ประเภทนี้ จะดีกว่าที่จะกำหนดขีดจำกัดสำหรับจำนวนแถว/คอลัมน์ (เช่น ตาม Aspose.Cells.Cells.MaxDataRow และ Aspose.Cells.Cells.MaxDataColumn) มิฉะนั้น อาร์เรย์ขนาดใหญ่ที่ส่งคืนอาจเพิ่มค่าใช้จ่ายด้านหน่วยความจำด้วยข้อมูลที่ไม่จำเป็นจำนวนมาก

 แบบไทย