エクセルで同じ氏名が入力されたら忠告メッセージを出す方法

このQ&Aのポイント
  • エクセルで同じ氏名が入力された場合、忠告メッセージを表示する方法を教えてください。入力担当者によってスペースの有無や半角・全角の違いがある場合でも、漢字のみで同一人物と認識してメッセージを表示できますか?VBA(イベント)を使用して実現できるのでしょうか?初心者のため、分かりやすく教えていただけると助かります。
  • エクセルで同じ氏名が入力された場合に忠告メッセージを表示する方法を教えてください。入力担当者によってスペースの有無や半角・全角の違いがある場合でも、漢字のみで同一人物と認識させてメッセージを表示できますか?VBA(イベント)を活用してシステムでカバーできるのでしょうか?初心者でも分かりやすい説明をお願いします。
  • エクセルのA列に氏名を入力する際、同じ氏名を誤って入力した場合に忠告メッセージを表示する方法を教えてください。スペースの有無や半角・全角の違いがある場合でも、漢字のみで同一人物と認識させて忠告メッセージを表示できますか?VBA(イベント)を利用して実現できるのか知りたいです。初心者でも理解しやすい説明をお願いします。
回答を見る
  • ベストアンサー

エクセル:同じ氏名が入力されたら忠告メッセージを出したい。

お世話になります。 たとえば、A列の縦にずっと氏名を入力していくときに、間違えて同じ氏名を入力してしまったときに忠告メッセージを出すことはできますか? (1) できる場合、どのようにしたらできるのでしょうか? (2) さらに、間違って同じ氏名の方を入力してしまうにしても、姓と名の間にスペースを ・半角で入れたり ・全角で入れたり ・スペースがなかったり 入力担当者(5人ほど)に統一させることができません。そこで、入力担当者にそれができないのならシステムでカバーしたいのです。姓と名の間にスペースがあろうがなかろうが半角であろうが全角であろうが、漢字だけで同一人物と認識させた上で(1)のようなメッセージをだすことは可能でしょうか? VBA(イベント)でできますか? 初心者であるため、わかりやすく教えてくださるなら幸いです。 よろしくお願いします。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

(1)入力規則というのがあります。 「データ」「入力規則」で「入力値の種類」を「ユーザー設定」にして 「数式」に対象がA列ならA2セルの場合「=COUNTIF($A:$A,$A2)=1」 で同じ名前の選択ができなくなります。 (2)たとえば B2=SUBSTITUTE(JIS(A2)," ","") とすれば全角でスペース無しの文字列ができます。 A2のセルの入力規則が「=COUNTIF($B:$B,$B2)=1」にすれば対応できます。 ※B列はセルの幅を0にするか、非表示にしてください。

yastaro
質問者

お礼

mshr1962さん、ありがとうございます!! できました。できました~。 入力規則も、SUBSTITUTE関数も感動です。勉強不足とはいえ、本当にすばらしい。VBAなしでこんなことができるなんて。 エラーメッセージ等も表示できました。 本当に、本当にどうもありがとうございました。^^

