|
Jakaさんへ:BOXです。
アドバイスありがとうございました。喜んで下さい。完成しました。
ヘルプのDo〜Loopは試したことがあったのですが一気に最後の値を表示し
これは使えないなと捨てていました。ところが、ループの間にメッセージ
ボックスを入れるとループを止められる事が解り、(これは収穫でした)
早速試してみました。実にOKでした。したがって、コマンドボタン2は
必要がなくなり削除しました。かみちゃんさん、PonPonさん、Jakaさん
本当にありがとうございました。VBAは奥が深いです。面白さが増しました。
ちょっとはずかしいのですが、VBAの仲間のためにコードをUPしておきます。
どなたかの、参考になればうれしいです。
今回初めての投稿でしたので、不慣れで不躾なことが多々あったかと思いますがお許し下さい。また、解らないことがあったら投稿します。よろしくご指導願います。
以下コードです。
Private Sub CommandButton1_Click()
Dim 最初に見つかったセル As Range
Dim 次に見つかったセル As Range
Dim R As String
Sheets(Sheet1).Select
With Range("C6:Z1000")
Set 最初に見つかったセル = .Find(What:=Me.TextBox1.Value, LookAt:=xlPart, SearchOrder:=xlByColumns)
If Not 最初に見つかったセル Is Nothing Then
Set 次に見つかったセル = 最初に見つかったセル
Label5.Caption = Cells(最初に見つかったセル.Row, 1)
Label6.Caption = Cells(最初に見つかったセル.Row, 2)
Label7.Caption = Range(最初に見つかったセル.Address)
Range(最初に見つかったセル.Address).Activate
R = MsgBox("【" & Me.TextBox1.Value & "】" & " を含むセルが見つかりました。次を表示しますか?", 36)
Do
Set 次に見つかったセル = .FindNext(after:=次に見つかったセル)
If 次に見つかったセル Is Nothing Or 次に見つかったセル = 最初に見つかったセル Then Exit Do
Label5.Caption = Cells(次に見つかったセル.Row, 1)
Label6.Caption = Cells(次に見つかったセル.Row, 2)
Label7.Caption = Range(次に見つかったセル.Address)
Range(次に見つかったセル.Address).Activate
R = MsgBox("【" & Me.TextBox1.Value & "】" & " を含むセルが見つかりました。次を表示しますか?", 36)
If R = 7 Then
Exit Do
End If
Loop
R = MsgBox("検索終了 " & "【" & Me.TextBox1.Value & "】" & " を含むセルはすべて表示しました。", 48)
Label5.Caption = ""
Label6.Caption = ""
Label7.Caption = ""
TextBox1.Value = ""
検索フォーム.Hide
Exit Sub
End If
R = MsgBox("この文字を含む施設は登録されていません。", 16)
TextBox1.Value = ""
End With
End Sub
|
|