Excel VBA質問箱 IV

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

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


48262 / 76738 ←次へ | 前へ→

【33412】階層チェック&SUM計算
質問  こば。  - 06/1/11(水) 15:07 -

引用なし
パスワード
   A  B
---------
X1 
1
2
3 100
4  10
4  20
4  30
4  40
3  30
4  15
4  15
2
3  60
4  10
4  20
4  30
X1
1
2
3 700
4 100
4 100
4 100
4 200
4 200
3  30
4  10
4  20
2
3  20
4  10
4  10

上記のようにA列にレベル、B列に金額が入力されています。
レベルX1にくると新しい合計計算処理を行なう。

マクロ実行時に、
A列の「2」の部分に「3」の合計式
C3=SUM(B3,B9),C12=SUM(B13),C19=SUM(B20,B26),C29=SUM(A30)を
A列の「1」の部分に「2」の合計式
C2=SUM(B3,B12),C18=SUM(B19,B29)を
それぞれ自動で入れたい。

どのような方法で実現すれば良いか教えていただけますでしょうか。
SUMIF関数でセルの最終箇所までを範囲指定し、それぞれのレベルのときに
金額合計を行なう処理を考えておりましたが、行き詰まってしまいました。
Do Until文で次のレベル2になったら新しく計算式を代入するという処理で
悩んでます。
他に効率が良い方法がございましたら教えていただけますでしょうか。

//////////////////////////////////////////////// 一部抜粋

Selection.End(xlDown).Select
encel1 = ActiveCell.Address
cend = Mid(encel1, 4)

'レベル2のときの合計式
If Cells(cell, 1).value = 2 Then
  Cells(cell, 3) = "=SUMIF(E1:E" & cend & ",3,H1:H" & cend & ")"
end sub

/////////////////////////////////////////////////          
0 hits

【33412】階層チェック&SUM計算 こば。 06/1/11(水) 15:07 質問
【33422】Re:階層チェック&SUM計算 inoue 06/1/11(水) 17:15 発言
【33812】Re:階層チェック&SUM計算 こば。 06/1/21(土) 14:41 お礼
【33848】Re:階層チェック&SUM計算 こば。 06/1/22(日) 17:52 質問

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