Excelでリストを動的に並べ替える


1

Excelワークシートの列Aに数字のリストがあります。これらの数字を列C に順番に表示したいと思います。

列Cは、列Aが変更されると自動的に更新され、手動で何かを並べ替える必要はありません。


少なくともマクロを使用しないとExcelでこれが可能になるとは思わない。フィルタリングは常に手動で行われます。
ケビンアンソニーオペガードローズ

1
それは間違いなく@KevinAnthonyOppegaardRose ある可能;-)私の答えを参照してください。
robinCTS

1
@robinCTSありがとう:)毎日新しいことを学びましょう。いい解決策!
ケビンアンソニーオペガードローズ

@KevinAnthonyOppegaardRoseまだ行っていない場合は、AFHの好意により、さらに優れたソリューションを確認してください。
robinCTS

回答:


3

編集:AFHのおかげで、式はSMALL()関数に単純化できます!


これは、テーブル内の非常に単純な通常の式で実行できます。

ワークシートのスクリーンショット

の式C2:C8は次のとおりです。

=SMALL(A:A,ROW()-ROW($1:$1))


テーブルが必要です。テーブルのすぐ下、つまりに値を入力するA9と、列の数式がC下に拡張されます。

既存のデータのみを変更する場合、手動で数式を拡張する場合、またはデータの現在の終わりを超えて事前入力する準備ができている場合は、テーブルを省くことができます。


1
いい答えですが、=IFERROR(SMALL(A:A,ROW()-1),"")同じように機能することがわかりました。MATCH()and を追加する利点は何INDEX()ですか?そして、ROW($1:$1)常に1を返すので、リテラルを使用しないでください。これは、ヘッダー行がさらにある場合にインクリメントできますか?
AFH

@AFH良いキャッチ!。INDEX()/ の必要はMATCH()まったくなく、それらを使用する利点はありません。(私は、それらがより複雑な式に慣れされている私はこの単純な場合のためにそれらが必要なかったことを忘れてしまったことを、必要とした。)を用いた理由は、ROW($1:$1)ある正確ので、より多くのヘッダ行が追加される(又は行が上に挿入した場合表)式が入力された、表は壊れ、修正するためにリテラル値を調整する必要ありません。これにより、テーブルはほとんど防弾になります。答えをさらにシンプルなバージョンに更新しました。気にしないでください。
robinCTS

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.