Если ячейка соответствует условию в наборе данных, вставьте идентификатор терминала, соответствующий данным - PullRequest
0 голосов
/ 23 января 2020

Я пытаюсь вставить идентификаторы банкомата в столбец A для соответствующих транзакций. Идентификаторы находятся в столбце D (highlighted in excel example). Например, я бы не хотел вставлять D1 в A2-A5, а D6 в A7-A10

Пример Excel:

enter image description here

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

Из-за этого мне просто нужно было скопировать и вставить идентификаторы рядом с их транзакциями.

Я относительно новичок в VBA так что я не мог найти способ сделать это.

Любая помощь с благодарностью!

1 Ответ

0 голосов
/ 23 января 2020

Пожалуйста, попробуйте эту формулу. Вставьте его в лист A2 на листе и скопируйте вниз.

=IF(COUNTA($C2),LOOKUP(2,1/($D$1:$D1<>""),D:D),"")

Чтобы объяснить: - LOOKUP(2,1/($D$1:$D1<>""),D:D) выполняет реальную работу. =IF(COUNTA($C2),[Do the job],"") проверяет, есть ли в C2 что-то и записывает пустую строку в ячейку, если она пуста.

После получения требуемого внешнего вида вы можете sh избавиться от формул. Используйте Копировать> Вставить> Специальная вставка> Значения . для этого: формулы заменяются их значениями.

Если у вас очень длинные столбцы, выбор всего затруднен. Для этого используйте функцию GoTo: Ribbon.Home> Fine & Select> GoTo> Reference = [A1: A50000] выбирает первые 50 000 ячеек в столбце A.

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