在Excel中为X行创建动态范围

时间:2015-08-18 18:44:51

标签: database excel vba

在Excel VBA中,我构建了一个在数据点之间进行插值的函数。语法是= Interpolate(引用单元格,引用表)。

我有一张看起来像这样的表:

MarkRun   MaturityDate  ZeroRate    DiscountFactor

5-May-15    5-May-15    0.006999933     1
5-May-15    6-May-15    0.0069999329    0.999980822
5-May-15    5-Jun-15    0.008996562     0.9992362
5-May-15    6-Jul-15    0.008993128     0.998473566
5-May-15    4-Aug-15    0.006344264     0.99830152
5-May-15    5-Nov-15    0.006912941     0.996521185
5-May-15    5-May-16    0.007104633     0.992901219
               ...           ...                 ...

每个MarkRun日期代表一条明显的曲线。每64个数据点,下一个MarkRun日期开始。在第一个新的日期,DiscountFactor等于1.日期从5月5日 - 5月15日到11日 - 8月 - 15日

我想为MarkRun和MaturityDate之间每个MarkRun日期有一个月的每个实例插值。目标是创建一个新表:

MarkRun         MaturityRate      ZeroRate 
5-May-15        5-Aug-15          0.006744264
6-May-15        6-Aug-15
7-May-15        7-Aug-15
8-May-15        8-Aug-15

为此,我需要仅对与每个MarkRun日期对应的行进行插值。

因此,对于第二个表中的第一行,ZeroRate是从第一个表的前64行的引用表中插入的。第二个表中的第二行是从第一个表中接下来的64行插入的,依此类推。

如何指定插值这些值的范围?到目前为止,我已经:

=Interpolate(J2,OFFSET($A$2,0,3,64,2))其中J2是参考单元格。如何推断这个以填充第二个表的其余部分?

感谢。

0 个答案:

没有答案