エクセル VBAで入力フォームを作成し、そのフォームで検索をしようとF
エクセル VBAで入力フォームを作成し、そのフォームで検索をしようとFindを使って動かしたのですが、一度表示したあと、再度別の値で検索しても最初に検索したデータが表示されてしまいます。
色々調べましたが、全く分からずこちらに質問しました。VBAは全くの初心者で本やHPを見ながら作っています。勉強不足なのは承知しております。どなたかご親切な方のご指導をお待ちしています。
顧客名 ・・・・・・・・・・・
店舗名 ・・・・・・・・・・・
略称 ・・・・・ ←ここに入力して検索をクリックします。
・
・
Private Sub 検索_Click()
Dim w As Variant
Dim r As Range
ActiveSheet.Unprotect
w = 略称.Value
If w = "" Then Exit Sub
Set r = Cells.Find(What:=w, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False _
, MatchByte:=False, SearchFormat:=False)
If TypeName(r) = "Range" Then
略称.Value = Cells(ActiveCell.Row, 2).Value
顧客名.Value = Cells(ActiveCell.Row, 3).Value
店舗名.Value = Cells(ActiveCell.Row, 4).Value
締日.Value = Cells(ActiveCell.Row, 5).Value
売単価.Value = Cells(ActiveCell.Row, 6).Value
サイクル.Value = Cells(ActiveCell.Row, 7).Value
郵便番号.Value = Cells(ActiveCell.Row, 8).Value
住所.Value = Cells(ActiveCell.Row, 9).Value
電話番号.Value = Cells(ActiveCell.Row, 10).Value
FAX.Value = Cells(ActiveCell.Row, 11).Value
担当者.Value = Cells(ActiveCell.Row, 12).Value
End If
ActiveSheet.Protect
End Sub
お礼
止まりました! 回答ありがとうございます。