• ベストアンサー

エクセルの並び替えについて

A列からC列に表AがありE列からG列に表Bがあります。 表Bの品番順に表Aのデータを並べたいのですがどのようにしたらよいでしょうか。 サンプルの表を添付しますのでよろしくおねがいします。

質問者が選んだベストアンサー

  • ベストアンサー
  • msMike
  • ベストアンサー率20% (368/1813)
回答No.4

添付図参照(Excel 2019) I3: =E3 J3: =VLOOKUP($I3,$A$3:$C$12,COLUMN(B1),FALSE) セル J3 をセル K3 にオートフィル 範囲 I3:J3 を下方にズズーッと(12行目まで)オートフィル オ・シ・マ・イ

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.5

小生は、かねて疑問に思っている。 関数では、教えてもらわないと自分では作れないような関数になることも知らず、「関数で関数で」という、質問者がなんと多いことか。 本件は (1)質問者は、関数でと言ってない (2)関数でやってもそんなに難しくはならない、のですが、 どうも(2)を予期してるらしい。 ーー 「エクセルは操作の学び」であると思う。出来るものは操作で 解決する、がよいと思う。 ーー E2:E12の範囲を「インポート」して、ユーザー設定リストに加える。 やり方の説明は、下記にある。 将来、別の機会で、何かの役に立つと思う。 https://support.microsoft.com/ja-jp/office/%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E4%B8%A6%E3%81%B9%E6%9B%BF%E3%81%88%E3%81%8A%E3%82%88%E3%81%B3%E5%85%A5%E5%8A%9B%E3%81%AB%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E8%A8%AD%E5%AE%9A%E3%83%AA%E3%82%B9%E3%83%88%E3%82%92%E4%BD%9C%E6%88%90%E3%81%BE%E3%81%9F%E3%81%AF%E5%89%8A%E9%99%A4%E3%81%99%E3%82%8B-d1cf624f-2d2b-44fa-814b-ba213ec2fd61 セルの範囲(E3:E12)のデータからユーザー設定リストを作成する ーーー 其の後、本質問のA2:C12を範囲指定して、このユーザー設定リストの並び順でソートする。 テスト結果 表A 品番 品名 数量 A列 B列 C列  B,C列はしょうせいが勝手に入力したもののソート後。 1 h6  6 100 h7  7 3 h2  2 210 h8  8 20 h1  1 98 h3  3 50 h9  9 11 h4  4 9 h10 10 7 h5  5 これの課題は、多分VBAでやっても簡単ではないと思うので、便利なものです。

  • SI299792
  • ベストアンサー率47% (788/1647)
回答No.3

A~C,F列は入力してあるという解釈でいいですね。 E3: =INDEX(A:A,MATCH($F3,$B:$B,0)) G3へコピペ。下へコピペ。 F列の品名はたまたまアルファベットで昇順に番に並んでいますが、実際は昇順に並んでいない前提です。

回答No.2

新たに表Cを作ります。 I,J,K列を使用し、I2に「品番」J2に「品名」K2に「数量」と記載します。 I3からI12のセルには「=E3」等、表Bの品番がそのまま対応するI列に入るようにします。 J3からJ12のセルも「=F3」等、表Bの品名がそのまま対応するJ列に入るようにします。 で、K列ですが、vlookup関数を使用してA表を検索します。 K3セルには =vlookup($I3,$A$3:$C$12,3,false) と入れます。 具体的な意味としては「検索対象範囲はA3-C12の範囲とし、I3に記載された値と一致する値を検索範囲の一番左の行(この場合はA行)から探し出し、見つけた位置の列の3番め(A列を1番目としてカウントすると、「数量」のC列は3番めになる)の値を表示する」となります。 vlookup関数の使い方に関しては検索をかけると参考例が山ほど出てくるので、それを参考にされると良いでしょう。 以上、ご参考まで。

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.1

B3に =F3 A3に =INDEX($E$3:$E$12,MATCH(B3,$F$3:$F$12,0),1) C3に =INDEX($G$3:$G$12,MATCH(B3,$F$3:$F$12,0),1) として下にコピーしてください。

関連するQ&A