0

ここに画像の説明を入力

このマクロを書くことで平均値を計算することができました

'This works out how many rows (another way)
Dim AV As Long, AVC As Long
AV = Range("O" & Rows.Count).End(xlUp).Row
AVC = AV - 1

 ' This adds up all the data starting from row 2 to before the blank row
 Dim LR As Long
 myRange = ActiveSheet.Range("O2", Range("O2").End(xlDown))
 LR = WorksheetFunction.sum(myRange)
'MsgBox LR

 ' So finding the mean
 Dim mean As Long
 Range("P2").Select
 ActiveCell.FormulaR1C1 = LR / AVC
 Selection.Value = Format(ActiveCell, "#.00")

セルP2で17.84の結果が得られました

しかし、標準偏差を計算するために同じものを書き込もうとすると、値 0 が返されました。以下のようなコーディングを使用して仕事をすることはできないということですか?

 ' Doing stdev on range
 Dim MD As Long
 myRange = ActiveSheet.Range("O2", Range("O2").End(xlDown))
 MD = WorksheetFunction.StDev_S(myRange)
 MsgBox MD

また、それをコピーして貼り付けて、列 O にある行の数に応じて停止する方法を理解できません。

ここに画像の説明を入力

4

1 に答える 1