• ベストアンサー

Excel 同じデータを入力出来ないように。

こんにちは。 教えて頂きたいのは、データの重複を避ける方法です。 シートのA列に番号(英数字)を入力します。 この番号は、ランダムに振ります。 B列以降に個人のデータを入力します。 A列の番号は、先に説明したとおりランダムなので、 ダブって同じ番号で、別の人を登録してしまう事があります。 色々と方法は有るでしょうが、単純にA列のセルに、 番号を入力する→既に使っている番号→入力できない。 或いは、エラーになる等、何か「簡単!」な方法は有るでしょうか? --- たくさんの回答を頂いた場合、全ての方にお礼を送る事が出来ないかも知れません。 申し訳ありません。

  • dira
  • お礼率89% (130/146)

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

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.3

重複データが入力されると、「文字が赤色になる」などの視覚的変化でユーザーに注意を促す方法でしたら、簡単です。 1. A列全体を選択 2. [書式]-[条件付き書式]クリック 3. 条件1を設定   [数式が] =COUNTIF($A:$A,$A1)>1 4. [書式]ボタンクリック   重複した場合の書式を設定(例)太字の赤文字など 5. [OK]クリック これで良いかと。 この方法は、重複データの入力を完全に防ぐことはできませんが、入力した時点で文字色などが変化しますので、重複データであることがすぐにわかります。 ただし、この方法は多用するとEXCELが非常に重たくなります。 ちなみに、A列に重複データが「入力される」のを完全に防ぐには、VBAを使うほかありません。

dira
質問者

お礼

>A列に重複データが「入力される」のを完全に防ぐには、VBAを使うほかありません。 やはり、そうですよね。 VBA簡単だとは聞くのですが・・・ ですが、教えて頂いた方法は、十分です。 この方法、使用させて頂きます。 有難う御座いました。

その他の回答 (2)

回答No.2

VBAでセルのイベントでA列の検索をかけ照合させていく 他無いような・・。 ただ、件数が増えると時間がかかるようになります が・・。

dira
質問者

お礼

そう思われますよね・・・私もVBAしかないかと・・・ 有難う御座いました。

noname#20023
noname#20023
回答No.1

番号を入力している列の隣のセルに下記の 関数を入力してみて下さい。この場合、番号入力 されているのは、A5からです。  入力した番号が既出の場合は、*が表示されます。 *の代わりに「番号が重複します」などの言葉を 入れてもいいかと思います。 =IF(COUNTIF($A$5:A5,A5)>1,"*","")

dira
質問者

お礼

有難う御座います。 番号を入れるセルへの何かしらの設定は無理なのでしょうかね・・・ しかしこの方法、私には、かなり良い回答です! 助かります。

