Class AbstractCalculationMonitor
Namespace: Aspose.Cells
Assembly: Aspose.Cells.dll (25.2.0)
ติดตามผู้ใช้เพื่อติดตามความก้าวหน้าของการคำนวณสูตร
public abstract class AbstractCalculationMonitor
การสืบทอด
object ← AbstractCalculationMonitor
สมาชิกที่สืบทอด
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
ตัวอย่าง
Workbook wb = new Workbook("calc.xlsx");
CalculationOptions opts = new CalculationOptions();
opts.CalculationMonitor = new MyCalculationMonitor();
wb.CalculateFormula(opts);
class MyCalculationMonitor : AbstractCalculationMonitor
{
public override void BeforeCalculate(int sheetIndex, int rowIndex, int colIndex)
{
if(sheetIndex!=0 || rowIndex!=0 || colIndex!=0)
{
return;
}
Console.WriteLine("เซลล์ A1 จะถูกคำนวณ.");
}
}
ตัวสร้าง
AbstractCalculationMonitor()
protected AbstractCalculationMonitor()
คุณสมบัติ
CalculatedValue
รับค่าที่คำนวณใหม่ของเซลล์ ควรใช้เฉพาะใน Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32)
public object CalculatedValue { get; }
ค่าของคุณสมบัติ
OriginalValue
รับค่าต้นฉบับของเซลล์ที่คำนวณ ควรใช้เฉพาะใน Aspose.Cells.AbstractCalculationMonitor.BeforeCalculate(System.Int32,System.Int32,System.Int32) และ Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32)
public object OriginalValue { get; }
ค่าของคุณสมบัติ
ValueChanged
ค่าของเซลล์ได้ถูกเปลี่ยนแปลงหลังจากการคำนวณหรือไม่ ควรใช้เฉพาะใน Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32)
public bool ValueChanged { get; }
ค่าของคุณสมบัติ
วิธีการ
AfterCalculate(int, int, int)
ดำเนินการวิธีนี้เพื่อทำธุรกิจหลังจากที่เซลล์หนึ่งเซลล์ถูกคำนวณ
public virtual void AfterCalculate(int sheetIndex, int rowIndex, int colIndex)
พารามิเตอร์
sheetIndex
int
ดัชนีของแผ่นงานที่เซลล์อยู่
rowIndex
int
ดัชนีแถวของเซลล์
colIndex
int
ดัชนีคอลัมน์ของเซลล์
BeforeCalculate(int, int, int)
ดำเนินการวิธีนี้เพื่อทำธุรกิจก่อนที่จะคำนวณเซลล์หนึ่งเซลล์
public virtual void BeforeCalculate(int sheetIndex, int rowIndex, int colIndex)
พารามิเตอร์
sheetIndex
int
ดัชนีของแผ่นงานที่เซลล์อยู่
rowIndex
int
ดัชนีแถวของเซลล์
colIndex
int
ดัชนีคอลัมน์ของเซลล์
Interrupt(string)
protected void Interrupt(string msg)
พารามิเตอร์
msg
string
OnCircular(IEnumerator)
ดำเนินการวิธีนี้เพื่อทำธุรกิจเมื่อคำนวณสูตรที่มีการอ้างอิงแบบวงกลม
public virtual bool OnCircular(IEnumerator circularCellsData)
พารามิเตอร์
circularCellsData
IEnumerator
IEnumerator ที่มีรายการ Aspose.Cells.CalculationCell แทนเซลล์ที่ขึ้นอยู่กับการอ้างอิงแบบวงกลม
คืนค่า
ว่าเครื่องคำนวณสูตรจำเป็นต้องคำนวณเซลล์เหล่านั้นในวงกลมหลังจากการเรียกนี้หรือไม่ True เพื่อให้เครื่องคำนวณสูตรดำเนินการคำนวณสำหรับพวกเขาต่อไป False เพื่อให้เครื่องคำนวณสูตรทำเครื่องหมายเซลล์เหล่านั้นว่าได้รับการคำนวณแล้ว
หมายเหตุ
ในการดำเนินการผู้ใช้ยังสามารถตั้งค่าค่าที่คาดหวังเป็นผลลัพธ์ที่คำนวณสำหรับบางส่วน/ทั้งหมดของเซลล์เหล่านั้นเพื่อให้เครื่องคำนวณสูตรไม่คำนวณพวกเขาแบบวนซ้ำ