Функция кодирования, поиска и сопоставления VBA

#excel #vba

Вопрос:

 Sub lookup_macro()
  Dim X As Integer
  Dim erow As Integer
  Dim ecol As Integer

erow = Sheets("sheet1").Range("a" amp; Rows.Count).End(xlUp).Row
erow1 = Sheets("sheet2").Range("a" amp; Rows.Count).End(xlUp).Row
ecol = Sheets("sheet2").Cells(1, Columns.Count).End(xlToLeft).Column

For X = 2 To erow1
  For Y = 2 To ecol

    Cells(X, Y) = Application.WorksheetFunction.VLookup(Range("a" amp; X), Sheets("sheet1").Range("a1" amp; ":f", erow), _
    Application.WorksheetFunction.Match(Cells(1, Y), Sheets("sheet1").Range("a1:f1"), 0), 0)
  Next Y
 
Next X

End Sub
 

Я пытаюсь совместить VLOOKUP() это с MATCH() функцией.
Но это дает мне ошибку с отмеченной строкой*. Кто-нибудь может помочь мне решить эту проблему?

Комментарии:

1. По крайней мере, Range("a1" amp; ":f", erow) написано неправильно — вам нужно что-то вроде Range("a1:f" amp; erow)

2. Поместите некоторые фиктивные данные и объясните, чего вы пытаетесь достичь.