Excel构造函数的用法
大约 3 分钟
Excel构造函数的用法
MCP Excel函数是一个面向对象的使用方式,也就是如果你需要用到收益率曲线、以及收益率曲线相关的函数,需要通过Excel函数构建一个收益率曲线对象(McpYieldCurve),然后再使用具体的方法,如:YieldCurveGetZeroRate(...)方法来从曲线上获取对应日期零息利率。
并且,由于收益率曲线构造方式存在多种形式,所以,构造方法同时支持重载,也就是支持不同的参数组合。这些参数组合的使用方式如下:
构造函数形式
=FunctionName(args1, args2, args3, args4, args5, fmt='VP')
构造参数,允许用户通过多个数组(args1
到 args5
)传递参数,并通过 fmt
参数指定每个数组的数据格式。以下是对参数和 fmt
的详细解释:
1. 参数解释
args1
, args2
, args3
, args4
, args5
- 这些是 5 个数组,用于存放构造对象所需的参数及其对应的值。
- 在函数实现中,这 5 个数组合并成一个列表使用。
- 灵活性:
- 用户可以将参数放在任意一个数组中,未使用的数组可以置空。
- 例如,如果只需要 3 个参数,可以将它们放在
args1
、args2
和args3
中,args4
和args5
置空。
fmt
fmt
参数用于指定每个数组(args1
到args5
)的数据格式。fmt
支持用|
分割,分别对应args1
到args5
。- 每个分割出来的值支持以下格式:
MT
:表示矩阵参数数据。- 组合格式:
- 第 1 位:
V
:表示一行一个属性/数据(垂直排列)。H
:表示一列一个属性/数据(水平排列)。
- 第 2 位:
P
:表示参数。D
:表示数据。F
和V
:表示字段(Field)和值(Value)。
- 第 1 位:
2. fmt
参数示例
以下是一些 fmt
参数的示例及其含义:
示例 1
VH|MT|VP|HD|VF
- 解释:
args1
:VH
(垂直排列,参数和数据混合)。args2
:MT
(矩阵参数数据)。args3
:VP
(垂直排列,参数)。args4
:HD
(水平排列,数据)。args5
:VF
(垂直排列,字段和值)。
示例 2
VP|HD|MT||
- 解释:
args1
:VP
(垂直排列,参数)。args2
:HD
(水平排列,数据)。args3
:MT
(矩阵参数数据)。args4
和args5
:未使用(置空)。
示例 3
MT|VP|HD|VF|
- 解释:
args1
:MT
(矩阵参数数据)。args2
:VP
(垂直排列,参数)。args3
:HD
(水平排列,数据)。args4
:VF
(垂直排列,字段和值)。args5
:未使用(置空)。
3. 使用场景
场景 1:构造对象
假设需要构造一个对象,参数包括:
- 名称(Name):垂直排列的参数。
- 价格(Price):水平排列的数据。
- 矩阵数据(Matrix):矩阵参数数据。
fmt
可以设置为:
VP|HD|MT||
args1
:VP
(垂直排列,参数),存放名称。args2
:HD
(水平排列,数据),存放价格。args3
:MT
(矩阵参数数据),存放矩阵数据。args4
和args5
:置空。
场景 2:字段和值
假设需要传递字段和值:
- 字段(Field):垂直排列。
- 值(Value):垂直排列。
fmt
可以设置为:
VF||||
args1
:VF
(垂直排列,字段和值)。args2
到args5
:置空。
4. 实现逻辑
在函数实现中,可以按照以下步骤处理参数:
- 解析
fmt
参数:- 用
|
分割fmt
,得到每个args
的格式。
- 用
- 合并
args1
到args5
:- 将 5 个数组合并成一个列表。
- 根据
fmt
解析数据:- 对每个
args
,根据其格式解析数据。 - 例如,
VP
表示垂直排列的参数,HD
表示水平排列的数据。
- 对每个
- 构造对象:
- 使用解析后的数据构造对象。
5. 总结
args1
到args5
:5 个数组,用于存放参数和数据,未使用的数组可以置空。fmt
:指定每个数组的格式,支持MT
、VP
、HD
、VF
等组合。- 灵活性:用户可以根据需要将参数放在任意数组中,并通过
fmt
指定格式。