Excel VBA質問箱 IV

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

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


3163 / 13646 ツリー ←次へ | 前へ→

【63808】日計表と累計表の加算 kai 09/12/17(木) 10:24 質問[未読]
【63814】Re:日計表と累計表の加算 ponpon 09/12/17(木) 13:18 発言[未読]
【63817】Re:日計表と累計表の加算 kai 09/12/17(木) 13:38 質問[未読]
【63831】Re:日計表と累計表の加算 ponpon 09/12/18(金) 13:33 発言[未読]
【63832】Re:日計表と累計表の加算 kai 09/12/18(金) 13:57 お礼[未読]

【63808】日計表と累計表の加算
質問  kai E-MAIL  - 09/12/17(木) 10:24 -

引用なし
パスワード
   Sheet1に店別の日計表があります。
例えば A1にC店、A2に2(件数)を入力したときに、Sheet2に同じ様なシートが作成してあり、Sheet1の累計表となっています。
そこで、日計表に入力したときに、Shee2の累計表に自動加算できませんか?
店は複数あります。
Sheet1の日計表は毎日値をDeleteしたのち、入力をしています。

【63814】Re:日計表と累計表の加算
発言  ponpon  - 09/12/17(木) 13:18 -

引用なし
パスワード
   ▼kai さん:
>例えば A1にC店、A2に2(件数)を入力したときに、Sheet2に同じ様なシートが作成してあり、Sheet1の累計表となっています。
>そこで、日計表に入力したときに、Shee2の累計表に自動加算できませんか?
>店は複数あります。
>Sheet1の日計表は毎日値をDeleteしたのち、入力をしています。

>Sheet1に店別の日計表があります。
ということは、A店、B店、C店・・によって入力場所が違う?

Sheet2のシートレイアウトは?
どこに累計などを表示するようになっているのでしょう?
※一カ所に累計すると、間違い探しが大変ではないでしょうか?
※日付毎に記入し、月単位で集計したら、間違い探しも簡単だと思いますが・・
詳しいレイアウトがわかりませんので・・

【63817】Re:日計表と累計表の加算
質問  kai E-MAIL  - 09/12/17(木) 13:38 -

引用なし
パスワード
   ▼ponpon さん:
>▼kai さん:
>>例えば A1にC店、A2に2(件数)を入力したときに、Sheet2に同じ様なシートが作成してあり、Sheet1の累計表となっています。
>>そこで、日計表に入力したときに、Shee2の累計表に自動加算できませんか?
>>店は複数あります。
>>Sheet1の日計表は毎日値をDeleteしたのち、入力をしています。
>
>>Sheet1に店別の日計表があります。
>ということは、A店、B店、C店・・によって入力場所が違う?
>
>Sheet2のシートレイアウトは?
>どこに累計などを表示するようになっているのでしょう?
>※一カ所に累計すると、間違い探しが大変ではないでしょうか?
>※日付毎に記入し、月単位で集計したら、間違い探しも簡単だと思いますが・・
>詳しいレイアウトがわかりませんので・・

スミマセン。言葉不足だったようです。
Sheet2のレイアウトはSheet1とほぼ同様です。
確かに過去データを持つほうが、間違いを探しやすいのは分かるのですが、過去からの表で、変更が難しいのが現状です。
レイアウト
Sheet1
     件数
A1:名古屋     B1:1        
A2:中村     B2:0        
A3:上前  B3:2
A4:黒川     B4:0        
A5:西春     B5:1        
 Sheet2のレイアウトもほぼ同様です。
Sheet2にSheet1の日別の累計が出ています。

【63831】Re:日計表と累計表の加算
発言  ponpon  - 09/12/18(金) 13:33 -

引用なし
パスワード
   sheet1もsheet2も

    A    B
1    店名    件数
2    名古屋    
3    中村    
4    上前    
5    黒川    
6    西春    

になっているとして

Sub test()
  Dim myDic As Object
  Dim i As Long, t As Long
  Dim FR , mykey
 
  Set myDic = CreateObject("Scripting.Dictionary")
  With Sheets("Sheet1")
   For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
    myDic(.Cells(i, 1).Value) = .Cells(i, 1).Offset(, 1).Value
   Next
  End With
  With Sheets("Sheet2")
   For t = 0 To myDic.Count - 1
    mykey = myDic.keys
    FR = Application.Match(mykey(t), .Range("A:A"), 0)
    If Not IsError(FR) Then
      .Cells(FR, 1).Offset(, 1).Value = .Cells(FR, 1).Offset(, 1).Value + myDic(mykey(t))
    End If
   Next
  End With
End Sub

【63832】Re:日計表と累計表の加算
お礼  kai  - 09/12/18(金) 13:57 -

引用なし
パスワード
   ▼ponpon さん:
>sheet1もsheet2も
>
>    A    B
>1    店名    件数
>2    名古屋    
>3    中村    
>4    上前    
>5    黒川    
>6    西春    
>
>になっているとして
>
>Sub test()
>  Dim myDic As Object
>  Dim i As Long, t As Long
>  Dim FR , mykey
> 
>  Set myDic = CreateObject("Scripting.Dictionary")
>  With Sheets("Sheet1")
>   For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
>    myDic(.Cells(i, 1).Value) = .Cells(i, 1).Offset(, 1).Value
>   Next
>  End With
>  With Sheets("Sheet2")
>   For t = 0 To myDic.Count - 1
>    mykey = myDic.keys
>    FR = Application.Match(mykey(t), .Range("A:A"), 0)
>    If Not IsError(FR) Then
>      .Cells(FR, 1).Offset(, 1).Value = .Cells(FR, 1).Offset(, 1).Value + myDic(mykey(t))
>    End If
>   Next
>  End With
>End Sub

大変有難うございました。

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