Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


21229 / 76732 ←次へ | 前へ→

【60905】Find検索について
質問  mao  - 09/3/23(月) 9:24 -

引用なし
パスワード
   おはようございます。
質問させていただきます。

以下のシート(検索)があります。
 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


※↑?の部分が行き詰っている箇所です。

1 hits

【60905】Find検索について mao 09/3/23(月) 9:24 質問
【60906】Re:Find検索について つん 09/3/23(月) 11:39 回答
【60907】Re:Find検索について Jaka 09/3/23(月) 13:21 発言
【60908】Re:Find検索について mao 09/3/23(月) 17:09 お礼

21229 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free