2013-05-11 118 views
0

我想计算移动平均值(即B2:b4,b3:b5等的平均值),但我无法弄清楚如何调用变量范围。我该如何做?VBA调用变量范围

Sub SMA() 
Dim SMA As Double 

For Each cell In Range("b2:b8") 

    cell.Offset(0, 1).Value = Application.Average(cell.Value, b5).Value 

Next 

End Sub 
+1

你说“我的问题”和“遇到问题”,但你从来没有真正解释你遇到的问题,也根本不问问题。请[编辑]您的帖子来解释问题并提出具体问题,以便我们可以尝试和帮助您。谢谢。 – 2013-05-11 22:10:00

回答

1

这是你在找什么手机了?

Dim cell As Range 
For Each cell In Range("b2:b8").Cells 
    cell.Offset(0, 1).Value = Application.Average(cell.Resize(3)) 
Next 

但是,您可以将其作为公式插入一次,然后在没有VBA的情况下将其复制下来。

+0

@KenuSemau这很好,非常感谢!我正在努力学习如何在VBA中做各种各样的事情,并且我正在为此而苦苦挣扎。谢谢! – lebout 2013-05-11 22:52:03

+0

嗨,请'接受'答案。我得到了一些观点,其他人看到问题已经解决。 – KekuSemau 2013-05-11 23:08:00