Excel 如何计算回报和累计。返回二维数组
我想计算二维数组中股票收益数据集的收益率和累积收益率 因此,在实践中,我尝试编写另一个子函数,它声明了一个包含return和cumulative return的二维数组,以完成相同的工作,正如下面所述的cumulative return函数。范围值可以直接指定给二维数组,反之亦然。我们不需要使用.Offset函数 这是股票收益(20个数字的数据“收益”): 我已经使用以下代码计算了累积回报:Excel 如何计算回报和累计。返回二维数组,excel,vba,Excel,Vba,我想计算二维数组中股票收益数据集的收益率和累积收益率 因此,在实践中,我尝试编写另一个子函数,它声明了一个包含return和cumulative return的二维数组,以完成相同的工作,正如下面所述的cumulative return函数。范围值可以直接指定给二维数组,反之亦然。我们不需要使用.Offset函数 这是股票收益(20个数字的数据“收益”): 我已经使用以下代码计算了累积回报: Sub ReadWrite() Dim dataRange As String, startRa
Sub ReadWrite()
Dim dataRange As String, startRange As String, outRange As String
Dim i As Integer, nData
Dim ret, cum_ret
Worksheets("Stock").Activate
Columns("C").ClearContents
dataRange = "B2:B22"
startRange = "B2"
outRange = "C2"
nData = Range(dataRange).Count
cum_ret = 1
For i = 1 To nDat
ret = Range(startRange).Offset(i - 1, 0)
cum_ret = (1 + ret) * cum_ret
Range(outRange).Offset(i - 1, 0) = cum_ret
Next i
End Sub
不清楚你在问什么。您的现有代码有问题吗?还是您正在要求他人为您编写一些新代码?我正在寻求帮助以编写新代码,这是一个关于我的家庭作业和库存的问题-我将键入整个作业问题,这可能会澄清:“3.(读写数据)“讲师4_FunctionProcedure.xlsm”模块“示例2”介绍从Excel电子表格读取退货数据、计算累计退货以及将结果写入电子表格的三个子过程。在本练习中,您将编写另一个子过程ReadWrite_Array2()并声明二维数组ret和cum_ret执行相同的任务。请注意,范围值可以直接分配给二维数组,反之亦然。因此,您不需要使用.Offset逐个单元格读取和写入数据。“在寻求帮助之前,最好先尝试,复习这篇关于提出家庭作业问题的帖子。。。
Sub ReadWrite()
Dim dataRange As String, startRange As String, outRange As String
Dim i As Integer, nData
Dim ret, cum_ret
Worksheets("Stock").Activate
Columns("C").ClearContents
dataRange = "B2:B22"
startRange = "B2"
outRange = "C2"
nData = Range(dataRange).Count
cum_ret = 1
For i = 1 To nDat
ret = Range(startRange).Offset(i - 1, 0)
cum_ret = (1 + ret) * cum_ret
Range(outRange).Offset(i - 1, 0) = cum_ret
Next i
End Sub