0

Excel に 2 つの異なる列があります。列 F (ヘッダーがある) を並べ替え、列 F の並べ替えが行われた場所に基づいて列 B を並べ替えるスクリプトを作成したいと考えています。(ただし、他の列には影響しません!)

だから私が持っているなら

    ColB       ColF
 1. Cat        2
 2. Mouse      1
 3. Dog        3

ソートは私に与えるでしょう

    ColB       ColF
 1. Mouse        1
 2. Cat          2
 3. Dog          3

これどうやってするの?並べ替えだけのマクロを記録してみたのですが、「複数選択でコマンドを実行できません。単一範囲をクリックしてやり直してください」というエラーが出ます。

4

1 に答える 1

1

私が考える最も簡単な方法は、左側に列 F を持つ垂直ルックアップ テーブルに 2 つの列を一時的にコピーすることです。

次に、列 F を並べ替え、次のような形式の VLookup で列 D を更新します。

=VLOOKUP(F1,[Temp Table Range],2,FALSE)

次に、一時テーブルを削除する場合は、列 D の数式を値に置き換えてください。

これらすべてをマクロで行うことができます。マクロにはいくつかの手順があります。私はあなたのためにそれを書くことができましたが、それは実際には Stackoverflow の目的ではありません。

楽しむ。:-)

于 2012-07-20T00:04:48.663 に答える