Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11977 / 13646 ツリー ←次へ | 前へ→

【12774】合計を計算したいのですが・・ ぴぴ 04/4/14(水) 17:20 質問
【12785】Re:合計を計算したいのですが・・ YO 04/4/14(水) 20:42 発言
【12788】Re:合計を計算したいのですが・・ Asaki 04/4/14(水) 21:11 回答
【12790】Re:合計を計算したいのですが・・ ぴぴ 04/4/14(水) 22:30 お礼
【13005】Re:合計を計算したいのですが・・ ジャコ 04/4/20(火) 23:27 質問
【13010】Re:合計を計算したいのですが・・ Asaki 04/4/21(水) 9:18 回答
【13011】Re:合計を計算したいのですが・・ ジャコ 04/4/21(水) 9:35 お礼

【12774】合計を計算したいのですが・・
質問  ぴぴ  - 04/4/14(水) 17:20 -

引用なし
パスワード
   下記のコードで、E列の最後のセル(数式で計算された値が入力してある)
の下の行に
B列に”合計”が入り、C列にはC3からの合計が計算され
D列にはD3からの合計が計算され表示されるようにしたいのですが、
C列・D列はどのようなコードにすればよいのでしょうか?

Sub Test()
Dim i As Long
  Application.ScreenUpdating = False

 ’数式の入っているE列の最後の値を検索します

  For i = 200 To 2 Step -1
    If i = 2 Then
     
    ElseIf Cells(i, 5).Value <> "" Then

     
      Exit For
    End If
  Next
’E列の最後の値のセルの下の行へ
 Dim ab
 
 ab = Cells(i, 5).Row + 1
 
 ActiveSheet.Cells(ab, 2).Value = "合計"

 −−−ここへC列・D列の合計が計算されるようにしたいのですが−−

End Sub

【12785】Re:合計を計算したいのですが・・
発言  YO  - 04/4/14(水) 20:42 -

引用なし
パスワード
   たぶん説明不足ですね・・・。
もっと詳しく何をしたいか?
お願いします

【12788】Re:合計を計算したいのですが・・
回答  Asaki  - 04/4/14(水) 21:11 -

引用なし
パスワード
   こんばんは。

Sum()関数を設定するのではどうでしょうか?
Sub test()

  With Cells(65536, 5).End(xlUp).Offset(1, -2)
    .Offset(, -1).Value = "合計"
    .Resize(, 2).FormulaR1C1 = "=SUM(R3C:R" & .Offset(-1).Row & "C)"
  End With

End Sub

【12790】Re:合計を計算したいのですが・・
お礼  ぴぴ  - 04/4/14(水) 22:30 -

引用なし
パスワード
   Asaki さん こんばんは。
ありがとうございました!
説明がうまく出来ず、頭をかかえていました。
でも、思いとおりに出来ました!

【13005】Re:合計を計算したいのですが・・
質問  ジャコ  - 04/4/20(火) 23:27 -

引用なし
パスワード
   ▼Asaki さん:
>こんばんは。
>
>Sum()関数を設定するのではどうでしょうか?
>Sub test()
>
>  With Cells(65536, 5).End(xlUp).Offset(1, -2)
>    .Offset(, -1).Value = "合計"
>    .Resize(, 2).FormulaR1C1 = "=SUM(R3C:R" & .Offset(-1).Row & "C)"
>  End With
>
>End Sub

夜分遅くすみません。
他の方のやりとりに乱入する形になりますが、私も合計を算出する方法で苦難しており、偶然、このメールを見つけ、どうしても教えて欲しいことがあり、乱入させていただきました。初歩的な質問だと思いますが、以下の
      "=SUM(R3C:R" & .Offset(-1).Row & "C)"
の構成というか、作り方というか、考え方が分からなくて。。
「R1C1」は分かるのですが、特に"=SUM(R3C:R"の部分が理解できません。
ヘルプで参照しても、載っていなくて分からないので、どうかご教授を
お願いいたします。
まだ、VBA初めて間もないですが、宜しくお願いいたします。

【13010】Re:合計を計算したいのですが・・
回答  Asaki  - 04/4/21(水) 9:18 -

引用なし
パスワード
   こんにちは。

>"=SUM(R3C:R" & .Offset(-1).Row & "C)"
例えば、A列の3行目から10行目までの合計を、11行目にSum()を入力して計算するとします。
A1形式だと =Sum(A$3:A$10)
R1C1形式だと =Sum(R3C:R10C)
この数式を、文字列として組み立てているだけです。
(別に絶対参照でなくても良いのですが、R1C1の(行方向)絶対参照が一番簡単な記述になりそうだったので)

A列3行目から10行目にてきと〜な数字を入力、11行目に数式を設定して、ツール >> オプション で参照形式を切り替えて、その違いをご確認ください。
また、相対参照にした場合も併せて確認されると、より理解が深まるのでは、と思います。

こんな感じでお判りいただけますか?

【13011】Re:合計を計算したいのですが・・
お礼  ジャコ  - 04/4/21(水) 9:35 -

引用なし
パスワード
   Asakiさん、どうもありがとうございました。
この内容をもとに、更に勉強します!

11977 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free