Макрос для копирования текста в необходимых разделах - PullRequest
0 голосов
/ 10 мая 2011

Мне нужен макрос Excel для
1. Скопируйте строку
2. Найдите другую строку ниже по столбцу
3. Вставьте скопированную строку во все ячейки между
4. Удалите 4 строки между разделами.
5. Повторите для следующего раздела, пока весь файл не будет завершен.

Данные выглядят так
ABC
(Пусто)
AM
AM
AM
Файл (ы)
(Пусто)
DEF
(Пусто)
AM
AM
AM
AM
AM
AM
Файл (ы)
(Пусто)
ГХИ
(Пусто)
PM
PM
PM
Файл (ы)
(Пусто)
JKL
(Пусто)
PM
PM
PM
PM
PM
PM
Файл (ы)

и т.д.. повторяется более миллиона строк.

Мне нужно, чтобы он выглядел как

ABC
ABC
ABC
ABC
DEF
DEF
DEF
DEF
DEF
DEF
ГХИ
ГХИ
ГХИ
ГХИ
JKL
JKL
JKL
JKL
JKL


Количество строк в каждом разделе варьируется.

1 Ответ

4 голосов
/ 11 мая 2011

Код для этого довольно прост (всего пара циклов Do ... To), но лучший способ получить решение для этого - использовать функцию записи макросов в Excel.

Если вы будете использовать VBA в будущем, и это ваш первый вход в него, нет лучшего способа изучить основы, чем нажать кнопку «Запись макроса», вручную выполнить некоторые шаги в электронной таблице и затем посмотрите на код, который сгенерировал Excel.

Вы сможете увидеть шаги, необходимые для выполнения необходимых операций. Единственное, что вам нужно будет сделать, это обернуть эти шаги в цикл и выполнить логическую проверку (If..Then), чтобы проверить строки в ячейках, а также отслеживать количество строк, которые были пропущено перед тем, как встретить следующую строку (для использования в операторе вставки).

...