• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:重複しないデータ抽出方法<Excel2003>)

Excel2003で重複しないデータを抽出する方法とは?

このQ&Aのポイント
  • Excel2003で、重複しないデータのみを別シートに抽出する方法を教えてください。
  • Excel処理を行わないための方法が分からず困っています。
  • Sheet1とSheet2のデータを比較し、名前と番号が重複しないデータをSheet3に抽出したいです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

1.Sheet1の表、sheet2の表が、1行目から有効なデータが入力されている場合、1行目で行挿入を行い、有効なデータが2行目から始まるようにします。   2.次に、Sheet1の表、sheet2の表の両方とも<番号>の右の列に「列挿入」して、作業用の列を作ります。   3.Sheet1の表、Sheet2の表の両方とも、挿入した作業用の列の先頭行に、先頭行の<名前>と<番号>を連結させる式 =A2 & C2 を入力します。   どちらのシートも、表が2行目からになっていて<名前>がA列、<番号>がC列、作業用の列の先頭行はD2セルになっているとします。   4.Sheet1の表、Sheet2の表の両方とも、3.で入力した式のあるセルを下方向に連続コピーして、表の最後の行まで、式を埋めます。   表は、以下のようになった筈です。   ■Sheet 1   1:<名前>    <天候>     <番号>     <作業列> 2: 大和        雨         056       大和056 3: 山田        雨         001       山田001 4: 石川        晴         332       石川332   ■Sheet 2   1:<名前>    <天候>     <番号>     <作業列> 2: 大和        雨         056       大和056 3: 松下        曇         002       松下002 4: 山田        晴         001       山田001 5: 吉田        雨         562       吉田562 6: 石川        晴         333       石川333   5.次に、sheet2の表の<作業列>の右の列に「列挿入」して、2つ目の作業用の列を作ります。Sheet2のみに行います。   6.列挿入したら、2つ目の作業列の表の先頭行に、以下の式 =IF(ISNA(VLOOKUP(D2,Sheet1!D:D,1,FALSE)),"無し","重複") を入力します。   7.次に6.で入力した式のあるセルを下方向に連続コピーして、表の最後の行まで、式を埋めます。   表は、以下のようになった筈です。   ■Sheet 2   1:<名前>    <天候>     <番号>     <作業列>     <作業列2> 2: 大和        雨         056       大和056         重複 3: 松下        曇         002       松下002         無し 4: 山田        晴         001       山田001         重複 5: 吉田        雨         562       吉田562         無し 6: 石川        晴         333       石川333         無し   8.<作業列2>の列の、列見出し(ワークシートの上辺の「E」と書いてある灰色のバー)をクリックして、E列全てを範囲指定します。   9.メニューの「データ」⇒「フィルタ」⇒「オートフィルタ」をクリックします。すると、E1セルの所に「▼」のマークが付きます。   10.上記9.で付いた「▼」をクリックするとプルダウンメニューが出るので、プルダウンから「無し」と書かれた項目をクリックします。   すると、表が以下のようになり、重複行が見えなくなります。   ■Sheet 2   1:<名前>    <天候>     <番号>     <作業列>     <作業列2> 3: 松下        曇         002       松下002         無し 5: 吉田        雨         562       吉田562         無し 6: 石川        晴         333       石川333         無し   11.A~E列をマウスで範囲指定して、Ctrl+Cキーで選択範囲をクリップボードにコピーします。   12.Sheet3に切り換えて、貼り付けたい場所を選んで、Ctrl+Vキーで貼り付けます。   これでSheet3に以下のように目的のデータが抽出されます。   ■Sheet 3   <名前>    <天候>     <番号>  松下        曇         002 吉田        雨         562 石川        晴         333

sat_sun
質問者

お礼

どうもありがとうございました。 先ほど、処理を完了することができました。 毎日の業務として対応すること!と指令がでてどうしようか?と思っていました。 書かれている通りに処理し迷うことがありませんでした。 どうもありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (2)

回答No.3

続き。   ANo.2では「Sheet2にだけあって、Sheet1にないもの」しか見付かりません(質問文の「望む結果」を見ると、これだけで充分のようですが、念の為)   逆の「Sheet1にだけあって、Sheet2にないもの」は出ませんので、そういうデータが欲しい場合は、Sheet2で行ったのと同等の作業を、Sheet1とSheet2を逆にして行って下さい。   入力する式に「Sheet1」と言うシート指定があるので、これも逆にして「Sheet2」に置き換えて入力して下さい。  

すると、全ての回答が全文表示されます。
回答No.1

Sheet 1の<番号>の左に<番号>と<名前>連結する式を入れます 例 =C2&A 表示は”056大和”となります。 (これをKeyとします) 同様の式をSheet 2にも入れます Sheet 1とSheet 2をKeyで昇順にソートします。 Sheet 3のA列にSheet 1のKeyの列を値だけコピーします。 同様にSheet 3のD列にSheet 2のKeyの列を値だけコピーします。 Sheet 3のB列に下記の式を入れます =Vlookup(A1,D1:D10,false) Sheet 3のE列に下記の式を入れます =Vlookup(D1,A1:A10,false) このB列とE列に#N/Aと出るのが重複しないデータです。 この問題の難しいのはSheet1にあって Sheet2 にないものと、Sheet2にあって Sheet1 にないものの両方を探すことです。 少々面倒ですが、マクロを使って値のコピーをすれば簡単です。 意味を考えてやってみてください。 コピーをしないで式だけで実現するのは難しそうです。 又重複しないデータのみを自動的に表示するのも簡単ではないという感じです。 いずれもマクロを使うとできそうですが。 又もしAccessに興味があればそれこそ一発で抽出できます。

sat_sun
質問者

お礼

教えていただきありがとうございます。 一番に、連絡をいただきまして嬉しく思います。 どうもありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A