Как использовать VLookup в диапазоне для обновления текстового файла? - PullRequest
0 голосов
/ 04 ноября 2019

Я пытаюсь получить поле в выходном текстовом файле для обновления ссылающегося массива (Temp), где столбец B проверяет столбец D и обновляет данные в столбце D.

ШАГИ:

Создал массив (temp), затем с помощью Index Match установил столбец B в столбец D, чтобы заполнить столбец H

Range("H2:H17") = "=INDEX(D2:D17,MATCH(B2:B17,B2:B17,0))"

Array КОД ДЛЯ ТЯНУТЬ КОЛОННУ B НА ОСНОВЕ КОЛОННЫ D вМассив:

Dim DoEdit As String
Dim Source As String
Sheets("Temp").Select
Source = Range("B2").Value

EditLine = Line

DoEdit = Range("H2")
If DoEdit <> "" Then
    Target = Application.WorksheetFunction.VLookup(Source,Range("B2:D20"), 3, False)
End If

Этот код работает только 1 для 1, если источник определен, поэтому выход «test1», поскольку для источника установлено значение B2.

Правильный вывод должен пройти черезсписок в столбце B: 96NW2702 является test1 0039430695 является test3 23832026 является test11

ВОПРОС:

Как получить «Target» для обновления текстового файла, выполнив VLookup, сравнив столбец B и столбецD .. в основном делать то, что делает index & match выше, просматривая список в столбце B в цикле? Я попытался установить источник в качестве диапазона для столбца B, но получил «объект требуется» и не может пройти через остальную часть кода.

Dim DoEdit As String
Dim Source As String
Sheets("Temp").Select
Set Source = ThisWorkbook.Worksheets("temp").Range("B2:B20")

EditLine = Line

DoEdit = Range("H2")
If DoEdit <> "" Then
        Target = Application.WorksheetFunction.VLookup(Source,Range("B2:D20"), 3, False)
End If

Иначе, проще ли просто иметь цель, равную формуле index & match выше? При использовании следующего кода с индексом и соответствием я получаю «невозможно получить свойство соответствия класса функций рабочего листа»

Target = Application.WorksheetFunction.Index(Sheets("Temp").Range("D2:D11"), Application.WorksheetFunction.Match(2, Sheets("Temp").Range("B2:B11"), 0), 1)

Спасибо за любую помощь!

...