Найти пустую ячейку, vlookup, скопировать, вставить - PullRequest
0 голосов
/ 27 апреля 2020

Во-первых, я ни в коем случае не разбираюсь в vba, я могу записать макрос и найти то, что мне нужно, в Интернете, а также сделать несколько настроек или вставить коды вместе, как это необходимо, но у меня возникают проблемы с тем, что я пытаюсь сделать, что

при попытке создать Excel VBA Marco для

  1. ниже определенной ячейки найти первую пустую ячейку в столбце на одном листе
  2. принять значение в той же строке в другом столбце
  3. сопоставить его с столбцом на другом листе
  4. в той же строке в другом столбце скопировать все ячейки до первой пустой ячейки
  5. go обратно на 1-й лист где была найдена 1-я пустая ячейка, и вставьте данные

ex ws1 col D ищется ниже ячейки D8, а D24 была найдена пустая ячейка, данные в B24 совпадают или vlookup в ws2 col C и соответствует C7, поэтому F7 и каждая ячейка в том же столбце, содержащем данные, копируется и вставляется в предыдущую пустую ячейку в ws1

, данные в ws2 всегда будут отличаться каждый раз, когда макрос запустить

любая помощь частично или полностью будет принята с благодарностью Спасибо

1 Ответ

0 голосов
/ 27 апреля 2020

Вы определили 5 вопросов, которые вы хотели бы задать. Нужно задать пять вопросов, каждый из которых должен подтверждаться исследованиями и написанным вами кодом. Итак, поскольку вы задали не вопрос, который, безусловно, будет удален модераторами из-за недостаточной концентрации внимания и соблюдения правил форума, я дам вам не ответ на ваш первый вопрос.

(1) Вы определить «определенную клетку». Это довольно расплывчато. В одном листе содержится более 1,4 миллиона ячеек. Любой из них может стать вашей «определенной» ячейкой, когда вы решите задуматься над проблемой. Как только вы начнете программировать, вы преодолеете это препятствие и найдете решение. Вы не должны просить решения отсюда, потому что никто не может знать, что является "определенным" для вас.

(2) "Первая пустая ячейка в столбце найдена с этим кодом. Предполагается, что «определенная ячейка» - это A10.

Dim FirstBlank As Range
Set FirstBlank = ActiveSheet.Cells(10, "A").End(XlDown)

(3) Тем не менее, довольно редко можно найти первую пустую ячейку ниже определенной ячейки. Большую часть времени вы ищите последняя использованная ячейка в конце определенного столбца.

Dim LastUsed As Range
Set LastUsed = ActiveSheet.Cells(ActiveSheet.Rows.Count, "A").End(XlUp)

Разница в том, что FirstBlank будет пустой ячейкой в ​​любом месте используемого столбца. FirstBlank.Row будет таким же, как LastUsed.Row + 1, если есть нет пустых ячеек над LastUsed в столбце A.

Как вы теперь видите, вы пришли на вечеринку довольно плохо подготовленными. По этой причине помощь, которую не дает ответа, крайне ограничена. Я надеюсь, что вы теперь поймете, почему никто не хочет заниматься всеми пятью вашими не-вопросами. Это слишком много работы для слишком маленького, если вообще есть, возврата.

Тем не менее, помощь, которую я намеревался оказать, и надежда Вы найдете полезные, проблемы как заняться проектом VBA и как воспользоваться справкой, которую так много можно найти на этом сайте. Чтобы найти правильный вопрос, часто половина ответа, потому что ни один ответ не может быть лучше, чем вопрос, который его спровоцировал.

...