ゴリラストロングの雑記帳

月収10万円の広告収入を目指す自称専業ライターのブログです。




【VBA】指定した期間の移動平均を求めるマクロを作成してみました。




どうも、ゴリラストロングです。

 

今回はVBAで、指定した期間の移動平均を求めるマクロを作成してみました。

 

<元データ>

f:id:gorilla-strong:20200415052929p:plain

 

C1セルに任意の数値を入力します。

それでマクロを実行すると、入力した数値の期間分の移動平均が求められます。

ついでにグラフの作成も行います。

 

<マクロ実行後>

f:id:gorilla-strong:20200415053136p:plain

 

動作としては以上です。

 

ソースコード> 

Sub main()

Dim ws As Object
Set ws = ThisWorkbook.Worksheets(1)

Dim lastrow As Long
lastrow = ws.Cells(Rows.Count, 1).End(xlUp).Row

Dim averagenum As Long
averagenum = ws.Range("C1")

i = 0

For j = 3 To lastrow

ws.Range("C" & j) = WorksheetFunction.Average(Range("B3:B" & averagenum + 2).Offset(i, 0))

i = i + 1

Next

With ws.Shapes.AddChart.Chart
    .ChartType = xlLine
    .SetSourceData Range("A2:C" & lastrow)
End With



With ws.ChartObjects
    .Top = Range("E2").Top
    .Left = Range("E2").Left
    .Height = 250
    .Width = 400
End With



End Sub

 

以上、ゴリラストロングでした。