- ベストアンサー
エクセルで数値の大きい順番に項目を並べたい
お知恵をお貸しください。 シート1のA列に項目が入力されており、B列にはそれに対応した数値が入力されています。 ここで、シート2のD列にB列の数値の大きな順番にA列の項目を並べ変えたものを取り込みたいのです。 例 A列 B列 別シートD列 りんご 500 なし みかん 350 ぶどう なし 700 りんご ぶどう 650 みかん 欲しいのは項目のみです。但しシート1はいじりたくありません。 よろしくお願いします。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
Ms.Rinで~す。。。♪ >実際のところは、別シートには5行(D1:D5) >ほどしか記入する場所が無いので という事は~? sheet1のA~B列のデータは、5行しかないのでしょうか? でしたら D1: =INDEX(Sheet1!A:A,INDEX(MATCH(LARGE(Sheet1!$B$1:$B$5+(100-ROW($1:$5))/100,ROW(A1)),Sheet1!$B$1:$B$5+(100-ROW ($1:$5))/100,0),))&"" D5までコピーします。 でいいのかな?
その他の回答 (6)
- k-f3
- ベストアンサー率31% (945/3036)
1.編集→シートの移動またはコピー→シート1をコピーして、シート2を作成する。 2.データ→並び替え→最優先される列の表示/並び替えできます。
- rin01
- ベストアンサー率43% (33/76)
ふたたび~です。。。♪ >別シートには5行しか記入しないですが、 >項目とデータが記入されたA列、B列は100行ほどあります。 という こ と は~。。。? ベスト5 を表示させる事になりますね。 でしたら、 最初の式をD5まで、コピーで良いと思います。。 でした。。。Ms.Rin~♪♪
お礼
大変ありがとうございました。 また解らない問題が出た時には、よろしくお願いします。
- takkuni
- ベストアンサー率24% (166/676)
必ず関数を使わなくてはいけないのですか。 若しくはリンクさせる必要がないなら、シート1をそっくりコピーして別シートの適宜の箇所に貼り付け。 No.1さんが仰るように並べ替えをします。 並べ替えが済んだら該当列をコピーし、「形式を選択して貼り付け」から「値」でD列に貼り付け、貼り付けた部分は削除。 これでは不都合でしょうか。
お礼
回答ありがとうございます。 実際にはデータ集計で使っておりますので、シートをコピーというわけにはいきません。
- rin01
- ベストアンサー率43% (33/76)
こんにちは~♪ B列の数値に重複がある場合は、 行の上の方から抽出しま~す。。。 こんな式に、なっちゃいましたけれど。。。 別シートの D1: =INDEX(Sheet1!A:A,INDEX(MATCH(LARGE(Sheet1!$B$1:$B$100+(100- ROW($1:$100))/100,ROW(A1)),Sheet1!$B$1:$B$100+(100-ROW ($1:$100))/100,0),))&"" 下にコピーして下さい。。。 。。。。Ms.Rinでした~♪♪
補足
ありがとうございます。実際B列の数値は重複する場合もありますが、 別の列には”年月”が入るため少ないと思います。 上の関数ですと自動でA列の項目を別シートのD列に全て入れ込んでしまうのでしょうか。 実際のところは、別シートには5行(D1:D5)ほどしか記入する場所が無いので、その場合、上の関数はどのように変えればよろしいのでしょうか。 よろしくお願いいたします。
- mshr1962
- ベストアンサー率39% (7417/18945)
B列の数値に重複が無いなら D1=INDEX(Sheet1!A:A,MATCH(LARGE(Sheet1!B:B,ROW()),Sheet1!B:B,0),1)
- nature345
- ベストアンサー率15% (155/977)
データメニューの並べ替えでできます。 このとき、セルの1または2個を選択しておきます。
補足
言葉足らずですみません。 別シートには5行しか記入しないですが、項目とデータが記入されたA列、B列は100行ほどあります。 よろしくお願いします。