Заполните формулу VLOOKUP, используя VBA для всех строк, имеющих данные в столбце A - PullRequest
0 голосов
/ 09 декабря 2018

У меня есть набор данных, который включает в себя оценки по отдельным лицам, но в отчете отсутствуют назначения менеджера группы.У меня есть отдельная таблица, которая содержит назначения менеджера команды.Сложность состоит в том, что люди меняют менеджеров, и мне нужно привязывать оценки к менеджеру, и только новые данные будут затем передаваться новому менеджеру.

Я думаю, что у меня есть вкладка запроса, котораяЯ вставляю данные в.Существует столбец, который всегда говорит «Элемент» для каждой записи и не используется для моих целей.Поэтому я подумал, что если бы я создал управляющую кнопку, которая запускает VLOOKUP, чтобы получить назначение менеджера группы, в операторе If, для, если запись содержит «Элемент» в указанном столбце, тогда VLOOKUP запускается и заменяет работу «Элемент» наИмя менеджера.Таким образом, он сохранит оценки, привязанные к конкретному менеджеру, если кто-то поменяет менеджеров.

ПРОБЛЕМА: Кажется, что макрос работает правильно для первой строки, однако он просто повторяет одно и то же имя менеджера на протяжении всегостол, где написано «Предмет».Как я могу сделать так, чтобы данные VLOOKUP извлекались для каждой строки и заполнялись нужным менеджером команды.

Код:

Sub AssignTeams()
    If Sheets("CallScrubQuery").Range("G2") = "Item" Then
        Range("G2:G" & Range("A" & Rows.Count).End(xlUp).Row).Formula = Application.WorksheetFunction.VLookup(Sheets("CallScrubQuery").Range("A2"), Sheets("TeamAssignment").Range("$A$2:$B$200"), 2, False)
    End If
End Sub

1 Ответ

0 голосов
/ 09 декабря 2018

Если вы всегда ищите значение в A2, почему вы ожидаете, что результат будет другим?

Вы можете просто ввести формулу в первую ячейку, а затем использовать другой оператор VBA, чтобы скопировать формулу вниз.При копировании «A2» будет настроен на текущую строку.

Или напишите код, который изменит «A2» для ссылки на текущую строку.

Первый подход, вероятно, проще.Совет: используйте макрос-рекордер, чтобы понять синтаксис.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...