Избавление от пустых строк после импорта (Microsoft Excel)
Много раз Том импортировал рабочий лист из другой программы в Excel, чтобы он мог работать с данными. Импорт работает нормально, но процесс импорта добавляет много (десятки, а иногда и сотни)
лишних строк, в которых нет данных. После импорта Том должен вручную удалить эти лишние строки, чтобы он мог использовать остальные данные. Том задается вопросом, есть ли способ легко избавиться от этих пустых строк.
Есть несколько способов решить эту проблему. Самый простой способ — просто отсортировать импортированные данные по столбцу по вашему выбору. Все строки, которые ничего не содержат в этом столбце, оказываются либо в конце, либо в начале данных (в зависимости от того, в каком порядке вы выполняете сортировку: по возрастанию или по убыванию), и вы можете легко удалить эти строки.
Очевидно, что, выполняя сортировку таким образом, вы можете в конечном итоге получить данные, отличные от исходного, импортированного порядка. Если вам нужно, чтобы ваши данные были в исходном порядке, но с удаленными пустыми строками, просто вставьте столбец слева или справа от ваших данных, заполните его последовательными номерами, выполните сортировку по любому столбцу, кроме добавленного столбца, и затем удалите пустые строки (только что-то в столбце нумерации).
Затем вы можете выполнить повторную сортировку на основе столбца нумерации, и ваши данные вернутся в исходный порядок.
Другой подход — выполнить следующие действия:
-
Выберите весь столбец.
-
Нажмите F5. Excel отображает диалоговое окно «Перейти».
-
Щелкните Special. Excel отображает диалоговое окно «Перейти к специальному». (См. Рис. 1.)
-
Выберите «Пробелы» и нажмите «ОК». Excel выбирает только пустые ячейки в столбце.
-
Выберите «Удалить» в меню «Правка». Excel отображает диалоговое окно «Удалить».
-
Выберите всю строку и нажмите ОК.
Если вы предпочитаете использовать макрос, чтобы избавиться от пустых строк, вы можете использовать что-то вроде следующего:
Sub DeleteEmptyRows() Dim LastRow As Long Dim J As Long LastRow = ActiveSheet.UsedRange.Rows.Count + _ ActiveSheet.UsedRange.Rows(1).Row - 1 Application.ScreenUpdating = False For J = LastRow To 1 Step -1 If Application.WorksheetFunction.CountA(Rows(J)) = 0 Then Rows(J).Delete End If Next J Application.ScreenUpdating = True End Sub
Зачем вам нужен макрос? Потому что вам может понадобиться удалять пустые строки неделю за неделей. Просто поместите макрос в свою личную книгу, и вы сможете получить к нему доступ, когда захотите.
Дополнительную информацию по этой теме можно найти на этих страницах:
http://www.cpearson.com/Excel/deleting.htm#DeleteBlankRows http://dmcritchie.mvps.org/excel/lastcell.htm
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (7988) применим к Microsoft Excel 2007, 2010, 2013 и 2016.
Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Getting_Rid_of_Empty_Rows_after_Importing [Избавление от пустых строк после импорта]
.