Excel VBA質問箱 IV

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

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


52609 / 76736 ←次へ | 前へ→

【28962】Re:検索後SUM計算させたい!!
発言  ichinose  - 05/9/19(月) 19:07 -

引用なし
パスワード
   ▼TOKU さん:
こんばんは。

>
>まず、ユーザーが区分の列にA〜Cを入力しその後、内容を入力し時間を
>分単位で入力します。
>最後に集計したい時にボタンを押すと集計結果の『時間』のセルに合計した時間を
>表示させたいです。
>※時間のセルには、予めセルの書式のユーザー定義で「##0"分"」等と定義してあります。
でしたら、
>>これらの設定がなされていれば、
>>
>>1 区分で並べ替え
>>
>>2 「データ」---「集計」とクリックし、「集計の設定」ダイアログで
>>  グループの基準----区分
>>  集計の方法------- 合計
>>  集計するフィールド---時間
>>
>>と言う指定で集計を行うと、区分別の時間の合計が集計されます。
これで算出できると思いますが・・・。


方法は、他にいろいろありますが・・・。


>
>>>区分  内容   時間      【集計結果】
>>> A        5分       区分   時間     
>>> B        10分        A
>>> A        2分        B
>>> B        3分        C
>>> C        4分
>>> C        4分
>>> ・        ・
>>> ・        ・
この元データがSheet1という名前の付いたシートの
A1からデータが入っているとします。
(A列--区分、B列---内容、C列---時間 但し、1行目は見出し)

また、集計結果は、Sheet2という名前の付いたシートの
セルA1から、以下のレイアウトで表示することを考えます。
(A列--区分、B列---時間 但し、1行目は見出し)


区分   時間     
A      7分
B     13分
C     8分


では、コードです。
標準モジュールに

'====================================================================
Sub main()
  Dim sh1rng As Range
  Dim sh2rng As Range
  Dim s1hani As String
  Dim s1goukei As String
  With Worksheets("sheet1")
   Set sh1rng = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp))
   End With
  Worksheets("sheet2").Cells.ClearContents
  sh1rng.AdvancedFilter xlFilterCopy, , Worksheets("sheet2").Range("a1"), True
  With Worksheets("sheet2")
    .Range("B1").Value = "時間"
    Set sh2rng = .Range("a2", .Cells(.Rows.Count, 1).End(xlUp))
    If sh2rng.Row > 1 Then
     s1hani = sh1rng.Offset(1, 0).Resize(sh1rng.Rows.Count - 1, 1).Address(, , , True)
     s1goukei = sh1rng.Offset(1, 2).Resize(sh1rng.Rows.Count - 1, 1).Address(, , , True)
     sh2rng.Offset(0, 1).NumberFormatLocal = "##0""分"""
     sh2rng.Offset(0, 1).Formula = "=sumif(" & s1hani & ",a2," & s1goukei & ")"
     End If
    End With
End Sub


mainを実行してみてください。
0 hits

【28875】検索後SUM計算させたい!! TOKU 05/9/16(金) 23:21 質問
【28879】Re:検索後SUM計算させたい!! ichinose 05/9/17(土) 8:24 発言
【28944】Re:検索後SUM計算させたい!! TOKU 05/9/19(月) 8:57 質問
【28947】Re:検索後SUM計算させたい!! Hrk 05/9/19(月) 13:32 発言
【28962】Re:検索後SUM計算させたい!! ichinose 05/9/19(月) 19:07 発言
【29046】Re:検索後SUM計算させたい!! TOKU 05/9/22(木) 13:16 お礼

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