| 
    
     |  | γ さんありがとうございます。 ご指摘を参考に直してみたのですが
 Selection.FIND(what:=TanNo, lookat:=xlWhole).Activate
 でデバックがでます。
 
 Sub 検索結果()
 '
 Dim ANSYL As Integer
 Dim TanNo, FIND As Variant
 Dim X1, X2 As Worksheet
 
 '検索シート(X2)、一覧シートX1)を省略形
 Set X1 = Worksheets("DB")
 Set X2 = Worksheets("検索")
 
 '姓名を検索
 TanNo = X2.Range("A1").Value & X2.Range("A2").Value
 
 '一覧シートの中で姓名を検索
 X1.Activate
 Set FND = X1.Columns("A:A").FIND(what:=TanNo, lookat:=xlWhole)
 
 '姓名が存在すれば、アクティブにし、行番号を取得
 
 X1.Activate
 X1.Range("A:A").Select
 Selection.FIND(what:=TanNo, lookat:=xlWhole).Activate
 ANSYL = ActiveCell.Row
 
 '検索シートに結果を表示
 X2.Cells(1, 3) = X1.Cells(ANSYL, 4) '社名
 X2.Cells(1, 4) = X1.Cells(ANSYL, 5) '住所
 X2.Cells(1, 5) = X1.Cells(ANSYL, 6) '電話番号
 
 X2.Activate
 Range("D4").Select
 
 End Sub
 
 また、作成していただいたマクロなんですが、A1に姓、A2に名を入れると「該当なし」A2の名をセルから消すとマクロが実行されA3、A4、A5に値が返されます。
 
 見よう見まねで作成しているのでVBAがよく分かっていません。
 議論にならず。申し訳ありません。
 よろしくお願いします。
 
 |  |