Страницы: 1
RSS
Удаление пустых строк
 
Добрый день.  
Подскажтие пожалуйста, или если есть дайте какой-то макрос на удаление пустых строк с листа.  
Пробовал использовать эту функцию из Plex в Excel 2007, к сожалению не работает.  
Заранее благодарен.
 
Я делаю так:  
 
Private Sub pust_stroki()  
 
Dim iRange As Range, iRangeDelete As Range  
source.Activate  
For Each iRange In Worksheets(1).UsedRange.Rows  
If iRange.Text = "" Then  
Set iRangeDelete = Union(iRange, _  
IIf(iRangeDelete Is Nothing, iRange, iRangeDelete))  
End If  
Next  
If Not iRangeDelete Is Nothing Then iRangeDelete.EntireRow.Delete  
 
End Sub
 
самое интересное, что если все строки пустые, то цикл может длиться бесконечно.. :)
Живи и дай жить..
 
Я этот код включаю внутри другого кода, и эта "история" исключается сама собой, а проверку вначале поставить как бы не проблема...
 
а что будет в .text для строки диапазона?
Живи и дай жить..
 
согласен, решение совершенно не универсально, но я им пользуюсь и оно меня пока устраивает, Вы же можете предложить более грамотный подход - может и я возьму его на вооружение :-)
 
да нет, нормальное решение..  :)  
 
 
сам не задумывался, что будет в текст для диапазона..
Живи и дай жить..
 
{quote}{login=drinck}{date=21.12.2010 11:14}{thema=}{post}Я делаю так:  
 
Private Sub pust_stroki()  
 
Dim iRange As Range, iRangeDelete As Range  
source.Activate  
For Each iRange In Worksheets(1).UsedRange.Rows  
If iRange.Text = "" Then  
Set iRangeDelete = Union(iRange, _  
IIf(iRangeDelete Is Nothing, iRange, iRangeDelete))  
End If  
Next  
If Not iRangeDelete Is Nothing Then iRangeDelete.EntireRow.Delete  
 
End Sub{/post}{/quote}  
 
Спасибо за подсказку.  
Кстати только что попробовал такую вещь: выделяю диапазон со значениями между которыми есть пустые строки (диапазоном был один столбец), выбираю функцию удалить дубликаты. Пустые строки удаляются.  
Подходит в том случае если вам не нужны дубликаты данных.
Страницы: 1
Читают тему
Наверх