У меня проблема с формулой в VBA. Я представлю это шаг за шагом, чтобы быть понятным для каждого из вас: 1. У меня есть список политик на листе 1 (как представлено ниже, около 20 000 строк)
![enter image description here](https://i.stack.imgur.com/y3psZ.png)
На втором листе у меня есть список тарифов, представленных под кодами AD:
![enter image description here](https://i.stack.imgur.com/mOSbp.png)
Я хочу создать для каждой политики из лист1 в листе 2, где - один код «C» (пример для первой политики в листе 1), код для политики в листе 1, а также на основе кода, сгенерированного из листа 1 (наш случай для первой политики »C ") цены представлены в том же листе2 в левой части. Для этого я пытался кодировать формулу de excel
=VLOOKUP(A2,A:C,MATCH(G1,B2:D2,0),FALSE)
на VBA и получаю следующий результат:
Table.Cells(age, 21).Value = WorksheetFunction.VLookup(Table.Range("A" & age), Table.Range("A:M"), WorksheetFunction.Match(q_table, Table.Range("B3:M3"), 0), False)
Однако эта формула (Excel one, а также VBA) не возвращает ставки из правильного кода (код дела нашей первой политики "C"), а также ставки из предыдущего столбца, соответственно из кода "B".
Подскажите, пожалуйста, как мне управлять правильно? Спасибо
@ jamheadart сказал мне попробовать версию VLOOKUP (A2, A: C, MATCH (G1, B2: D2,0) + 1, FALSE) в VBA. Кажется, все в порядке.