Надо произвести поиск по колонкам, то есть по столбцам.
ub Прейре_к_запису()
' Макрос Прейре к запису
Dim nomdoma As Object
Dim a As Object
Dim b As Object
Dim ws As Worksheet
Dim c As Object
Dim d As Object
Dim e As Integer
Set a = Workbooks(1).Worksheets(1).Range("E18")
Set b = Workbooks(1).Worksheets(1).Range("E19")
If a.Value = 12 Then
Set ws = dom12
ElseIf a.Value = 13 Then
Set ws = dom13
ElseIf a.Value = 16 Then
Set ws = dom16
ElseIf a.Value = 18 Then
Set ws = dom18
ElseIf a.Value = 20 Then
Set ws = dom20
Else
MsgBox "Нет дом с токой номером!"
Exit Sub
End If
e = ws.index ' е преровняется к индексу рабочего листа'
If ws.index = dom16.index And b >= 49 Then 'MsgBox dom16.Type Обрашаемся к типу названного листа и указивем в условие if
MsgBox "В доме " & a.Value & " с номером " & _
b & " кватира не сушестьвует. Имеется 48кв! Вибирите другой номер квартиру! Ниже 49", vbAbortRetryIgnore
Exit Sub
End If
Set nomdoma = ws.Range("H:H").Find(What:=b.Value, LookIn:=xlValues, _
lookat:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
ThisWorkbook.Worksheets(e).Select
Range(nomdoma.Address).Offset(rowOffset:=0, columnOffset:=-7).Select
End Sub
Используйте функцию Range("A:A").Find