Excel VBA質問箱 IV

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

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


11728 / 13645 ツリー ←次へ | 前へ→

【14381】表の作成について miki 04/5/27(木) 15:08 質問[未読]
【14455】Re:表の作成について miki 04/5/29(土) 19:22 お礼[未読]
【14503】Re:表の作成について Jaka 04/5/31(月) 9:25 発言[未読]

【14381】表の作成について
質問  miki  - 04/5/27(木) 15:08 -

引用なし
パスワード
   みなさん、こんにちは。
少し悩んでいることがあり、投稿させていただきました。
以下のとおり、シート1にデータがあり、そのデータについて、グループ別(文字列)・日付別(シリアル値)・項目コード別(文字列)を条件に、オートフィルタと集計をかけ、その結果である項目毎の合計を同シートに表としてあらわします。その際、シート2にある、項目コードとそれに対応する項目名(文字列)が載っている表を参照して、結果を表としてあらわすときに項目名を一緒にあらわしたいのです。私はVBAを始めて間もなく、懸命に勉強しているとこですが、オートフィルタや集計はなんとかできるのですが、シート2の表を参照して表を作成するというのが、
どうやってもできません。どなたか良い案があれば、ご教授いただければと思います。
大変、わかりずらい説明ではありますが、どうか、宜しくお願いいたします。
(シート1)
        A列    B列   C列  D列
 (1行目)グループ1  20040525  F  200,000
(2行目)グループ1  20040525  E  50,000
(3行目)グループ1  20040525  G  20,000
(4行目)グループ1  20040525  B  123,000
 (5行目)グループ2  20040520  A  20,000
 (6行目)グループ2  20040520  D  110,000
 (7行目)グループ3  20040529  C  3,000
           ・
           ・
           ・
(シート1の表)
  グループ別・日別の表を作成し、データを貼り付けます。(罫線も引きます)例えば、20040520分を作ったら、1行空けて、次の日付分の表を作成します。
  
       F列     G列
 (1行目) グループ1  20040520
 (2行目) 交通費    123,000
 (3行目) 電気料    50,000
 (4行目) 通信費    200,000
 (5行目) 食費     20,000
 (6行目)
 (7行目) グループ2  20040520
 (8行目) 燃料費    200,000
 (9行目) 移動費    110,000
 (10行目) 
 (11行目) グループ3  20040529
 (12行目) 光熱費    3,000
        ・
        ・
        ・

(シート2)
  この表の項目数は、増えたりも減ったりもします。  
  
 (1行目) A  燃料費
 (2行目) B  交通費
 (3行目) C  光熱費
 (4行目) D  移動費
 (5行目) E  電気料
 (6行目) F  通信費
 (7行目) G  食費
      ・
      ・

【14455】Re:表の作成について
お礼  miki  - 04/5/29(土) 19:22 -

引用なし
パスワード
   良い案があればと思ったのですが...
無理難題を申し付けて、又、分かりにくい説明で申し訳ありませんでした。
自分でなんとか勉強して良い方法を見つけてみます。
みなさん、ありがとうございました。

【14503】Re:表の作成について
発言  Jaka  - 04/5/31(月) 9:25 -

引用なし
パスワード
   えっと、何をどうしたいのかとか趣旨が全く解っていませんけど....。
ピボットテーブルって使ったことありませんが、今まで色々な質問を見てきた感じでは、こういうのってピボットテーブルを使ったりしているみたいですけど....。

解らないなりに一応考えてみました。
グループ名は、グループ種をいちいち調べるのが、大変そうだったので(面倒)
グループXで、1〜3までとして、Sheet3に書き込んでいます。
マクロでなく手動で済んじゃう事なんですけど.....。
要望のものとは全く違うトンチンカンな事と思いますが、これ以上は解りません。

Sub nnmm()
  She2BE = Sheets("Sheet2").Range("B65536").End(xlUp).Row
  Sheets("Sheet2").Range("A1:B" & She2BE).Copy Sheets("Sheet3").Range("A2")
  For i = 1 To 3
    Cells(1, i + 2).Value = "グループ" & i
  Next
  Sheets("Sheet3").Range("C2", Cells(She2BE + 1, i + 1)).Formula = _
      "=SUMPRODUCT((Sheet1!$A$2:$A$8=C$1)*(Sheet1!$C$2:$C$8=$A2)*(Sheet1!$D$2:$D$8))"
  
End Sub

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