2つの列の一意の値を3番目の列にコピーする

2つの列の一意の値を3番目の列にコピーする

スプレッドシートに注文のマスターリストがあります。

列 A にはすべての注文がリストされます。列 B にはすべての注文のサブセットがリストされます。両方のリストが小さければ、これを手動で実行できますが、調べるレコードが何百もあります。

列 B に存在しない列 A の値を見つけて、列 C に配置する最適な方法は何ですか?

視覚的には、次のような列 C を作成しようとしています。

Column A       Column B       Column C
A1             A3             A1
A2             A5             A2
A3                            A4
A4
A5

列 A の一意の値を単に強調表示しようとしているのではなく、それらの一意の値を新しい列 (C) にコピーしようとしていることに注意してください。

答え1

試す:

=IFERROR(INDEX($A$1:$A$100,AGGREGATE(15,6,1/(1/(ISNA(MATCH($A$1:$A$100,$B$1:$B$100,0))*ROW($A$1:$A$100)*($A$1:$A$100<>""))),ROWS($1:1))),"")

ここに画像の説明を入力してください

答え2

これは「ヘルパー」列を使えばとても簡単です。D1入力:

=IF(ISERROR(MATCH(A1,$B$1:$B$5,0)),1,"")

そしてD2入力:

=IF(ISERROR(MATCH(A2,$B$1:$B$5,0)),1+MAX($D$1:D1),"")

下にコピーします。列有用なデータを含む各行を一意のIDでマークします。列最初に行#1からデータを取得し、次に行#2からデータを取得し、最後に行#4からデータを取得するように指示します。

そして、C1入力:

=IFERROR(INDEX($A$1:$A$5,MATCH(ROWS($1:1),D:D,0)),"")

コピーしてください:

ここに画像の説明を入力してください

答え3

列 A と列 B を比較し、列 C の一意の値を抽出する、シンプルな VLOOKUP 数式を提案します。

ここに画像の説明を入力してください

=IF(ISNA(VLOOKUP(A2,$B$2:$B$6,1,FALSE)),A2,"")

これがお役に立てば幸いです。

関連情報