• ベストアンサー

マクロで結合セルへの合計額の表示

B列に月日、C列に氏名、D列に金額、E列は合計額欄の表が有ります。 マクロでC列氏名でソートし、C列で同名の部分はE列でセル結合しています。このE列セル結合のところにD列金額の該当分の合計金額をE列セル結合に表示する記述を教えてください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

例 データ A列   B列   C列   D列(実際は下詰めになる) 2008/7/1 山田 12 82 2008/7/2 山田 23 2008/7/3 山田 36 2008/7/4 山田 11 2008/7/5 大村 34 76 2008/7/6 大村 27 2008/7/7 大村 15 2008/7/8 泉 8 8 2008/7/9 下村 2 17 2008/7/10 下村 15 ーーー コードは標準モジュールに Sub test01() Dim st As Range Dim s As Integer d = Range("A65536").End(xlUp).Row Set st = Range("B2") '各氏名の塊のスタートセル s = Range("c2").Value '--- For i = 3 To d If Cells(i, "B") = st.Value Then s = s + Cells(i, "C").Value '氏名同じ間はC列足しこみ Else 'MsgBox s Range(st.Offset(0, 2), Cells(i - 1, "D")).MergeCells = True st.Offset(0, 2).Value = s st.Offset(0, 2).VerticalAlignment = xlBottom '--- Set st = Cells(i, "B") '各氏名の塊のスタートセル入れ換え s = Cells(i, "C").Value End If Next i '--- 'MsgBox s Range(st.Offset(0, 2), Cells(i - 1, "D")).MergeCells = True st.Offset(0, 2).Value = s st.Offset(0, 2).VerticalAlignment = xlBottom End Sub ---- 結果 上記D列 (質問例と違い)A列からデータを始めてしまった。 氏名順にソートしてある前提。 余り質問になかったようで、ちょっと難しい。

hoshi7777
質問者

お礼

本当にありがとうございました。おかげで大変助かりました。

関連するQ&A

専門家に質問してみよう