• ベストアンサー

エクセルで重複データが入力されたらアラートを表示

同一内容の文字列が入力されたら、入力規則を使ってアラートを出したいのですが、 http://kokodane.com/kan24.htm こちらを参考にやってみたのですが、これだと、直接セルに文字を入力したときのみ アラードが表示されます。 コピー⇒ペーストで同一データが入力された場合も、アラートを出したい場合は どうすれば良いでしょうか。。。。。 エクセルデータの行数が3万行程あるので、=if(count(A:A,A1)>1,"重複","")) のような関数を入れておく という方法は避けたいです。。。。

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

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

先ほど入力書式にて代替案を回答させて頂きましたが一部修正しました。 =IF(COUNTIF($A:$A,INDEX($A:$A,ROW()))>1,TRUE,FALSE) 関数部をこれに変更することで、重複している文字のみ書式が変更されるようになり、また先ほどの関数では 上から順番に入力されていくことが前提となっていて、途中に空のセルなどがあった場合やすでに入力されている 文字を変更した場合にうまくいかなかったため修正しました。

jjnnkk
質問者

お礼

ありがとうございます。 条件付き書式で設定ができるんですね!! これで重複ミスがなくせます。 関数もご丁寧に記載して頂きまして、大変ありがたかったです。 本当にありがとうございました。

その他の回答 (2)

回答No.2

どうしても入力規則でないと駄目でしょうか? 入力規則以外で色々試してみましたがコピペする際に判定が行われていないように感じるのでコピペに対応するのは無理なような気がします。(私の勉強不足で可能なのかもしれませんが) 代替案として下記の方法は如何でしょうか。 セルA:Aを選択して条件付書式を以下のように設定します。 条件1 セルの価が→数式がに変更 右のテキストボックスに以下の関数を入力 =IF(COUNTIF($A:$A,INDEX($A:$A,COUNTA($A:$A)))>1,TRUE,FALSE) 書式ボタンを押して色を赤に変更する こうしておけば手入力、コピペどちらでも重複された文字が入力された瞬間にA列の文字がすべて赤色に変更されるため重複したことが一目瞭然でわかるようになります。 (書式ボタンを押して変更する書式は一例ですのでお好みに合わせて太字にするなり、取り消し線を引くなり、色を変えるなり自由に設定してください)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

>コピー⇒ペーストで同一データが入力された場合も、アラートを出したい場合は >どうすれば良いでしょうか。。。。。  ⇒マクロになります。   避けたい理由が不明ですが、マクロを組めないのであれば現状は、   ご例示の関数を別列に仕込み(非表示としておく)、その列を入力規則で   「重複」文字列の有無でアラート表示させては如何でしょうか。   

jjnnkk
質問者

お礼

マクロのコードを教えて下さいと記載したのですが、 条件付き書式を教えていただき、そちらそ利用することにさせて頂きました。 早々に、またご丁寧に回答頂きまして、本当にありがとうございます!! つたない説明から、内容を読み取っていただきましてありがとうございました。

jjnnkk
質問者

補足

ご回答ありがとうございます。 関数を入れたくないのは、ファイルがとても重たくなってしまうからです。。。 マクロを組む場合は、データを入力した後でマクロを作動(作動という言葉が間違っているかもですが) させるということでしょうか。 可能でしたら、そのマクロのコード(こちらも言葉違いかもしれません、、)を ご教授いただけると大変嬉しいです。

