値の整数配列があり、その累積合計(S = Data(1) + Data(2) + ... + Data(x)
)を計算する簡単な方法を見つけたいと思います。
私はすでにこの関数を作成しました:
Function CumulativeSum(Data() As Integer, k As Integer) As Integer
For entry = 1 To k
CumulativeSum = CumulativeSum + Data(entry)
Next entry
End Function
そしてそれはうまく機能しています。ただし、それを行うためのより良い方法があるかどうか疑問に思います(主に追加の関数を使用せず、基本的にのようなExcel関数のみを使用しますApplication.Sum
)。私はウェブ上で小さな検索をしましたが、これに基づいて何も見つかりませんでした。
私はコードを修正するように求めているのではなく、このフォーラムの本当の目的ではない代替案を求めているだけです。しかし、答えは簡単かもしれないと思うので...誰かが私を助けてくれるなら、私はとても感謝します!同様の質問に対する回答を見つけた場合は、リンクを私と共有してください。これを削除します。
おそらく私の要求に明示的に欠けていることを非常に残念に思います:私がCumulativeSum
作成した関数またはによって作成された他の関数を使用せずに、マクロルーチン自体の単純な関数を使用して累積合計を計算する簡単な方法を見つけたいだけですユーザー。
これを試して:
Sub test()
Dim arr As Variant
arr = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
Dim mySum As Long, k As Long
Dim wsf As WorksheetFunction
Set wsf = Application.WorksheetFunction
k = 6
'operative line below
mySum = wsf.Sum(wsf.Index(arr, 1, Evaluate("ROW(1:" & k & ")")))
MsgBox mySum
End Sub
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加