- ベストアンサー
ExcelVBAで合計値を計算
ExcelVBAを使用して、ある特定の列の合計値を計算して、表示させたいと考えていますがうまくいきません。 ある特定の列にはデータが入るのですが、その時々によりデータ量は変化するという条件です。 こういった場合どのような記述が良いでしょうか? 教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
下記では如何でしょう。 シート1のA列を対称にしています。 必要な所は変更してください。 Sub Test() Dim myRange As Range Dim myAns As Long Dim Lrow As Long With Worksheets("Sheet1") Lrow = .Range("A" & CStr(Rows.Count)).End(xlUp).Row Set myRange = .Range("A1:A" & CStr(Lrow)) myAns = Application.WorksheetFunction.Sum(myRange) End With MsgBox myAns Set myRange = Nothing End Sub
その他の回答 (1)
- kamejiro
- ベストアンサー率28% (136/479)
思いつきのコーディングです。(動作確認はしていません) s = 0 j = 1 Do Until Cells(j, 1) = "" s = s + Cells(j, 1) j = j + 1 Loop この場合、A1+A2+A3+… と合計を算出します。合計の変数名は s です。例えば、A1からA10のセルまで全て数値があり、A11のセルが空白だったら、A1+A2+A3+…+A10の計算をします。
お礼
回答ありがとうございます。 シンプルな記述でも可能なのですね。 大変勉強になりました。 ありがとうございます。
お礼
回答ありがとうございます。 なかなか解決できずにつまづいていたのですが、 回答を参考しました結果、前進することができました。 ありがとうございました。