関連するQ&A

  • EXCELの入力を簡単にする方法を教えて下さい。

    初心者なので言葉足らずになってしまうかもしれませんが教えて下さい。 EXCELのA列には番号(英数字)、B列には名称が入ったデータがあります。 別のEXCELファイルを立ち上げ、セルA1に上記A列の番号(英数字)を手入力した場合、セルB1に上記B列の名称が自動的に表示して欲しいのですが、何か良い方法はありますでしょうか?

  • ◆◆急募◆◆ エクセル 重複するデータの抽出について

    データの入力された2枚のA、Bシートが同じブックにあります。 <Aシート> D2~D500まで顧客番号が入力されています。 <Bシート> C2~C600まで顧客番号が入力されています。 AシートとBシートの顧客番号はいくつか重複しています。 その重複している番号をBシートのどこかのセルに”重複”と表示したいのですが、その方法が分かりません。最終的にオートフィルタで重複と重複していないものを分けたいのです。 大至急教えてください!宜しくお願いします。

  • EXCELで別シートから値の一致しないデータを抽出する方法

    Sheet1のA列に A1 123 A2 456 A3 789 のデータが入力されており、Sheet2のB列に B1 666 B2 123 B3 888 B4 999 B5 456 B6 888 のデータが入力されている場合に、 下の表のように、Sheet1のA4以降のセルにSheet2のB列から ・Sheet1のA1~A3に一致しないデータ ・Sheet2のB列で重複しないデータ ・降順 の3点の条件で抽出する方法を関数で教えてください。 よろしくお願いします。 Sheet1 A1 123 A2 456 A3 789 A4 999 <-ここからSheer2のデータでA1~A3以外の値でSheet2の重複をさけて降順で表示させたい A5 888 A6 666

  • 入力された整理番号の最小値から最大値までを通し番号にしてデーターを振り分ける

     初めまして、よろしくお願いします。  セル上にランダムに整理番号をA列に、そのデーターをB列に順に乗せていきます。 例)     A    B    C     1   3   100 2   5    50 3   2    10 4   9     1 5   7    20 6 7 8 9 10 11  これを任意の場所(別シート)に     A    B    C 1 2   2    10 3   3   100 4   4     0 5   5    50 6   6     0 7   7    20 8   8     0 9   9     1 10 11 12  となる様な表を作りたいと思います。A列に入力された整理番号の最小値から最大値まで、入力されなかった番号まで(ここでは4,6,8)自動で通し番号となるよう表示し、B列のデーターを振り分けられる関数をよろしくお願いします。

  • EXCELの複数シート間で重複をなくしたい

    こんにちは。 番号を入力していく際、複数シート間で番号の重複を判定していく方法はないものでしょうか?A列に番号を入力していますが、以下のような今のやり方では同一シート上でしか重複を判定できません。何とかして複数シート間での重複を避けたいのですが・・・。 シート自体の書式はどのシートも同じで、A列に番号が振ってあります。 A列を選択して条件付書式を設定しました。 =countif(A:A,A4)>1を条件として セルが赤く塗りつぶされるような書式にしました。 よろしくお願いします。

  • エクセルで表引き

    こんにちは  エクセルで「4月」シート、「5月」シートがあります。 「4月」シートのA,B,C列(A3からデータ)にデータが入っています。A列には数字(ランダムだが50行目までは重複なし、51行目から重複あり。添付画像ではソートしてありますが、実際はランダムです)、B列には文字(すべて重複なし)、C列にはローマ数字(I、II、III、IV)がランダムに入っています。 「5月」シートのA3セルに「4月」シートのA列のデータを引いてくる関数を教えてください。  つまり、「4月」シートのA列はA3からA50行目まで1から48の数字が重複せずに入力されていますが、51行目以降は、また、1から始まる数字が入力されています。今回、A列から引きたい行はA3からA50までです。また、「4月」シートのB列の文字列は今回の関数には関係しないかもしれません。  条件としては、例えば、「4月」シートのC列に「 I 」がある行のA列のデータ(数字)を引いてこられる関数を「5月」シートのA3からA20にフィルハンドルで入れたいです。データが入りきるように余裕を持たせています。「5月」シートのデータを参照する必要はなく、単純にC列に I がある行のA列のデータを引いてくるだけです。A21からA40にはC列に II がある行のA列のデータを引いてくる関数を入れたいです。以下同じ要領でA41から60にはC列に III があるもの、A61から80にはC列に IV があるものを引きたいです。 わかりにくい説明ですみません。 応用の効く初心者用の関数だと助かります。

  • エクセルで入力時データを重複を避けるには

    エクセルでB列にデータ(単語)を入力します  例えば B2のセルから データを入力してゆき  常に 上のセルと比較して 重複データなら入力しなくて良い方法はありますか (何らかの 警告が出るとか セルに色が付くなど)  すでに 条件付書式で重複しているデータを検索できましたが(以前お世話になり) 今回は 入力時に 重複させない方法が知りたいのですが 宜しくお願いします  

  • Excelをデータベースのように使用した場合 データの抽出

    Excelをデータベースのようにして使用している場合について教えて欲しいことがあります。  ・Sheetを2つ作成したとします。  ・Sheet1はたくさんのデータが入っているシートです。  ・Sheet1の名前を仮に『Data』とします。  ・Sheet2はSheet1から必要なデータを抽出してきて並べるシートです。  ・Sheet2の名前を仮に『Report』とします。  ・『Data』のA列には1~200までの数字が入力されています。  ・その数字は ランダムである上に 重複していることもあります。  ・例えばA1には「1」が入力されていて A2には「2」が入力されています。  ・しかし その後A3にもA4にもA5にも「2」が入力されています。  ・同様にA6~A15までは「3」が入力されているのです。  ・このようにA列の数字は 同じ数字が何度も重複しており その重複には規則性はありません。  ・『Report』シート上で『Data』シートからデータを抽出したいのですが A列に「1」と入力されているデータだけを取り出すのなら「VLOOKUP」でもできますよね・・・・  ・しかし A列に「2」と入力されているデータを「VLOOKUP」関数で選んでも その先頭行のデータしか読み込んできません。  ・『Data』シートのA列に入力している数字から 必要な数字が入力されている行のデータだけを 全て『Report』シートに並べようとした場合 手作業で行うとすると・・・ 『Data』でA列が「1」のデータだけを選び,それを『Report』シートに貼り付ける。次は「2」で実行する。・・・・・という作業を200回繰り返すことになりますが 簡単に行うにはどのようにすればいいのでしょうか? マクロについては あまり詳しくないので できれば関数を使いたいのですが 無理でしょうか? マクロを使うのであれば 分かりやすく教えていただきたいのですが・・・ 勝手なお願いで申し訳ありませんが よろしくお願いします。

  • Excel 列に入力のある文字列を重複なく取り出す

    Excel2003を使用しています。 下記のようなデータがあったとして、 A列に入っている文字列を右のように重複なく抜き出す 方法はありますでしょうか。 そして、それを1つのセルにまとめることはできますでしょうか? 1つのセルにまとめたものは別シートに表示したいです。 できるだけ簡単な方法がよいです。 A列   欲しいデータ   表示したい形式 A-1    A-1 A-2    A-2 A-3 →  A-3     → A-1,A-2,A-3   A-1 A-2 セルを1つにまとめる方法はいくつかわかるのですが、 列から入力のあるものを取り出す方法がわかりません。 同じような質問を探していたのですが、 見つけきれなかったので、お分かりの方がいらっしゃい ましたら、お教え下さい。 明日までの期限なのですが、どうしてもうまくできずに 困っております。よろしくお願い致します。

  • excelで入力値の有無自動検索方法を教えて

    次のような事が可能かどうかわかりませんが、何かよい方法がありましたら教えて下さい。 30列ぐらいあるデータを1行または複数行をコピーし、保存用に作ったExcelファイルのシート1に貼り付け、保存していきたいのですが、この際、データに重複がないか、自動でチェックしたいのです。 現在、シート2のA2に=COUNTA(シート1!A:A)と入力しておき、 データをシート1に貼り付けた後、重複しないキー(セルAに入る数値)を コピーしシート2のA1に貼り付けて、セルA2の値をチェックしている状態です。 この方法だと、1件ずつしかチェックできません。 しかも、何度もシートを移動し、コピー&貼り付けを行わなくてはならないので面倒なのです。 簡単のチェックできる方法はないでしょうか? アドバイスをよろしくお願い致します。

専門家に質問してみよう