У меня есть следующий код, который должен перетащить формулу соответствия индекса вниз по моему столбцу в столбце AX (начиная с строки 7 и далее).vba insert index match formula down column не работает
Sub Estimated()
Dim lastRow As Long
Application.DisplayAlerts = False
Application.EnableEvents = False
Application.ScreenUpdating = False
If IsFileOpen("\\gb-ss04\001_DATA\WH DISPO\(5) WH SHARED DRIVE\(21) WAREHOUSE RECEIVINGS\Order Checker.xlsm") Then
Else
Workbooks.Open "\\gb-ss04\001_DATA\WH DISPO\(5) WH SHARED DRIVE\(21) WAREHOUSE RECEIVINGS\Order Checker.xlsm"
End If
lastRow = ThisWorkbook.Sheets(1).Range("AX" & Rows.Count).End(xlUp).Row
ThisWorkbook.Sheets(1).Range("AX7").FormulaArray = "=IFERROR(INDEX(Data!$B:$B,MATCH(1,(Home!$H10=Data!$C:$C)*(Home!$I10=Data!$D:$D)*(IF(Home!$J10<55,Home!$J10,WEEKNUM(Home!$J10,21))=Data!$F:$F),0)),""No Po Found"")"
ThisWorkbook.Sheets(1).Range("AX7").AutoFill ActiveSheet.Range("AX7:AX" & lastRow)
Application.DisplayAlerts = True
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Я получаю ошибку на этой линии:
ThisWorkbook.Sheets(1).Range("AX7").AutoFill ActiveSheet.Range("AX7:AX" & lastRow)
Автозаполнение метод диапазона не удалось.
Возможно, кто-нибудь покажет мне правильный способ сделать это? Я также не уверен, что мне нужно открыть другую книгу или нет, может кто-то прояснить?
Единственная причина, я открываю другую книгу для ссылки целей в моей формуле индекс соответствия - так оно не запутаться, где рабочая книга и т.д.
Какова ценность в LastRow? If = <7, то AutoFill завершится с ошибкой. –
@MarkFitzgerald пусто – user7415328