エクセルで、(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を見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Q【Excel】 重複した行を、1行にしたリストを作成したい。

こんにちは。

よろしくお願いいたします。
Excel2003です。

シート1

ABC
1コード品名品番
2123あいうA1234
3123あいうB7890
4123あいうC5555
5456えおかA1235
6456えおかB7891
7456えおかC5556
8456えおかA1236
9789きくけB7892
10789きくけC5557
11789きくけA1237
12789きくけB7893


シート2

AB
1コード品名
2123あいう
3456えおか
4789きくけ


上の様にシート1のA、B列の重複を除いたリストを
シート2に作りたいのですが、
各セルの式を教えてください。

Aベストアンサー

フィルタオプションの設定 でどうぞ。
あらかじめ シート2 を選択した状態から操作して下さい。

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Q(エクセル)重複値の上側数値の非表示/削除 重複した数値があった場合に1番下側にある重複値のみを残し

(エクセル)重複値の上側数値の非表示/削除
重複した数値があった場合に1番下側にある重複値のみを残し,他は非表示/削除したいのですが、関数を使って良い方法はありませんか?
上側を非表示/削除する場合はcountif関数で可能なようですが,下側となると分かりません。。

写真の例のように重複値がある場合はその1番下だけを残し、他は非表示/削除したいです。
お願いいたします。。

Aベストアンサー

[No.4]の別解
=IF(COUNTIF(A2:A999,A2)=1,A2,"")

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Qエクセルで、1つの列で文字(降順&優先順位1)と日付(昇順&優先順位2)の並べ替えはできますか?

エクセル(97)で、1つの列で文字(降順&優先順位1)と日付(昇順&優先順位2)の並べ替えはできますか?

例えば、C列に「2004/5/18~2004/8/10」までの日付と「予定」という文字列がありましたら、文字列(予定)を上にくるように並べ替えて、2番目の優先順位の日付は「古い順(昇順)」に並べていきたいのです。。

やりかたをご存知のかた、いらっしゃいましたらよろしくお願いします

Aベストアンサー

まず、全体を選択して降順で並べ替えます。
文字列が上に来ると思うので、次に下に来た日付部分をすべて選択します。
そして昇順で並べ替えて下さい。
これで大丈夫かと。

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

QEXCELの入力規則のリストについて。その1(重複セル)

Excel2000で入力規則のリストを設定しようとしています。
リストの元になる範囲のデータには重複するものがあります。
その重複するものを各1つずつリストに表示させることはできるでしょうか?



みかん   みかん
りんご → りんご
みかん   ぶどう
ぶどう

VBAは苦手なので、元になる範囲から関数などで別な場所に重複しない表を作り、それをリストに使用する方法でもいいなと思っています。
元になる範囲が変更される度に、更新や修正をしないでよい方法があれば助かるのですが。

どうかよろしくお願いします。

もう1つ「EXCELの入力規則のリストについて。その2(IFで空白にしたセル)」という質問もしておりますので、何卒そちらもよろしくお願いします。

Aベストアンサー

こんばんは。

もとのリストがA2:A10にあるとします。
B2に
=IF(A2="","",IF(COUNTIF(A$2:A2,A2)=1,MAX(B$1:B1)+1,""))

MAXの中は、元のリストの一行上から始めます。

C2に
=IF(ROW(A1)>MAX(B:B),"",INDEX(A:A,MATCH(ROW(A1),B:B,0)))
と書いて、B2:C2を下のほうまでずるーとコピーします。

C列の式の中にROW(A1)という部分がありますが、
元のデータの範囲が何行目から始まっていてもA1に
してください。

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Qエクセルで重複する文字列を取り出し、取出した文字列をそれぞれ買うん等する方法?

エクセルで重複する文字列を取り出し、取出した文字列をそれぞれ買うん等する方法?

----------------
あああ
----------------
いいいいい
----------------
ううううう
---------------
あああ
--------------
いいいいい
--------------
とあった場合 あああが2つ、いいいいいが2つ、うううううが1つと数える関数またはサンプルコードを教えて下さい。

Aベストアンサー

重複を許さない抽出なら
「データ」「フィルタ」「フィルタオプションの設定」で
「重複するレコードは無視する」にチェック
重複する列が非表示になります。

カウントについては元データがA列ならB列に
B2=COUNTIF(A:A,A2)
として下方にコピーしてください。


人気Q&Aランキング

おすすめ情報