Excel VBA質問箱 IV

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

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


68106 / 76734 ←次へ | 前へ→

【13171】Re:合計の算出法について
回答  Hirofumi E-MAIL  - 04/4/25(日) 21:11 -

引用なし
パスワード
   >日付がB列に表示され、これもエクセルの表を取得する日によって表示されるセルの場所は異なります。

此れが気に成りますが?
善く理解していなくて、上手くいか無いかも?
取り合えず叩き台として

集計対象はActiveSheetとしています
以下を標準モジュールに記述してください

Option Explicit

Public Sub AddUp()

  Dim i As Long
  Dim j As Long
  Dim lngListTop As Long
  Dim lngListEnd As Long
  Dim vntData As Variant
  Dim vntSum(1) As Variant
  Dim vntSubSum(1) As Variant
  
  With ActiveSheet
    '仮に先頭行を設定
    lngListTop = 1
    'もし、先頭行B列が""なら
    If .Cells(lngListTop, "B").Value = "" Then
      '先頭行を取得
      lngListTop = .Cells(lngListTop, "B").End(xlDown).Row
    End If
    '最終行を取得
    lngListEnd = .Cells(65536, "D").End(xlUp).Row + 1
    '先頭行から最終行まで繰り返し
    For i = lngListTop To lngListEnd
      '現在行のB、C、D列の値を取得
      vntData = .Cells(i, "B").Resize(, 3).Value
      'もし、B列が""でD列が""なら(日付の終り)
      If vntData(1, 1) = "" And vntData(1, 3) = "" Then
        '小計を出力
        .Cells(i, "C").Resize(, 2).Value = vntSubSum
        '小計を計に加算
        For j = 0 To 1
          vntSum(j) = vntSum(j) + vntSubSum(j)
        Next j
      Else
        'もし、B列が""で無いなら(日付が有る場合)
        If vntData(1, 1) <> "" Then
          '小計をクリア
          For j = 0 To 1
            vntSubSum(j) = 0
          Next j
        Else
          '小計にD列値、及びカウントを加算
          vntSubSum(0) = vntSubSum(0) + 1
          vntSubSum(1) = vntSubSum(1) + vntData(1, 3)
        End If
      End If
    Next i
    '計を出力
    .Cells(i, "C").Resize(, 2).Value = vntSum
  End With
  
  Beep
  MsgBox "処理完了"
    
End Sub
1 hits

【13168】合計の算出法について ハルコ 04/4/25(日) 17:07 質問
【13171】Re:合計の算出法について Hirofumi 04/4/25(日) 21:11 回答
【13200】Re:合計の算出法について ハルコ 04/4/27(火) 15:45 質問
【13209】Re:合計の算出法について Hirofumi 04/4/27(火) 19:38 回答
【13252】Re:合計の算出法について ハルコ 04/4/28(水) 18:32 質問
【13256】Re:合計の算出法について Hirofumi 04/4/28(水) 23:58 回答
【13264】Re:合計の算出法について ハルコ 04/4/29(木) 14:37 質問
【13265】Re:合計の算出法について Hirofumi 04/4/29(木) 16:11 回答
【13266】Re:合計の算出法について ハルコ 04/4/29(木) 19:53 質問
【13273】Re:合計の算出法について Hirofumi 04/4/29(木) 21:16 回答
【13274】Re:合計の算出法について ハルコ 04/4/29(木) 22:03 お礼

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