• ベストアンサー

Excelでのデータ取り出し

こんにちは。Excelでのデータ取り出しで質問があります。 【Excel】 区分1 区分2  コード 1    2    AB10001 1    2    CD10003 1    2    CD10002 1    2    AB10004 このようなデータがあった場合に、コードの左2桁が同じデータが複数あった場合、若いコードを取り出したいのです。 このデータの場合、「AB10001」と「CD10002」が取り出したいです。 このようなデータがたくさんあった場合、関数で取り出すことは可能 でしょうか? よろしくお願いします。

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

  • ベストアンサー
  • coffeebar
  • ベストアンサー率49% (216/436)
回答No.4

ANo.1です。追加質問にお答えします。 ソート(並べ替え)というのはデータの横のつながり(区分1,2とコードの組み合わせ)を崩さずに、データ中のある要素(キー、例では区分)がABC順あるいは数字順に並ぶように整理することを意味します。 「C列をキーにしてソートする」とは、区分とコードのひも付けを崩さずに、コードが順番に並ぶように整理するということです。 C列のみを選択してソートを行うと、A列、B列との関連付けが崩れてしまいます。(コードの区分1、2が分からなくなってしまいます。) ですからデータ全体(例の場合はA、B、C列のデータが入っている全行)を選択して、メニューバーから「データー並び替え」を実行します。 すると別ウィンドウが表れて、キーの指定が出来ます。 ここで最優先されるキーにC列を指定します。降順(zyx順)ではなく昇順(ABC順)を指定します。

noname#79102
質問者

お礼

追加の質問に回答いただきましてありがとうございます。 並び替えのやり方で、このようなやり方があるとは知りませんでした! ちゃんとできて軽く感動してしまいました。バカですね^^; ほんとお世話になりました!ありがとうございました!

その他の回答 (3)

noname#204879
noname#204879
回答No.3

「関数で取り出すこと」をお望みなので、此れは別解です。 [ピボットテーブルレポート](ピボテ)の機能を利用する方法です。尤も、作業列D、Eの準備が必要になります。 結果だけを示しておきます。G、H列がピボテで得たものです。    A    B    C    D   E  F  G       H 1 区分1 区分2 コード  code1 code2   最小値/code2 2    1    2 AB10001 AB   10001   code1     合計 3    1    2 CD10003 CD   10003   AB      10001 4    1    2 CD10002 CD   10002   CD      10002 5    1    2 AB10004 AB   10004 6 D2: =LEFT(C2,2) E2: =SUBSTITUTE(C2,D2,"")*1

noname#79102
質問者

お礼

回答ありがとうございます。 ピボットテーブルは勉強不足であまりわからないんですよね^^; 今後の参考にさせていただきます!ありがとうございます!

  • coffeebar
  • ベストアンサー率49% (216/436)
回答No.2

すみません。式を間違えました D3に入れる式は =if(left(c2,2)=left(c3,2),"",c3) です。(D4に入れる式を書いてしまいました。)

  • coffeebar
  • ベストアンサー率49% (216/436)
回答No.1

区分1をセルA1と仮定します。 まずコード(C列)をキーにして全体をソートします。(データ全体を選択して、「データー並び替え」) そしてD3に下記の式を入れ、D列の下にずーとコピーします。 =if(left(c3,2)=left(c4,2),"",c4) するとお望みのデータのみが取り出されます。(D2にはC2のデータをコピーして下さい。) 空白行を取りたければ、D列を「コピーー形式を選択して貼り付けー値」 によって式からデータに変えてからソートして下さい。

noname#79102
質問者

お礼

回答ありがとうございます。 なるほど!そのようにやればいいのですね。 ソートについて再度質問したいのですが、「C列をキーにして」とは C列を選択して並び替えを行えばいいのでしょうか? 回答いただけたらうれしいです。 よろしくお願いいたします。

関連するQ&A

専門家に質問してみよう