[[20050206101838]] 『シートの表示』(ひょ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シートの表示』(ひょ)
 シートAに日ごとの売上品目(1年間分)のデータ毎日を入力しています。
 シートAに入力したデータが、自動的に月ごとにシートC・D・・・へと分かれるようにできますか?
 そしてシートBには 月ごとの合計(売上品目データの中から項目を2つに分けたものの
 @の合計Aの合計と月ごとの全体合計)を表示させたいのです。よろしくお願いします。


 具体的な内容が不明のため、若干違うかもしれませんが以下のような感じでしょうか。
 SheetA	 A	 B	 C
  1	月日	商品A	商品B
  2	1月2日	100	180
  3	1月5日	150	210
  4	1月8日	200	240
  5	1月10日	250	270
  6	2月6日	300	300
  7	2月9日	350	330
  8	2月12日	400	360
  9	2月20日	450	390
 10	3月1日	500	420
 11	3月7日	550	450
 12	3月16日	600	480
 13	3月22日	650	510

 SheetC	 A	 B	 C
  1	1月	商品A	商品B
  2	1月2日	100	180
  3	1月5日	150	210
  4	1月8日	200	240
  5	1月10日	250	270

 SheetCのA1には数値のとして、表示形式で 0月			
 SheetCのA2=IF(SUM(N(MONTH(SheetA!$A$2:$A$100)=$A$1*(SheetA!$A$2:$A$100<>"")))<ROWS($A$2:A2),"",SMALL(IF(MONTH(SheetA!$A$2:$A$100)=$A$1*(SheetA!$A$2:$A$100<>""),SheetA!$A$2:$A$100),ROWS($A$2:A2)))			
 として、ShiftキーとCtrlキーを押しながらEnterキーで確定させて配列数式に。			
 B2=VLOOKUP($A2,SheetA!$A$2:$C$100,COLUMN(),FALSE)			

 (川野鮎太郎)


 ありがとうございます。具体例がなくすみませんでした。
 教えていただいたのですが 何度もしてみたのですが、上手くいかないのです。

 SheetA	 A	 B	  C   D   E    F     G  H  I
  1	月日	月日   時刻  種類  商品A  商品B  数量 仕入先
  2	1月2日	1月2日  10:00  1  ああ        18   A
  3	1月5日	1月4日	 19:12  2       いい   12   B
  4	1月8日	1月7日	 19:08  1       うう   1    C
  5	1月10日	1月10日  11:05  2  ええ        3   D
  6	2月6日	2月6日	 10:50  2       おお    4   A
  7	2月9日	2月9日	 13:40  1  かか        10   C


 上記で月日が2列ありますが基準となるのはどちらですか。

 上記の表からCのシートにはどのような結果がほしいのでしょうか。
 出来ればCのシートの例を挙げてください。(Aのシートを例にして)

 (川野鮎太郎)
 すみません。基準となるのはA列の日付です。よろしくお願いします。シートAに入力すると自動的にその月のシートも反映させたいのです。
 Cのシートには 
 1月	A	 B	  C   D   E    F     G  H  I
  1	月日	月日   時刻  種類  商品A  商品B  数量 仕入先
  2	1月2日	1月2日  10:00  1  ああ        18   A
  3	1月5日	1月4日	 19:12  2       いい   12   B
  4	1月8日	1月7日	 19:08  1       うう   1    C
  5	1月10日	1月10日  11:05  2  ええ        3   D
 Dのシートには
 2月   A	  B	  C   D   E    F     G  H  I
  1   月日	月日   時刻  種類  商品A  商品B  数量 仕入先
 2	2月6日	2月6日	 10:50  2       おお    4   A
 3	2月9日	2月9日	 13:40  1  かか        10   C


 ほとんどそのまんまで使えますよ。
 SheetC  A	 B	 C	 D	 E	 F	 G	 H
  1	1月							
  2	月日	月日	時刻	種類	商品A	商品B	数量	仕入先
  3	1月2日	1月2日	10:00	1	ああ		18	A
  4	1月5日	1月4日	19:12	2		いい	12	B
  5	1月8日	1月7日	19:08	1		うう	1	C
  6	1月10日	1月10日	11:05	2	ええ		3	D

 A3=IF(SUM(N(MONTH(SheetA!$A$2:$A$100)=$A$1*(SheetA!$A$2:$A$100<>"")))<ROWS($A$3:A3),"",SMALL(IF(MONTH(SheetA!$A$2:$A$100)=$A$1*(SheetA!$A$2:$A$100<>""),SheetA!$A$2:$A$100),ROWS($A$3:A3)))
 として、ShiftキーとCtrlキーを押しながらEnterキーで確定させて配列数式にして下方にコピー。

 B3=IF(VLOOKUP($A3,SheetA!$A$2:$H$100,COLUMN(),FALSE)="","",VLOOKUP($A3,SheetA!$A$2:$H$100,COLUMN(),FALSE))
 としてH列まで数式のコピー

 A1には数値の1を入れてください。
 (川野鮎太郎)

 横からお邪魔します。
トピ主さんが混乱するといけないのでどうしょうか迷いましたが、
いらなかったら( -.-)ノ⌒-~ポイしてください。
 >自動的に月ごとにシートC・D・
 とはいきませんが、一括してオートフィルタで振り分けるものです。
シートBのイメージがよくわからないので何もしていません。
よかったら、試してみてください。
Option Explicit
Sub てすと()
Dim MyMonth As Variant
Dim i As Long
Dim SMonth As String, EMonth As String
MyMonth = Array("1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月")
Application.ScreenUpdating = False
With Worksheets("A")
    For i = 1 To 12
        SMonth = Format(DateSerial(Year(Date), i, 1), "yyyy/mm/dd")
        EMonth = Format(DateSerial(Year(Date), i + 1, 0), "yyyy/mm/dd")
        .AutoFilterMode = False
        .Range("A1").CurrentRegion.AutoFilter _
            Field:=1, Criteria1:=">=" & SMonth, Operator:=xlAnd, Criteria2:="<=" & EMonth
        With .AutoFilter.Range
            If .Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count > 1 Then
                Worksheets(MyMonth(i - 1)).Cells.ClearContents
                .Resize(1, .Columns.Count).Copy _
                    Destination:=Worksheets(MyMonth(i - 1)).Range("A1")
                .Resize(.Rows.Count - 1, .Columns.Count).Offset(1).Copy _
                    Destination:=Worksheets(MyMonth(i - 1)).Range("A65536").End(xlUp).Offset(1)
                Worksheets(MyMonth(i - 1)).Range("A1").CurrentRegion.EntireColumn.AutoFit
            End If
        End With
        .AutoFilterMode = False
    Next
End With
Application.ScreenUpdating = True
End Sub
http://ryusendo.no-ip.com/cgi-bin/upload/src/up0233.xls
(SoulMan)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.