関連するQ&A

  • エクセルでデータの「どこで重複か」を見つける

    エクセルでデータが「どこで重複しているか」を見つける方法として 以前質問した際に教えていただいたのが B1セルに次の式を入力して下方にオートフィルドラッグします。 =IF(A1="","",IF(COUNTIF(A$1:A1,A1)<=1,"","重複No."&COUNT(A$1:A1,A1))) これで重複があれば上の行から数えてその行のA列に有るデータが何番目の重複であるかがB列に表示されます。 ということでしたがこれには漏れがありました。 =IF(A1="","",IF(COUNTIF(A:A,A1)<=1,"","重複No."&COUNT(A:A,A1))) とすると漏れはありませんが、No.はすべて「0」となるのです。 何番目の重複かが分かる方法はありませんか。

  • エクセルでコピペの場合重複データがわからない

    こんにちは。 エクセルについて質問です。 コピーして一行の列に文字をずらーっと ペーストしていくのですが、 重複した文字は削除したいのです。 =MATCH(A65534,A:A,0)=ROW() や =COUNTIF(A:A,A1)=1 を試してみているのですが、 自分で入力したときにしかチェックされません。 コピペの場合、そのまま同じ文字でもペーストされてしまいます。 これらの関数も、先ほどようやく サイトで調べて試したくらいのほぼ初心者なのですが、 コピペの場合は、重複文字チェックは不可能でしょうか。 それとも何らかの方法があるのでしょうか。 ちなみに、フィルタで重複文字を抽出するやり方がありますが、 あとからデータが追加されるため、この方法は適しません。 どなたかわかるかたがいらっしゃいましたら よろしくお願いいたします。

  • データの重複を防ぎたい!!

    A列へのデータの重複を防ぐ為に、 データ→入力規則→ユーザー設定の数式に =COUNTIF(A:A,A1)=1と入力 しかしA列へは他から値を反映させているからなのか、うまくいきません!! 直接入力はうまくいくんですが・・・・・。 何か方法があれば教えて下さい!! エクセル2003です。よろしくおねがいします。

  • Excelの重複データについて教えて下さい。

    Excelの重複データについて教えて下さい。 A列とB列に、商品名と出荷先を日々追加していきます。 そこで、上の行にある商品名と出荷先が共に重複した場合、 エラーがでるようにしたいのですが、入力規則や条件付き書式では出来ませんでした。

  • フォーム入力値の重複チェック

    初心者です。 フォームに入力された数値の重複チェックをしたいのですが、どうしたらよいのでしょうか?品番+商品コードが重複する場合、アラートを表示させたいと考えています。     (列名) (行数)--品番---商品コード--価格--  1  --1000---1234--------1500yen--  2  --1434---1234--------500yen--  3  --1000---1234--------1500yen--   :  --1111---5098--------1500yen--  : --1299---4288--------1500yen-- 20 --1000---1234--------1500yen-- //1、3、20行目が重複する場合アラートを表示させたいと考えています。 よろしくお願いします。

  • データの重複を防ぎたい!!の続き。

    A列へのデータの重複を防ぐ為に、 データ→入力規則→ユーザー設定の数式に =COUNTIF(A:A,A1)=1と入力 しかしA列へは他から値を反映させているからなのか、うまくいきません!! 直接入力はうまくいくんですが・・・・・。 何か方法があれば教えて下さい!! エクセル2003です。よろしくおねがいします。 という質問に対し、無理という事で、A列に条件付き書式で色付け をする方法を伺いました。 しかしA列を非表示で確認する方法はないでしょうか?? あれば教えてください!! よろしくお願いします・・・・・・。

  • エクセルで重複データを表示

    現在エクセルで名簿を作成しているのですが名簿が重複している場合に下記のような動作をさせることができないか悩んでおります。ご存じの方いましたらご回答よろしくお願いします。 A列(氏名)B列(住所) A列に氏名を入力していった時に同じ名前が既に入力されたいたら すでに入力されている場所にカーソルが移動し「重複の確認メッセージを表示」その際に同姓同名の別人の場合で入力継続の場合は「元の場所にカーソルを戻す」同一人物の場合は入力したデータを「削除しカーソルはそのままの場所を保持する」ようにしたいのです。よろしくお願いします。

  • エクセルの「入力規則」を用いての重複チェックについて

    エクセルの「入力規則」を用いての重複チェックについて エクセルの「入力規則」でcountif関数を使い、重複チェックをしながら 入力をおこなっております。 重複の時メッセージがでるのですが、これに加えてどこと同じなのか その行をセレクトした状態など、該当するデータが分かるようにすることは 可能でしょうか? 何か方法がございましたら、ご助力をお願いいたします。

  • Excel 2007 重複データのチェックについて

    Excel 2007 重複データのチェックについて A列にあるデータ(約100件)で重複している値がある 行についてB列にフラグをつけます。 やりたいことはどの行とどの行が重複しているのかを すぐに分るようにしたいです。 添付画像のように重複している行に番号をつけていくことは可能でしょうか。 番号は1から順番に増えていきます。 自分は下記を考えましたが、これでは重複している行に「重複データ」と入る だけでわかりづらいです。 =IF(COUNTIF($A$2:A2,A2)>1,”重複データ”,”○”) よろしくお願いいたします。

  • エクセルの重複文字の入力規制について教えてください

    エクセルのシートで複数行列を指定してそのセル範囲内に同じ文字が入力されたとき警告をだして入力できないようにしたいのですがどうしたらいいのでしょう? 一つの列の場合だと指定してCOUNTIFとIF関数で出来るようなんですが今回のような場合この方法では無理でした。 例) A1~H5のような範囲内で重複入力を規制したいです。 ご指導ください。

専門家に質問してみよう