PowerTools SPREAD for Windows Forms 10.0J
AddCustomFunction メソッド (SheetView)


追加するカスタム関数のFunctionInfoオブジェクト
ユーザー定義のカスタム関数(FunctionInfoオブジェクト)をモデルに追加して、数式で使用できるようにします。
構文
'Declaration
 
Public Sub AddCustomFunction( _
   ByVal functionInfo As FunctionInfo _
) 
'使用法
 
Dim instance As SheetView
Dim functionInfo As FunctionInfo
 
instance.AddCustomFunction(functionInfo)
public void AddCustomFunction( 
   FunctionInfo functionInfo
)

パラメータ

functionInfo
追加するカスタム関数のFunctionInfoオブジェクト
解説

カスタム関数の使用の詳細については、「関数リファレンス」を参照してください。

public class CubeFunctionInfo : FarPoint.CalcEngine.FunctionInfo
    {
      public override string Name { get { return "CUBE"; } }
      public override int MinArgs { get { return 1; } }
      public override int MaxArgs { get { return 1; } }
      public override object Evaluate (object[] args)
      {
        double num = FarPoint.CalcEngine.CalcConvert.ToDouble(args[0]);
        return num * num * num;
      }
    }

FarPoint.Win.Spread.SheetView sv;
sv = fpSpread1.ActiveSheet;
sv.AddCustomFunction((new CubeFunctionInfo));
sv.SetFormula(1, 1, "CUBE(4)");
Public Class CubeFunctionInfo
   Inherits FarPoint.CalcEngine.FunctionInfo

   Public Overrides ReadOnly Property Name() As String
        Get
             Return "CUBE"
        End Get
   End Property

   Public Overrides ReadOnly Property MinArgs() As Integer
        Get
             Return 1
        End Get
   End Property

   Public Overrides ReadOnly Property MaxArgs() As Integer
        Get
             Return 1
        End Get
   End Property

   Public Overrides Function Evaluate(ByVal args() As Object) As Object
        Dim num As Double = FarPoint.CalcEngine.CalcConvert.ToDouble(args(0))
        Return num * num * num
   End Function
End Class

Dim sv As FarPoint.Win.Spread.SheetView
sv = FpSpread1.ActiveSheet
sv.AddCustomFunction((New CubeFunctionInfo))
sv.SetFormula(1, 1, "CUBE(4)")
参照

SheetView クラス
SheetView メンバ
GetCustomFunction メソッド
RemoveCustomFunction メソッド
カスタム関数(関数リファレンス)

開発者ガイド

カスタム関数の作成

 

 


© 2004-2017, GrapeCity inc. All rights reserved.