Я пытался использовать vlookup в VBA, и это довольно раздражает.VBA Использование Vlookup для присвоения значения ActiveCell, в другой справочной книге
ActiveCell.Value = Application.WorksheetFunction.VLookup(Cells(currentrow, 12), currwor.Worksheets("Sheet1").Range("R4C3:R160C10"), 6, False)
является код
Основные элементы, которые я использовал являются currwor, который был установлен ссылаться на другие книги, и я ищу, чтобы использовать ВПР на полигоне там.
Однако он продолжает поднимать ошибку, указав, что индекс не соответствует диапазону.
Я подозреваю, currwor
является виновным в этом Set currwor = ActiveWorkbook
(тогда рабочей книга, в которой выше выполняются открыто, и присваивается имя рабочей книги, а также.) я не могу использовать определенный диапазон, потому что я Я пытаюсь выполнить vlookup в каждой ячейке диапазона, и этот диапазон изменяется каждый раз, и currwor должен выполняться на конкретном документе, который я получаю, но имя может меняться (формат, однако, остается тем же.)
Любые предложения по этому поводу?
Редактировать: Одна ошибка заключается в том, что она не должна быть sheet1, а «Stock Report by Product». Однако это все еще вызывает ошибку индекса.
Итак, у меня есть две книги: одна из них должна быть обновлена, которую я установил как Установить currwor = ActiveWorkbook Workbooks.Open ("C: \ Users \ Nilay \ Lync Recordings \ Quality Control Database.xlsm ") Установить QCs = ActiveWorkbook Надеюсь, что это немного разъяснит. – DanyLark
, но у вас есть это в обратном порядке в этом коде: после того, как вы открыли ** QCs **, он станет активным, и какой бы лист/ячейка не был активен в этой книге, будет заполнена вашей формулой, которая возвращает 'VLOOKUP' обратно ** currwor **. – Raugmor
Не уверен, что вы имеете в виду. Да, я пытаюсь vlookup вернуться к currwor, потому что я пытаюсь извлечь обновленные цифры оттуда в QC. Однако это, по-видимому, вне пределов досягаемости. – DanyLark