エクセルで、(1)と(2)というシートがあり、それぞれにリストがあるとします。

(1)と(2)のリストを統合し、(1)にあるデータを優先として残し、重複削除したいと考えます。

その場合、どのようにしたら(1)を優先にすることができるのでしょうか?
お分かりの方、お教え下さい。よろしくお願いいたします。

A 回答 (3件)

(1)というシートがSheet1、(2)というシートSheet2とします。


両方ともA列に重複をチェックしたいデータがあるとします。

Sheet2のA1からデータが下に向けて縦に1列なら、B1に
=COUNTIF(Sheet1!A:A,A1)
と入れて、該当するところまでドラッグして式をコピーして下さい。
B列に0と表示されたのが重複してないもの、1以上の数字があればその数だけSheet1にも同じのがあります。
Sheet2のデータ範囲をB列を基準に並びかえ、B列が0のデータだけをSheet1にコピペすれば統合できますよね。
    • good
    • 0
この回答へのお礼

ありがとうございます!大変助かりました!

お礼日時:2009/05/26 17:35

#2です。

関数で
例データ
Sheet2
A列  B列
コード
a
b
s1
d2
g
h3
B2に式 IF(ISERROR(VLOOKUP(A4,Sheet1!$A$2:$A$7,1,FALSE)),MAX($B$1:B3)+1,"")
と入れて下方向に式を複写
結果
上記B列
ーー
Sheet1
コード
a
b
x
c
f
g
ーー
C列C2に =IF(A2<>"",A2,INDEX(Sheet2!$A$1:$A$10,MATCH(ROW()-COUNTA(Sheet1!$A$1:$A$10),Sheet2!$B$1:$B$10,0),1))
と入れて下方向に式を複写。
結果
C列C2から
a
b
x
c
f
g
s
d
h
#N/A
#N/Aを出さない方法は行数がA列数+Sheet2のB列のMAXより大きい場合は空白とする、IF関数を前にかぶせるが、式が長くなるので略。
ーー
以上はimogasi方式。Googleで照会すれば、この応用がたくさん出る(x)。
SheetのB列を作業列に使う点が有るが、まだわかりやすいほうかなと思う。上記Xの質問の中の私以外の回答の中に作業列を使わないが難しい式のものがある。
 
    • good
    • 0

これもまた関数でと言う話かな。


関数では苦手な部類の課題だ。
ーーー
操作で
Sheet2のデータをコピー
Sheet1の最終行の次から貼り付け
データーフィルターフィルタオプションの設定
指定した範囲
抽出先範囲を指定
重複するレコードは無視する
OK
---
例データ
Sheet1
コード
a
b
x
c
f
g
ーー
Sheet2
a
b
s
d
g
h
ーーー
Sheet1 貼り付け後
コード
a
b
x
c
f
g
a
b
s
d
g
h
ーーー
フィルタオプション後
コード
a
b
x
c
f
g
s
d
h
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

お礼日時:2009/05/28 12:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング