【发布时间】:2019-03-13 15:28:01
【问题描述】:
谁能告诉我一个 VBA 函数或按钮,它只会按季度计算季度回报(即第一季度回报基于 1 月至 3 月的回报),而不会出现重叠观察。
我现在使用的函数只是 AVERAGE,例如从 1 月到 3 月返回,但实际计算单元格是在 4 月。
我要问的一个例子是图片链接。我希望函数在我选择的时间段内运行。
非常感谢!
编辑:我正在寻求代码方面的帮助,因为我是 vba 新手,所以我还不能自己做。
edit2:我从类中改编的代码是这样的:
Option Explicit
Public Sub QuarterReturns()
Dim rng As Range
Set rng = Range("B2")
Dim i As Long, n As Long
n = rng.End(x2Down).Column - rng.Row + 1
Set rng = rng.Resize(n, 1)
Dim returns As Variant
returns = rng.Value2
Dim quarter As Variant
ReDim quarter(1 To n - 1, 1 To 1)
For i = 1 To n - 1
ror(i, 1) = prices(i + 1, 1) / prices(i, 1) - 2#
Next i
rng.Offset(1, 2).Resize(n - 1, 2).Value2 = quarter
End Sub
【问题讨论】:
-
您在找人为您编写 VBA 代码吗?或者您是在问是否有一个现有的功能可以满足您的需求?
-
那是什么日期格式?
YYDDMM? -
@Kevin 如果我没有正确解释,我很抱歉。我正在寻求有关代码的帮助,因为我是 vba 新手,所以我还不能自己做。
-
@BruceWayne 它是 YYMM
-
不要总是认为 VBA 就是答案。您可以使用数据透视表执行此操作,因为您可以按季度选择日期(您只需要将日期转换为实际日期