я следующую формулу:Форсирование ВПР
=VLOOKUP(VLOOKUP(A1,[Clients]Sales!$B$1:$C$6,2,0),[Ledger]Sheet1!$G$1:$H$6,2,0)
, который работает, но у меня есть более 100k строк данных и занимает несколько минут, чтобы извлечь все результаты.
Можно ли ускорить работу?
Является ли VBA самым быстрым вариантом?
ИНДЕКС/МАТЧ может быть быстрее. – pnuts
С небольшими таблицами поиска должно быть много повторяющихся данных в столбце A. Если вы можете отсортировать этот столбец, вы можете уменьшить VLOOKUPs только до первого экземпляра значения, а затем просто повторить это значение для каждого последующего экземпляра , – Rory
Установите рабочий лист на «Ручное обновление», чтобы он не обновлялся при каждом изменении ячейки. В общем, встроенные функции Excel будут быстрее, чем код VBA, который вы пишете. – FreeMan