Excelで単語リストを作りたいと思うのですが、量が膨大になるので、同じ単語や同じような意味の単語がかぶってしまう可能性が高いです。それを避けたいと思うのですが、Excelのマクロで、同じ単語が出てきた場合に教えてくれるように設定する方法を教えてください。

回答の条件
  • URL必須
  • 1人1回まで
  • 登録:
  • 終了:2007/10/29 14:50:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:SALINGER No.1

回答回数3454ベストアンサー獲得回数969

ポイント35pt

いろいろな方法はあると思うのですが、参考までにWorksheet_Changeイベントを使った例です。

書き込んだセルの上に同じ単語があればメッセージが出ます。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim i As Long
    If Target.Row = 1 Then Exit Sub
    If Target.Value = "" Then Exit Sub
    For i = 1 To Target.Row - 1
        If Cells(i, Target.Column).Value = Target.Value Then
            MsgBox "その単語は既に登録されています。"
            Exit For
        End If
    Next i
End Sub

ダミー

id:respect01

ありがとうございます!

2007/10/24 10:43:24
id:kaiton No.2

回答回数260ベストアンサー獲得回数34

ポイント35pt

VBAを使わない方法ですが、COUNTIF関数と入力規則を使った方法が次のサイトで紹介されています。

http://www.relief.jp/itnote/archives/000666.php

http://arena.nikkeibp.co.jp/article/tec/excel2/20061121/119814/


VBAのなかでも WorksheetFunction.CountIf で同じように使えますが、今回の場合はCountif関数と入力規則を使った方が簡単で反応が早いと思います。

それができない要因があるなら説明いただければ、答えられる範囲で何かいい方法がないかコメント等で補足します。

id:respect01

なるほど。こういう方法もあるんですね。参考になります。ありがとうございます!

2007/10/24 10:43:44

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 hamster078 587 476 4 2007-10-26 01:15:49

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません