Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Excel 2016)
縦に並んだデータを横並びに抽出
投稿日時: 21/08/30 18:31:06
投稿者: 春麗

教えてください.
シート1の様に,同じIDで複数のテスト結果が縦に並んでいるのですが,
これをシート2の様に,一つのIDは一行にして,結果を横並びにしたいです.
どんな関数を使えばシート2を完成させることが可能でしょうか.
 
シート1
 
     A    B    C
1     ID    項目1     項目2
2    111    test1    98
3    111    test2    85        
4    111    test3    90
5    222    test1    100
6    222    test2    95
7    222    test3    95
 
シート2
 
     A    B    C    D    
1     ID    test1     test2    test3
2    111    98    85    90
3    222    100    95    95    

投稿日時: 21/08/30 18:38:01
投稿者: 春麗

シート2のB2セルに
=VLOOKUP($G$2,$A$2:$C$7,3,FALSE)
と入力したとして,3列目の 3 の値が変動しないため同じ値が入ります.

回答
投稿日時: 21/08/30 20:59:10
投稿者: んなっと

関数だと
 
   A   B   C   D
1  ID test1 test2 test3
2 111   98   85   90
3 222  100   95   95
 
B2
=SUMIFS(Sheet1!$C:$C,Sheet1!$A:$A,$A2,Sheet1!$B:$B,B$1)
 
 
取得と変換を使うと
 
 データ
→テーブルまたは範囲から
→先頭行を〜にチェックが入った状態で OK
→項目1 列を選択
→変換 列のピボット
→値列:項目2
→詳細設定オプション:集計しない
→ホーム 閉じて読み込む

回答
投稿日時: 21/08/31 21:47:54
投稿者: Mike

Sheet1            Sheet2
  A  B   C         A  B   C   D
1 ID 項目1 項目2       1 ID test1 test2 test3
2 111 test1  98       2 111  98  85  90
3 111 test2  85       3 222  100  95  95
4 111 test3  90
5 222 test1  100   名前の管理       
6 222 test2  95   名前 参照範囲      範囲
7 222 test3  95   ID  =Sheet1!$A$2:$A$10 ブック
8           項目1 =Sheet1!$B$2:$B$10 ブック
            項目2 =Sheet1!$C$2:$C$10 ブック
 
Sheet2 において、
式 =MAX((ID=$A2)*(項目1=B$1)*項目2) を入力したセル B2 を右に2列&下に1行オートフィルだけ。
【お断わり】上式は必ず配列(CSE)数式として入力のこと

回答
投稿日時: 21/09/01 10:18:29
投稿者: Suzu

ピボットテーブル
 1.Sheet1 A1:C8 の 範囲を選択した状態で
  「挿入」-「ピボットテーブル」にて
   【ピボットテーブルの作成】ウィザード ダイアログが表示される
 
 2.テーブルまたは範囲 に [Sheet1!$A$1:$C$8] または、[テーブル名]
  ピボットテーブル レポートを配置する場所を選択してください に [新規ワークシート]
   にて、「OK」
 
 3. 新規ワークシートが追加され 右側に ピボットテーブルのフィールド が表示される
    右側 上半分 に、[ID][項目1][項目2] が表示されるはずです。
    右側 下半分の
      行 に 右上 から [ID] をドラッグ&ドロップ
      列 に   〃   [項目1]   〃
      値 に   〃   [項目2]   〃
 
   希望の位置とはちょっと違いますが。。
 
 
Sheet1 の データが追加された場合には、
 「ピボットテーブル分析」タブ 「データ」の「データソースの変更」にてSheet1 の 範囲を確認
      〃               「更新」を押す
 
Sheet1 の データが変更されたときには、「更新」を押します。
 
んなっと さん の 取得と変換 の方法の
 詳細設定オプション: 『集計しない』 に、『合計』を指定した場合と同じデータになります。
 集計しない にした場合、
    IDと項目1 が 重複した データがある場合、項目2 の値が表示されなくなります。
  この辺りは ご自分で操作し確認してみてください。
 
 
関数の場合、A列の 111、222 や、1行目 の test1、test2、test3 を予め求めておく必要があります。
(関数を使って求める事は可能ですが、複雑になりがちです)
関数よりは「テーブルの取得と変換」「ピボットテーブル」の方がお勧めです。

回答
投稿日時: 21/09/01 18:51:01
投稿者: んなっと

関数でも全く問題ありませんよ。
春麗さん、気にしないでください。

投稿日時: 21/09/08 11:36:32
投稿者: 春麗

みなさん
 
どうもありがとうございました.
大量のデータでしたが,スムーズに整理できました.
 
 
んなっとさん
データタブの機能を初めて使ってみました.
教えていただいたフローを追いながら,
そして迷子になりながらなんとか動きを確認できました.
ハードル高かったです.