
Excelで、下記表(例)に入力された数字を上から順に関数を用いて隣のB列に整列させたいです。
・例
A1:A60の表があります。
※以下A列に入力された数字とします
1 空白
2 20
3 空白
4 15
5 25
・(省略、この間空白と考えて下さい)
・
・
59 10
60 空白
上記表(例)は、A2に20,A4に15,A5に25,A59に10それ以外は空白を表します。
上記表のセル内数字は全て手入力とします。
全てのセルが空白の場合もあります。
B列はB1:B5の5行です。
この入力された数字を関数を用いて、B列に上から順にB1に20,B2に15,B3に25,B4に10,B5は空白となるように整列させたいです。
B列セル結果は他シートに参照されますのでセルはロックを掛けています。
上記のことからデータの並べ替えも使えませんし昇降順でもありません。
上から順に整列させた数字を、B1:B5の5行内で上位5まで表示させます。
A列の行数が多いのでif関数も使えません。
なお、上記質問内に不明な点がありましたら補足させて頂きます。
以上、宜しくお願いします。
No.1ベストアンサー
- 回答日時:
一例です。
B1に以下の関数を入力、入力完了時にshift+ctrl+enterキーを同時押下し、B1セルをB5セルまでコピーして下さい。
=IF(COUNTIF($A$1:$A$60,"<>")>=ROW(A1),INDEX($A$1:$A$60,SMALL(IF($A$1:$A$60<>"",ROW($A$1:$A$60),999),ROW(A1))),"")
回答有難うございます。
早速試させて頂いたところ、上手く使用することが出来ました。
今回は有難うございます。
◎なお、今回は全て良回答ですので、回答順に評価を付けさせて頂きます。

No.3
- 回答日時:
》 A列の行数が多いのでif関数も使えません
その理屈が理解できません。説明してください。
A B C D
1 20
2 20 15 2
3 25
4 15 10 4
5 25 5
… … …
59 10 59
60
D1: =IF(A1="","",ROW())
此れをズズーッと下方にセル D60 までドラッグ&ペースト
B1: =IF(ISERROR(SMALL(D$1:D$60,ROW(A1))),"",INDEX(A$1:A$60,SMALL(D$1:D$60,ROW(A1))))
此れをズズーッと下方にセル B5 までドラッグ&ペースト
早速の回答有難うございます。
ROW()関数の使い方も解らず、if関数と組み合わせる事が思い付かなかったもので、「使えません」という表現になってしまいました。
mike_gさまのをそのまま貼り付けることで、目的の値を得ることが出来ました。
今回は有難うございました。
No.2
- 回答日時:
こんばんは!
横からお邪魔します。
結果としてNo.1さんと重複してしまいますが・・・
こちらも配列数式になりますので
この画面から数式をコピー&ペーストしただけではエラーになると思います。
B1セルに↓の数式を貼り付け後、F2キーを押すか、数式バー内で一度クリックします。
編集可能になりますので、Shift+Ctrl+Enterキーで確定してみてください。
数式の前後に{ }マークが入り配列数式になります。
B2セルは
=IF(COUNTA($A$1:$A$60)<ROW(A1),"",INDEX($A$1:$A$60,SMALL(IF($A$1:$A$60<>"",ROW($1:$60)),ROW(A1))))
として、Shift+Ctrl+Enterキーで確定です。
これをB5セルまでオートフィルでコピーします。
今回はA列が文字列・数値どちらでも対応できるようにしましたが、
もし数値のみなら
=IF(COUNT($A$1:$A$60)<ROW(A1),"",INDEX($A$1:$A$60,SMALL(IF($A$1:$A$60<>"",ROW($1:$60)),ROW(A1))))
でもOKだと思います。
以上、長々と失礼しました。m(__)m
回答有難うございます。
配列式は以前試したことがありましたが、上手く出来なかったので諦めておりました。
上記をそのまま使用させて頂こうと思います。
有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VLOOKUP FALSEのこと
-
if関数の複数条件について
-
【関数】=EXACT(a1,b1) a1とb1...
-
【マクロ】数式を入力したい。...
-
同じ名前(重複)かつ 日本 ア...
-
excel
-
エクセルシートの見出しの文字...
-
エクセルの文字数列関数と競馬...
-
エクセルでフィルターした値を...
-
表計算ソフトでの様式の呼称
-
【画像あり】【関数】指定した...
-
Dir関数のDo Whileステートメン...
-
【マクロ】実行時エラー '424':...
-
Excelに貼ったXのURLのリンク...
-
【関数】3つのセルの中で最新...
-
【マクロ】【画像あり】❶ブック...
-
【マクロ】【画像あり】4つの...
-
【マクロ】【画像あり】4つの...
-
セルにぴったし写真を挿入
-
【マクロ】エラー【#DIV/0!】が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでフィルターした値を...
-
if関数の複数条件について
-
エクセルシートの見出しの文字...
-
excel
-
エクセルの文字数列関数と競馬...
-
VLOOKUP FALSEのこと
-
同じ名前(重複)かつ 日本 ア...
-
表計算ソフトでの様式の呼称
-
エクセルに写真が貼れない(フ...
-
【マクロ】数式を入力したい。...
-
【マクロ】実行時エラー '424':...
-
【画像あり】オートフィルター...
-
Office2021のエクセルで米国株...
-
【画像あり】【関数】指定した...
-
エクセルのVBAで集計をしたい
-
【マクロ】【画像あり】4つの...
-
【関数】3つのセルの中で最新...
-
【マクロ】excelファイルを開く...
-
LibreOffice Clalc(またはエク...
-
エクセルのライセンスが分かり...
おすすめ情報