関連するQ&A

  • Access2003 入力規則?

    テーブルで、氏名を入力するフィールドがあります。 氏名入力はいろんな人が行っているため、氏と名の間のスペースが半角だったり全角だったり混在しています。 今後テーブルへ入力した時に、全角スペースになっているものは自動的に半角スペースに変換される方法とかはないでしょうか? できるだけ簡単な方法をよろしくお願いしますm(_ _)m

  • こんなことエクセル関数でできますか?

    お世話になります。 エクセルの1列に日本人の氏名が約2000名分並んでいます。1セル1名なので例えばA1セル~A2000セルに2000名分の氏名が入力されているといった感じです。 氏名は全角漢字で姓と名の間に全角のスペースが入っています。 ここで、この2000名の中で同姓同名(漢字が全て同じ)を即座に知る方法を探しています。 例えば、山田 太郎がA1、A409、A1765にあり、佐藤 花子がA222、A288にある事実を簡単に知る方法を探しています。 エクセルの関数を使って出来ないでしょうか? (関数が入力された1列2000行に2000名の名前を貼り付けると、B1、B409、B1765に山田 太郎が返ってくるとか・・・。) 宜しくお願いいたします。

  • 曲の情報のマイルールがあれば教えてください

    iTunesとかで曲の情報を色々入れられますよね。 曲名や歌手はもちろん作曲者や歌詞まで。 これらを入れるときの文字の扱いに頭を悩ませております。 英数字・記号の全角・半角、姓と名にスペースを入れるか?入れるなら半角か全角か。 今はプレイヤーがネットから曲情報をダウンロードしてきて自動で入れてくれますが、この情報っておそらく個人がアップしたようなものですよね? なので、この辺のルールがマチマチで揃えたいと思うんですが、じゃあどう揃えた方が良いかなと。 記号で困るのが「()」と「!」「?」 これ半角だと見づらい気がしますし、全角だと主張が激しく見えます。 カッコについては半角にして半角スペースと組み合わせることで全角に見せつつ半角なので主張も激しくなく見えるみたいな手法を使ってる人もいるようで。 「(」全角 「 (」半角スペース+半角かっこ 人名も姓名の間を空けずにくっついてる場合が多いんですけど、漢字って固まると見づらいので僕はあまり好きじゃないんですよね。 なので、ことごとく姓名の間は空けるようにしてたんですけど、漢字じゃなくて平仮名表記にしてる人とか間を空けると何か間延びしてるというか。 全てにおいて全角・半角の扱いは悩みますね。 もういっそ全角オンリーでも良いかなと思ったんですが、英文の曲名とかめっちゃ長くなりますよね。 なんか酷いのになると英字は半角なのにスペースが全角とかの情報があったりしてバランス悪いったらありゃしない。 この辺のルール、皆さん自分なりのマイルールって決めて統一してますか? もうそんなん無視してプレイヤーが自動で落としてきてくれた情報をそのまま使ってる? 僕も最初はそのまま使ってたんですが、同じアーティストでも全角・半角、姓名の間にスペースの有無かつスペースの全角・半角などで、アーティスト絞りとかで困るので統一したいなと考えてます。 あなたにとってということで結構ですので、参考までにこういう風に統一してるというものがあれば教えていただけないでしょうか?

  • 複数シートの名簿から重複する氏名を探知する方法

    お世話になります。 エクセルの操作方法を教えてください。 ここにとある名簿があるとします。4種類あります。 とりあえず、4種類の名簿をひとつのファイルにまとめます。 (シートは別々とします) さて、この4種類の名簿シートの中で、 4種類すべてに名前が登場する人物がいたら、それを特定したいと思います。 どんな方法を使えばいいでしょうか? 質問を簡単にするために、以下を定義します。 4種類の名簿は全部構成が同じものとします。 また氏名の入力も同じフォーマットであるとします。 具体的にいえばA列に 漢字姓(全角スペース)漢字名 が入っているとしましょう。 漢字姓(全角スペース)漢字名が完全一致するものだけを「一致」とします。 漢字の入力間違いや、全角スペースの入れ忘れによる部分一致は「一致」とはみなさないもの、とします。 作業のためにシートをコピーしたり、作業のために一時作業シートに4つの名簿を全部コピーするのはかまわないとします。 関数だけで実行する方法を教えてください。 よろしくお願いします。

  • VBAの記述の中で半角スペースで区切らなければいけない時、区切ってはい

    VBAの記述の中で半角スペースで区切らなければいけない時、区切ってはいけない時を教えてください。 以下は参考書のとうりに記述しました。 ------------------------------------- Sub 分割() 氏名 = Range("A2").Value 姓 = Left(氏名, 2) 名 = Mid(氏名, 4, 10) Range("B2").Value = 姓 Range("C2").Value = 名 End Sub ------------------------------------- ・氏名 = Range ・Left(氏名, 2) ・姓 = Left ・名 = Mid ・氏名, 4, 10 半角スペースは無しで記述を入力したのですが 上記の    = の前後と   2 と 4 と 10 の前に 勝手に半角スペースが入りました。 試しに Range("C2")の Range と ("C2") の間に半角スペースを入れようと Range ("C2")とすると 強制的に排除され Range("C2") に戻されました。 試しに 氏名 = Range("A2").Value の「.Value」の前に半角スペースを入れて 氏名 = Range("A2") .Value としたら記述が赤字になって エラーメッセージが出ました。 試しに Range("B2").Value = 姓 の Range の部分でRとaの間に半角スペースを入れて  R ange と記述したら確定されました。 (強制的に戻らないのでしょうか?  またエラーメッセージが出ないのでしょうか?) 1.記述の中で半角スペースを入れなければならない所。 2.記述の中で半角スペースを入れてはいけない所。 3.入力してはいけない所に半角スペースを入力した場合エラーと表示される時。 4.入力してはいけない所に半角スペースを入力した場合エラーと表示してくれない時。 5.半角スペースが必要な部分に自動で入力してくれない時。 6.半角スペースが必要な部分に自動で入力される時。    上記4種類の定義を教えていただきたいです。 NO.4とNO.5は実害があります。 NO.3とNO.6は実害はないのですが理屈を知らないので、 NO.1とNO.2を知っていないと駄目ではと思いました。 参考書では見当たりませんでした。 わかりやすいサイトがあったら教えていただけるとありがたいです。 お願いします。

  • LotusNotesで全角の空白を半角に変換したい

    LotusNotesR507を使ってます。 LotusNotesのデータベースで、氏名を入力するフィールドがあります。 深く考えてなかったのですが、姓と名の間に"全角スペース"を入れる人と "半角スペース"を入れる人がいて、結果的にビューで見たときいまいち 見た目がよくない状態です。(使用上問題はないのですが・・) そこで、全角スペースを半角スペースに変換するエージェントを作ろうと しているんですが、上手くできません。 @narrowか@ReplaceSubstringあたりを使えばいいのかと思ったのですが・・ それとも何か宣言をしなくてはいけないのが欠落してるのでしょうか? Notesはあまり詳しくないので、分かりやすく解説頂けるとあり難いです。 よろしくお願いします。

  • 半角・全角スペースチェック

    エクセルのVBAで質問です。 現在、仕事でデータのコンバートの作業をしています。 送られてくるデータはTXTもしくはCSVなのです。 それを決められたフォーマットに加工しています。 それで現在、置換やオートフィルタの組み合わせで行っている作業を 自動化できないかと思い質問させていただきます。 氏名を 性 名としたいのですが、姓と名の間に半角スペースとしたいのです。 ただ、送られてくるデータが全角スペースだったり、 半角スペースが3つあったりとバラバラの状態です。 なのでいつもは置換で半角スペースに変えながら、 オートフィルタで半角スペースひとつを含まないものを出して 修正している状態です。 VBAでこれらをチェックし、自動修正することは可能でしょうか? よろしくおねがいします。

  • 【エクセル】苗字と名前の間のスペースを取りたい

    氏名がたくさん書いてあるファイルがありまして、 その氏名の苗字と名前の間のスペースをとるのに なにかよい方法を教えてください。 例えば 仲間 由紀恵(間に全角スペース1つ) 田中  邦衛(間に全角スペース2つ) 岡村 隆志(間に半角スペース1つ) 松本 人志(間に半角スペース3つ) の様にパターンがばらばらです・・・ 半角スペース全角スペースが混ざったものもまであります。 これらを 仲間由紀恵 田中邦衛 岡村隆志 松本人志 のように表示させるにはどうしたらよいでしょうか。 よろしくお願いします。

  • 氏名を入力するとき

    こんにちわ。 氏名を入力するときいつも思うのですが名字と名前の間にスペースを開ける方法があるんでしょうか。あったら便利だなと思って。

  • エクセルシートを半角・スペースなしに

    エクセルのシートに文字列・数字が入力されています。しかし文字や数字の間に空白があったり、全角・半角がバラバラに入力さています。 これを全て、半角でスペースをなくすにはVBAにどのように書けばよいのでしょうか?

専門家に質問してみよう