[[20250610181607]] 『横長のデータを抽出して縦に並べ替えたい』(みき) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『横長のデータを抽出して縦に並べ替えたい』(みき)

A1に田中、B1に初回、C1に次回と入っています。D1は空白です。
A2に山本、B2に初回目、C2に次回目、D2に終了と入っています。

A列の名前とB列の項目を一つずつ引用し、縦2列の表にしたいです。
具体的には以下のとおりです。
A1田中、B1初回、A2田中、B2次回、A3山本、B3初回目、A4山本、B4次回目、A5山本、B5終了。
マクロなし、関数のみで可能でしょうか?

< 使用 Excel:Excel2019、使用 OS:Windows11 >


レイアウトを書かないで、文字で表現するのは頭で整理するのは
面倒くさい
つまり、手抜き質問としか見れないです
(たぶん) 2025/06/10(火) 19:17:23

レイアウトができず申し訳ありません。
不格好ですがこちらでしたら伝わりますでしょうか。

◎元の形
  A    B    C    D
1 田中  初回   次回
2 山田  初回目  次回目  終了

◎並べ替え後

   A      B
1 田中  初回
2 田中  次回
3 山田  初回目
4 山田  次回目
5 山田  終了
(みき) 2025/06/10(火) 19:29:05

Excel2019なので、PowerQueryの列のピボット解除が使えます。

元の形を範囲選択して、
データタブ>データの取得>その他のデータソース>テーブルまたは範囲>OKボタン

PowerQueryエディターが起動し、列1が緑色の状態(列選択された状態)なので、
変換タブ>列のピボット解除▼>その他の列のピボット解除

属性列を範囲選択し、
ホームタブ>列の削除>閉じて読み込む

(ニック) 2025/06/10(火) 20:15:43


 なるべく平易な式で考えてみますと...

 [___]|___A____|___B____|___C____|___D____|E_|___F____|___G____|___H____|I_|___J____|___K____|___L____|___M____|___N____|
 [  1]|田中    |初回    |次回    |        |  |       1|       2| FALSE  |  |       1|       1|       1|田中    |初回    |
 [  2]|山本    |初回目  |次回目  |終了    |  |       4|       5|       6|  |       2|       1|       2|田中    |次回    |
 [  3]|鈴木    |初回    |次回    |        |  |       7|       8| FALSE  |  |       4|       2|       1|山本    |初回目  |
 [  4]|佐藤    |        |次回目  |        |  | FALSE  |      11| FALSE  |  |       5|       2|       2|山本    |次回目  |
 [  5]|        |        |        |        |  | FALSE  | FALSE  | FALSE  |  |       6|       2|       3|山本    |終了    |
 [  6]|        |        |        |        |  |        |        |        |  |       7|       3|       1|鈴木    |初回    |
 [  7]|        |        |        |        |  |        |        |        |  |       8|       3|       2|鈴木    |次回    |
 [  8]|        |        |        |        |  |        |        |        |  |      11|       4|       2|佐藤    |次回目  |
 [  9]|        |        |        |        |  |        |        |        |  | #NUM!  | #NUM!  | #NUM!  | #NUM!  | #NUM!  |
 [ 10]|        |        |        |        |  |        |        |        |  | #NUM!  | #NUM!  | #NUM!  | #NUM!  | #NUM!  |

 [F1] =IF(COUNTA(B1),(ROW()-1)*3+COLUMN(A1))
 [J1] =SMALL(F:H,ROW())
 [K1] =TRUNC((J1-1)/3)+1
 [L1] =MOD(J1-1,3)+1
 [M1] =INDEX(A:A,K1)
 [N1] =INDEX(B:D,K1,L1)

(白茶) 2025/06/10(火) 20:48:13


コメント返信:

[ 一覧(最新更新順) ]


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