У меня есть 3 столбца, 20 строк таблицы. (A1:C20)3 столбца представляют собой 1 цифру 3-значного числа.
Некоторые строки имеют 3 цифры, а некоторые - пустые.
Мне нужен способ вернуть все непустые строки из 3 цифр одну за другой, начиная с вершины, в 3 отдельных столбца. Если значения добавляются в пустые строки, вывод отражается.
Пример:
A2:C2 составляет 4 6 2
A10:C10 составляет 2 6 6
A18:C18 - 0 6 1
вывод в D1:F3 будет
4 6 2
2 6 6
0 6 1
У меня есть решение как:
Sub ReturnValued ()
Set cpySht = Sheets("Sheet1")
Set pstSht = Sheets("Sheet2")
i = 0
For Each cell In cpySht.Range(cpySht.Cells(1, "A"), cpySht.Cells(cpySht.Cells(Rows.Count, "A").End(xlUp).Row, "A"))
If cell.Value <> "" Then
i = i + 1
pstSht.Cells(i, "A") = cell.Value
End If
Next cell
End Sub
Мне просто интересно, есть ли лучшее решение или решение с формулами.
Любая помощь приветствуется! Формулы предпочтительны, макросы приветствуются.