[[20220806151517]] 『実績集計を行いたい』(エクセルビギナー) ページの最後に飛ぶ

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

 

『実績集計を行いたい』(エクセルビギナー)

こんにちは
私が働いている会社は加工業を営んでおり、加工実績を収集し
一定の期間でどれだけの製品を製作したかがわかるようなエクセルデータを作成したいと考えています。以下例です。

シート1(実績記入欄)

商品名 製作日  数量 製作者
A   2022/8/2 2  山田
B 2022/8/3 3  加藤
C 2022/8/4 3 加藤

シート2(実績一覧)
制作者 加藤
開始日 8/1
終了日 8/4

商品名 製作日  数量
B 2022/8/3 3
C 2022/8/3 3

この実績一覧を作成するため、数式もしくはマクロを作成したいと考えています。
どんな方法が有効でしょうか。是非ご教示ください。

< 使用 Excel:unknown、使用 OS:unknown >


シート2(実績一覧)のレイアウトを少し変えてもよいですか

(マナ) 2022/08/06(土) 15:33


あるいは、空いている場所を作業用セルとして利用してもよいですか。

(マナ) 2022/08/06(土) 15:36


オートフィルタで見ればいいと思うよ。
(シンジ) 2022/08/06(土) 15:38

バージョンを教えてください

1)excelが365なら、Filter関数
2)excelが2016以降なら、Power Query
3)それ以外なら、フィルタの詳細設定
4)あるいはマクロ

(マナ) 2022/08/06(土) 16:26


Power Queryの場合

 ・シート1のデータ範囲をテーブル設定(名前:テーブル1)
 ・シート2のB1:B3の範囲を名前定義(名前:条件)
 ・空のクエリを追加し、詳細エディターに、下記を貼り付け

 let
    ソース = Excel.CurrentWorkbook(){[Name="テーブル1"]}[Content],
    変更された型 = Table.TransformColumnTypes(ソース,{{"商品名", type text}, {"製作日", type date}, {"数量", Int64.Type}, {"製作者", type text}}),
    製作者 = Excel.CurrentWorkbook(){[Name="条件"]}[Content]{0}[Column1],
    開始日 = Date.From(Excel.CurrentWorkbook(){[Name="条件"]}[Content]{1}[Column1]),
    終了日 = Date.From(Excel.CurrentWorkbook(){[Name="条件"]}[Content]{2}[Column1]),
    フィルターされた行 = Table.SelectRows(変更された型, each [製作者] = 製作者 and [製作日] >=開始日 and [製作日] <= 終了日),
    削除された列 = Table.RemoveColumns(フィルターされた行,{"製作者"})
  in
    削除された列

(マナ) 2022/08/06(土) 16:48


マクロの場合

 Sub test()
    Dim 入力表 As Range
    Dim 条件 As Range
    Dim 抽出先 As Range

    Set 入力表 = Worksheets("Sheet1").Range("A1").CurrentRegion
    Set 条件 = Worksheets("Sheet2").Range("B1:B3")
    Set 抽出先 = Worksheets("Sheet2").Range("A5")

    抽出先.CurrentRegion.Clear
    If WorksheetFunction.CountBlank(条件) Then Exit Sub

    入力表.AutoFilter 4, 条件(1).Value
    入力表.AutoFilter 2, ">=" & 条件(2).Value2, xlAnd, "<=" & 条件(3).Value2
    入力表.Columns("A:C").Copy 抽出先
    入力表.AutoFilter

 End Sub

(マナ) 2022/08/06(土) 19:18


コメント返信:

[ 一覧(最新更新順) ]


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