[[20080531130802]] 『アクティブセルまでの合計を出すマクロ』(ふさふさ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『アクティブセルまでの合計を出すマクロ』(ふさふさ)

 下記の様な表で、D列の合計の下に総合計を出したいです。
 そのときによって、データのある行数が違うので、合計の列の下(下記の表ではD6)
 にセルを置き、そこまでの合計を出すマクロを教えてください。

   A     B   C     D
 1 品名   単価  数量  合計
 2 ボールペン  100   2   200
 3 ケシゴム   200   3   600
 4 エンピツ   300   5   1500
 5 クリップ   400   3     1200

 [エクセルのバージョン]Excel2000 [OSのバージョン] WindowsXP


 だるまです。
http://hp.vector.co.jp/authors/VA033788/index.html

 オートSUMボタンで充分のような気もしますが、マクロご希望ということなので一応。^d^

 Sub test2()
    Dim RR As Range
    Set RR = ActiveCell.Offset(-1)
    Set RR = Range(RR, RR.End(xlUp))
    ActiveCell.Value = Application.WorksheetFunction.Sum(RR)
 End Sub


 ↑の方と同じくマクロの必要性って?
   A     B   C     D
 1                            総合計
 2                             ***
 3 品名   単価  数量  合計
 4 ボールペン  100   2   200
 5 ケシゴム   200   3   600
 6 エンピツ   300   5   1500
 7 クリップ   400   3     1200

 D2 =SUM(D4:D100)
 でいいんでないの?

 マクロだったら
 Sub test()
 With ActiveCell
     .Value = Application.Sum(Range(Range("d1"), .Offset(-1)))
 End With
 End Sub
 (seiya)


そうですね。
すいません。

 もう一度質問し直します。

 D6にセルを置いていなくても、データの一番下を探し出して
 D6に総合計を入れるようにしたいです。

 わかりますかね??宜しくお願いします。

 (ふさふさ)

 参考までに関数ならば。
 D2に =IF(COUNT(B2:C2)=2,B2*C2,"")
 D3に =IF(COUNT(B2:C3)=0,"",IF(COUNT(B3:C3)=2,B3*C3,SUM(D$2:D2))) として下にコピー。
(かなれっと) 

 With Range("D" & Rows.Count).End(xlUp)
  .Offset(1).Value = WorksheetFunction.Sum(Range("D1", .Cells))
 End With

 (ROUGE)

できました。有り難う御座います。(ふさふさ)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.