Excel VBA質問箱 IV

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

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


54459 / 76736 ←次へ | 前へ→

【27068】Re:合計値の求め方
質問  yasu  - 05/7/27(水) 18:46 -

引用なし
パスワード
   ▼Jaka さん:

失礼しましたnanaさんの文面どおりのことを再度書いていなくて分かりにくくご迷惑をかけました。

nanaさんの質問で
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=26964;id=excel
これですが・・・・

「やりたいことは、つまりAとB列のデータがあると仮定します。Aは日付データ、Bはその日に売れた商品の数です。やりたい操作は、まずA列のデータ、つまり日付によって並べ替えます。次に、違う日付の行の間に空白行を入れます。最後に、各空白行のセルに、同じ日付の商品数の合計を出します。
問題は合計のところはうまく出せないです。なぜならセルの範囲は指定しにくいです。」


例えば、下の例でやりますと、日付を昇順後・・・その後マクロコードを使うと
最初の7月1日は合計で150となります7月の3日の合計も130になります。が、ここまでは良いのですが7月の5日290になります7月8日も250という数字になります。
つまり対象日が1日の時にその日の上2行分を加算しています。

日付     商品数
7月1日    50
7月1日    100
7月3日    70
7月3日    60
7月5日    100
7月7日    80
7月7日    60
7月8日    50
7月10日    80
7月10日    100
7月10日    70

貴兄のご提示されたコードがシンプルで素晴らしいと思い残しています。
何か出来そうで、試行錯誤していますが・・・上のような結果が出ます。
対処方法が有りましたら教えていただきたく書かせていただいた次第です。

Sub 一つづつ比較()
Dim CEL As Range
  For Each CEL In Range("a1", Range("A65535").End(xlUp))
    CEL.Select
    If CEL.Value <> CEL.Offset(1).Value And _
      CEL.Value <> "" Then
      CEL.Offset(1).EntireRow.Insert
      subad = Range(CEL, CEL.End(xlUp)).Offset(, 1).Address(0, 0)
      CEL.Offset(1, 1).Formula = "=sum(" & subad & ")"
    End If
  Next
End Sub

よろしくお願いします。
0 hits

【26949】合計値の求め方 nana 05/7/25(月) 13:06 質問
【26950】Re:合計値の求め方 Jaka 05/7/25(月) 13:27 回答
【26958】Re:合計値の求め方 nana 05/7/25(月) 14:57 質問
【26962】Re:合計値の求め方 Jaka 05/7/25(月) 15:49 発言
【26964】Re:合計値の求め方 nana 05/7/25(月) 16:00 発言
【26969】Re:合計値の求め方 Jaka 05/7/25(月) 17:03 回答
【26998】Re:合計値の求め方 Jaka 05/7/26(火) 10:20 発言
【27027】Re:合計値の求め方 yasu 05/7/26(火) 19:35 質問
【27050】Re:合計値の求め方 Jaka 05/7/27(水) 9:39 回答
【27068】Re:合計値の求め方 yasu 05/7/27(水) 18:46 質問
【27072】Re:合計値の求め方 kobasan 05/7/28(木) 0:39 回答
【27074】Re:合計値の求め方 yasu 05/7/28(木) 6:21 お礼
【27078】すみませんでした。 Jaka 05/7/28(木) 9:53 発言
【27097】ありがとうございませんでした yasu 05/7/28(木) 21:39 お礼
【27145】ありがとうございました yasu 05/7/29(金) 21:29 お礼

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