| 
    
     |  | おはようございます。 質問させていただきます。
 
 以下のシート(検索)があります。
 D列     E列    F列
 会社コード  会社名   検索対象コード
 12345     A会社   1111
 56789     B会社   2222
 01112     B会社   3333
 ・       ・    ・
 ・       ・    ・
 
 1.ユーザーフォームで、TextBox1・コマンドボタン1を作成。
 TextBox1に検索対象(F列)(重複のないデータです)の数字を入力、コマンドボタン1押下で検索を開始する。
 2.見つかったらそのF列となりのE列(会社名)とD列(会社コード)
 をメッセージボックスで表示。
 
 やりたい事ですが、
 検索後もしE列に同じ会社名が存在した場合(誤入力等を想定し)、
 メッセージを出し同じ会社名のセルを赤色に塗りつぶす。
 (検索対象FoundCellの隣E列FoundCell.offset(,-1)を検索するという事かと
 思いますが、どの様にに代入するのかで行き詰ってしまいました・・・。)
 
 アドバイス等いただければと思います。
 どうぞよろしくお願いいたします。
 
 
 Sub 検索()
 
 Dim Mynumber As String
 Dim FoundCell As Range
 Dim fs, msg
 
 Range("F1").Select
 Mynumber = UserForm1.TextBox1.Text
 
 Set FoundCell = Cells.Find(What:=Mynumber, After:=ActiveCell, _
 LookIn:=xlFormulas, LookAt:=xlPart, _
 SearchOrder:=xlByRows, _
 SearchDirection:=xlNext, MatchCase:=False, _
 MatchByte:=False)
 
 
 With Worksheets("検索").UsedRange.Columns(6)
 
 If Not FoundCell Is Nothing Then
 fs = FoundCell.Address
 
 msg = MsgBox("会社コードは「" & FoundCell.Offset(, -2) & "」" & Chr(13) & _
 "会社名は「" & FoundCell.Offset(, -1) & " 」でした。", vbOKCancel)
 
 If msg = vbCancel Then
 Exit Sub
 
 ?※ここにF列検索後E列会社名=FoundCell.Offset(, -1)代入の式??
 
 Do
 ?F列検索後E列会社名?.Interior.ColorIndex = 3
 Set ?F列検索後E列会社名? = .FindNext(?F列検索後E列会社名?)
 Loop While Not ?F列検索後E列会社名? Is Nothing And ?F列検索後E列会社名?.Address <> FoundCell?検索最初の隣のE列?
 
 End If
 End With
 End Sub
 
 
 ※↑?の部分が行き詰っている箇所です。
 
 |  |