FarPoint.CalcEngine Assembly > FarPoint.CalcEngine Namespace > CalcReference Class : GetValue Method |
'Declaration Public MustOverride Function GetValue( _ ByVal row As Integer, _ ByVal column As Integer _ ) As Object
'Usage Dim instance As CalcReference Dim row As Integer Dim column As Integer Dim value As Object value = instance.GetValue(row, column)
public class Cube : FarPoint.CalcEngine.FunctionInfo { public override string Name { get { return "Cube"; } } public override int MaxArgs { get { return 1; } } public override int MinArgs { get { return 1; } } public override bool AcceptsReference(int i) { if (i == 0) { return true; } else { return false; } } public override object Evaluate(object[] args) { double total; FarPoint.CalcEngine.CalcReference cellref; object value; if (args[0] is FarPoint.CalcEngine.CalcArray) { return FarPoint.CalcEngine.CalcError.Value; } if (args[0] is FarPoint.CalcEngine.CalcReference) { cellref = ((FarPoint.CalcEngine.CalcReference)(args[0])); if (cellref.ColumnCount > 1 | cellref.RowCount > 1) { return FarPoint.CalcEngine.CalcError.Value; } value = cellref.GetValue(cellref.Row, cellref.Column); try { total = Math.Pow(FarPoint.CalcEngine.CalcConvert.ToDouble(args[0]), 3); } catch { } } else { try { total = Math.Pow(FarPoint.CalcEngine.CalcConvert.ToDouble(args[0]), 3); } catch { } } return total; } }
Public Class Cube Inherits FarPoint.CalcEngine.FunctionInfo Public Overrides ReadOnly Property Name() As String Get Return "Cube" End Get End Property Public Overrides ReadOnly Property MaxArgs() As Integer Get Return 1 End Get End Property Public Overrides ReadOnly Property MinArgs() As Integer Get Return 1 End Get End Property Public Overrides Function AcceptsReference(ByVal i As Integer) As Boolean If i = 0 Then Return True Else Return False End If End Function Public Overrides Function Evaluate(ByVal args() As Object) As Object Dim total As Double Dim cellref As FarPoint.CalcEngine.CalcReference Dim value As Object If TypeOf args(0) Is FarPoint.CalcEngine.CalcArray Then Return FarPoint.CalcEngine.CalcError.Value If TypeOf args(0) Is FarPoint.CalcEngine.CalcReference Then cellref = CType(args(0), FarPoint.CalcEngine.CalcReference) If cellref.ColumnCount > 1 Or cellref.RowCount > 1 Then Return FarPoint.CalcEngine.CalcError.Value value = cellref.GetValue(cellref.Row, cellref.Column) Try total = FarPoint.CalcEngine.CalcConvert.ToDouble(value) ^ 3 Catch End Try Else Try total = FarPoint.CalcEngine.CalcConvert.ToDouble(args(0)) ^ 3 Catch End Try End If Return total End Function End Class
Target Platforms: Windows 2000 Professional (SP4), Windows 2000 Server, Windows 2003 Server (SP1), Windows 2008, Windows XP (SP2), Windows Vista, Windows 7, Windows 8