Страницы: 1
RSS
Удаление пустых строк в массиве без выгрузки массива. VBA
 
Доброго вечера всем. Столкнулся с проблемой при написании макроса: есть массив из 2 столбцов, в которых есть пустые строки, нужно их удалить. Помогите встроить код на Удалением "пустых строк" из массива оптимальным образом.
Оптимально полученный в результате работы моего макроса массив прогнать через функцию, а потом выгрузить массив на лист экселя. Как я ни пытался этого сделать - не выходит.

Макрос и входные данные в прикрепленном файле.
Если этот пост читает автор функции, то ему привет и большое спасибо :D . Не первый раз пользуюсь его макросами.
Ниже код моего макроса.
Скрытый текст
Изменено: Andyvier - 11.05.2014 19:56:08
 
как-то так
Изменено: Михаил С. - 11.05.2014 18:18:37 (Добавил файл)
 
можно просто условие добавить в первый цикл, и все.
вариант Михаила не смотрел
 
Вариант: выгрузить на лист и сортировать (все в коде). Пустые убегут вниз.
 
В названии темы "без выгрузки массива".
В сообщении "а потом выгрузить массив на лист экселя".
Так КАК нужно?
 
А в чем сложность?

Замените код
Код
With b
    .Clear
    .Resize(ii, 2).Value = a1
End With
 
на
Код
a1= DeleteBlankRows(a1, 1)  
With b
    .Clear
    .Resize(ubound(a1), 2).Value = a1
End With
и из массива удалятся пустые строки


Ну и, конечно, надо скопировать код функции DeleteBlankRows
и вставить его под вашим макросом
 
как я понял, задача немного в другом - удалить лишние знаки и строки из текста. Оригинал текста на "2".

Чуть переработанный код
 
Спасибо всем, разобрался
Страницы: 1
Читают тему
Наверх