У меня есть уравнение совпадения индекса, которое я пытаюсь преобразовать в код VBA:
=IFERROR(INDEX(Comments!$C$2:$C$100,MATCH(C8,Comments!$A$2:$A$100,0)),"COMMENT REQUIRED")
Вот что я придумала:
DestinationSheet.Cells(DestinationRow, 8).Value = Application.WorksheetFunction.Index(Sheets("Comments").Range("$C$2:$C$100"), Application.WorksheetFunction.Match((DestinationSheet.Range(DestinationRow, 3)), Sheets("Comments").Range("$A$2:$A$100"), 0), 1)
Однако яполучаю ошибку.По сути, первая формула находит значение, расположенное на другом листе, на основе значений в столбце C.
Для второго бита кода я пытаюсь просмотреть те же значения на другом листе, но на основезначение в столбце 3 строки, определенной как DestinationRow.Я делаю это в коде VBA, потому что номера строк сопоставляемых индексов неизвестны, поэтому я должен использовать DestinationRow, чтобы указать строку, а не жестко кодировать значения, как в первой формуле.