Добрый день! Прошу почь составить макрос который будет собирать данные из трех столбцов (A, B и C) в один (D).
пример:
| A | B | C | D |
1 | a1 | b1 | c1 | a1 |
2 | a2 | b2 | c2 | a2 |
3 | a3 | b3 | | a3 |
4 | | b4 | | b1 |
5 | | | | b2 |
6 | | | | b3 |
7 | | | | b4 |
8 | | | | c1 |
9 | | | | c2 |
10 | | | | |
возможны ситуации когда столбцах A, B или C не будет данных. Например если в столбце B отсутсвуют данные то результат должен быть таким:
| A | B | C | D |
1 | a1 | | c1 | a1 |
2 | a2 | | c2 | a2 |
3 | a3 | | | a3 |
4 | | | | c1 |
5 | | | | c2 |
6 | | | | |
7 | | | | |
8 | | | | |
9 | | | | |
10 | | | | |
Просмотрев подобные темы я нашел вот такой макрос:
Код |
---|
Sub
n = 1
For c = 1 To 3
'Change Selection
Cells(1, c).Select
For r = 1 To Range(Selection, Selection.End(xlDown)).Count
Cells(n, 4) = Cells(r, c)
n = n + 1
Next r
Next c
End Sub |
Результат формируется правильный но грузит комп и выдает ошибку тут "Cells(n, 4) = Cells(r, c) . Я только начал вникать в VBA и при отсутсвии базовых знаний не понимаю что и как исправить.
Заранее блаодарю за помощь!