В excel не удаляется строка

В excel не удаляется строка

Проблема следующая: файл Excel 2016 весит 18 метров.
Самый тяжелый лист с исходными данными без форматирования (на его основе строится несколько сводников и графиков).
На нем 24 колонки, формулы простого сложения стоят на 5 колонок.
Проблема в количестве строк. Сейчас строк с информацией 42500 (файл ежемесячно обновляется с добавлением-удалением строк, файл Не в общем доступе).
Если нажимаю cntrl+End, то количество столбцов остается 24, а строка последняя 1 048 576.
Пыталась удалять пустые строки (выделила-удалила, нажала cntrl+home, далее cntrl+S) – не получается.
Если открыть файл архивом и удалить папку drawings, то удаляется пара рисунков на соседнем листе, а размер файла не меняется.

С макросами не знакома

Помогите справиться, пожалуйста.

P.S.: если скопировать данные на другой лист и перепривязать сводники и сохранить в бинарном формате, то размер сокращается до 10 метров, но при обновлении опять “распухает”

Проблема следующая: файл Excel 2016 весит 18 метров.
Самый тяжелый лист с исходными данными без форматирования (на его основе строится несколько сводников и графиков).
На нем 24 колонки, формулы простого сложения стоят на 5 колонок.
Проблема в количестве строк. Сейчас строк с информацией 42500 (файл ежемесячно обновляется с добавлением-удалением строк, файл Не в общем доступе).
Если нажимаю cntrl+End, то количество столбцов остается 24, а строка последняя 1 048 576.
Пыталась удалять пустые строки (выделила-удалила, нажала cntrl+home, далее cntrl+S) – не получается.
Если открыть файл архивом и удалить папку drawings, то удаляется пара рисунков на соседнем листе, а размер файла не меняется.

С макросами не знакома

Помогите справиться, пожалуйста.

P.S.: если скопировать данные на другой лист и перепривязать сводники и сохранить в бинарном формате, то размер сокращается до 10 метров, но при обновлении опять “распухает” CrazyNice

Сообщение Доброго дня!

Проблема следующая: файл Excel 2016 весит 18 метров.
Самый тяжелый лист с исходными данными без форматирования (на его основе строится несколько сводников и графиков).
На нем 24 колонки, формулы простого сложения стоят на 5 колонок.
Проблема в количестве строк. Сейчас строк с информацией 42500 (файл ежемесячно обновляется с добавлением-удалением строк, файл Не в общем доступе).
Если нажимаю cntrl+End, то количество столбцов остается 24, а строка последняя 1 048 576.
Пыталась удалять пустые строки (выделила-удалила, нажала cntrl+home, далее cntrl+S) – не получается.
Если открыть файл архивом и удалить папку drawings, то удаляется пара рисунков на соседнем листе, а размер файла не меняется.

С макросами не знакома

Помогите справиться, пожалуйста.

P.S.: если скопировать данные на другой лист и перепривязать сводники и сохранить в бинарном формате, то размер сокращается до 10 метров, но при обновлении опять “распухает” Автор – CrazyNice
Дата добавления – 07.06.2018 в 12:40

Источник: www.excelworld.ru

Как удалить строки по условию?

Предположу, что почти каждый сталкивался с ситуацией, когда необходимо удалить только определенные строки: имеется большая таблица и необходимо удалить из неё только те строки, которые содержат какое-то слово (цифру, фразу). Для выполнения подобной задачи можно воспользоваться несколькими способами.

Способ первый:
Использовать встроенное средство Excel – фильтр. Сначала его необходимо “установить” на листе:

  • Выделяем таблицу с данными, включая заголовки. Если их нет – то выделяем с самой первой строки таблицы, в которой необходимо удалить данные
  • устанавливаем фильтр:
    • для Excel 2003 : ДанныеФильтрАвтофильтр
    • для Excel 2007-2010 : вкладка Данные (Data)Фильтр (Filter)(или вкладка Главная (Home)Сортировка и фильтр (Sort&Filter)Фильтр (Filter) )

Теперь выбираем условие для фильтра:

  • в Excel 2003 надо выбрать Условие и в появившейся форме выбрать непосредственно условие(“равно”, “содержит”, “начинается с” и т.д.), а напротив значение в соответствии с условием.
  • Для 2007-2010 Excel нужно выбрать Текстовые фильтры (Text Filters) и либо сразу выбрать одно из предлагаемых условий, либо нажать Настраиваемый фильтр (Custom Filter) и ввести значения для отбора в форме

После этого удалить отфильтрованные строки. В 2007 Excel могут возникнуть проблемы с удалением отфильтрованных строк, поэтому рекомендую сначала так же прочитать статью: Excel удаляет вместо отфильтрованных строк – все?! Как избежать.

Способ второй:
применить код VBA, который потребует только указания значения, которое необходимо найти в строке и номер столбца, в котором искать значение.

Sub Del_SubStr() Dim sSubStr As String ‘искомое слово или фраза(может быть указанием на ячейку) Dim lCol As Long ‘номер столбца с просматриваемыми значениями Dim lLastRow As Long, li As Long Dim lMet As Long Dim arr sSubStr = InputBox(“Укажите значение, которое необходимо найти в строке”, “Запрос параметра”, “”) If sSubStr = “” Then lMet = 0 Else lMet = 1 lCol = Val(InputBox(“Укажите номер столбца, в котором искать указанное значение”, “Запрос параметра”, 1)) If lCol = 0 Then Exit Sub lLastRow = ActiveSheet.UsedRange.Row – 1 + ActiveSheet.UsedRange.Rows.Count arr = Cells(1, lCol).Resize(lLastRow).Value Application.ScreenUpdating = 0 Dim rr As Range For li = 1 To lLastRow ‘цикл с первой строки до конца If -(InStr(arr(li, 1), sSubStr) > 0) = lMet Then If rr Is Nothing Then Set rr = Cells(li, 1) Else Set rr = Union(rr, Cells(li, 1)) End If End If Next li If Not rr Is Nothing Then rr.EntireRow.Delete Application.ScreenUpdating = 1 End Sub

Если значение sSubStr не будет указано, то будут удалены строки, ячейки указанного столбца которых, пустые.
Данный код необходимо поместить в стандартный модуль. Вызвать с листа его можно нажатием клавиш Alt + F8 , после чего выбрать Del_SubStr и нажать Выполнить. Если в данном коде в строке
If -(InStr(Cells(li, 1), sSubStr) > 0) = lMet Then
вместо = lMet указать <> lMet , то удаляться будут строки, не содержащие указанное для поиска значение. Иногда тоже удобно.
Но. Данный код просматривает строки на предмет частичного совпадения указанного значения. Например, если Вы укажете текст для поиска “отчет”, то будут удалены все строки, в которых встречается это слово(“квартальный отчет”, “отчет за месяц” и т.д.). Это не всегда нужно. Поэтому ниже приведен код, который будет удалять только строки, указанные ячейки которых равны конкретно указанному значению:

Sub Del_SubStr() Dim sSubStr As String ‘искомое слово или фраза(может быть указанием на ячейку) Dim lCol As Long ‘номер столбца с просматриваемыми значениями Dim lLastRow As Long, li As Long Dim arr sSubStr = InputBox(“Укажите значение, которое необходимо найти в строке”, “Запрос параметра”, “”) lCol = Val(InputBox(“Укажите номер столбца, в котором искать указанное значение”, “Запрос параметра”, 1)) If lCol = 0 Then Exit Sub lLastRow = ActiveSheet.UsedRange.Row – 1 + ActiveSheet.UsedRange.Rows.Count arr = Cells(1, lCol).Resize(lLastRow).Value Application.ScreenUpdating = 0 Dim rr As Range For li = 1 To lLastRow ‘цикл с первой строки до конца If CStr(arr(li, 1)) = sSubStr Then If rr Is Nothing Then Set rr = Cells(li, 1) Else Set rr = Union(rr, Cells(li, 1)) End If End If Next li If Not rr Is Nothing Then rr.EntireRow.Delete Application.ScreenUpdating = 1 End Sub

Здесь так же, как и в случае с предыдущим кодом можно заменить оператор сравнения( Cells(li, lCol) = sSubStr ) с равно на неравенство( Cells(li, lCol) <> sSubStr ) и тогда удаляться будут строки, значения ячеек которых не равно указанному.

УДАЛЕНИЕ СТРОК НА ОСНОВАНИИ СПИСКА ЗНАЧЕНИЙ(МНОЖЕСТВЕННЫЕ КРИТЕРИИ)
Иногда бывают ситуации, когда необходимо удалить строки не по одному значению, а по нескольким. Например, если строка содержит или Итог или Отчет. Ниже приведен код, при помощи которого можно удалить строки, указав в качестве критерия диапазон значений.
Значения, которые необходимо найти и удалить перечисляются на листе с именем “Лист2”. Т.е. указав на “Лист2” в столбце А(начиная с первой строки) несколько значений – они все будут удалены. Если лист называется иначе(скажем “Соответствия”) в коде необходимо будет “Лист2” заменить на “Соответствия”. Удаление строк происходит на активном в момент запуска кода листе. Это значит, что перед запуском кода надо перейти на тот лист, строки в котором необходимо удалить.

Читайте также:  Как добавить в excel много строк в

Sub Del_Array_SubStr() Dim sSubStr As String ‘искомое слово или фраза Dim lCol As Long ‘номер столбца с просматриваемыми значениями Dim lLastRow As Long, li As Long Dim avArr, lr As Long Dim arr lCol = Val(InputBox(“Укажите номер столбца, в котором искать указанное значение”, “Запрос параметра”, 1)) If lCol = 0 Then Exit Sub Application.ScreenUpdating = 0 lLastRow = ActiveSheet.UsedRange.Row – 1 + ActiveSheet.UsedRange.Rows.Count ‘заносим в массив значения листа, в котором необходимо удалить строки arr = Cells(1, lCol).Resize(lLastRow).Value ‘Получаем с Лист2 значения, которые надо удалить в активном листе With Sheets(“Лист2”) ‘Имя листа с диапазоном значений на удаление avArr = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)) End With ‘удаляем Dim rr As Range For lr = 1 To UBound(avArr, 1) sSubStr = avArr(lr, 1) For li = 1 To lLastRow ‘цикл с первой строки до конца If CStr(arr(li, 1)) = sSubStr Then If rr Is Nothing Then Set rr = Cells(li, 1) Else Set rr = Union(rr, Cells(li, 1)) End If End If DoEvents Next li DoEvents Next lr If Not rr Is Nothing Then rr.EntireRow.Delete Application.ScreenUpdating = 1 End Sub

Чтобы код выше удалял строки не по точному совпадению слов, а по частичному(например, в ячейке записано “Привет, как дела?”, а в списке есть слово “привет” – надо удалить, т.к. есть слово “привет”), то надо строку:

If CStr(arr(li, 1)) = sSubStr Then

заменить на такую:

If InStr(1, arr(li, 1), sSubStr, 1) > 0 Then

‘процедура оставляет в листе только те значения, которые перечислены в списке Sub LeaveOnlyFoundInArray() Dim sSubStr As String ‘искомое слово или фраза Dim lCol As Long ‘номер столбца с просматриваемыми значениями Dim lLastRow As Long, li As Long Dim avArr, lr As Long Dim arr Dim IsFind As Boolean lCol = Val(InputBox(“Укажите номер столбца, в котором искать указанное значение”, “www.excel-vba.ru”, 1)) If lCol = 0 Then Exit Sub Application.ScreenUpdating = 0 lLastRow = ActiveSheet.UsedRange.Row – 1 + ActiveSheet.UsedRange.Rows.Count ‘заносим в массив значения листа, в котором необходимо удалить строки arr = Cells(1, lCol).Resize(lLastRow).Value ‘Получаем с Лист2 значения, которые надо удалить в активном листе With Sheets(“Лист2”) ‘Имя листа с диапазоном значений на удаление avArr = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)) End With ‘удаляем Dim rr As Range For li = 1 To lLastRow ‘цикл с первой строки таблицы до конца IsFind = False For lr = 1 To UBound(avArr, 1) ‘цикл по списку значений на удаление sSubStr = avArr(lr, 1) If InStr(1, arr(li, 1), sSubStr, 1) > 0 Then IsFind = True End If DoEvents Next lr ‘если значение таблицы не найдено в списке – удаляем строку If Not IsFind Then If rr Is Nothing Then Set rr = Cells(li, 1) Else Set rr = Union(rr, Cells(li, 1)) End If End If DoEvents Next li If Not rr Is Nothing Then rr.EntireRow.Delete Application.ScreenUpdating = 1 End Sub

Чтобы код выше сравнивал значения таблицы со значениями списка по точному совпадению слов, а не по частичному, то надо строку:

If InStr(1, arr(li, 1), sSubStr, 1) > 0 Then

заменить на такую:

If CStr(arr(li, 1)) = sSubStr Then

Для всех приведенных кодов можно строки не удалять, а скрывать. Для этого надо строку:

If Not rr Is Nothing Then rr.EntireRow.Delete

заменить на такую:

If Not rr Is Nothing Then rr.EntireRow.Hidden = True

По умолчанию все коды начинают просмотр строк с первой по последнюю заполненную на листе. И если необходимо удалять строки не с первой или не по последнюю, то надо внести корректировки в эту строку:

For li = 1 To lLastRow ‘цикл с первой строки до конца

1 – это первая строка; lLastRow – определяется автоматически кодом и равна номеру последней заполненной строки на листе. Если надо начать удалять строки только с 7-ой строки(например, в первых 6-ти шапка), то код будет выглядеть так:

For li = 7 To lLastRow ‘цикл с седьмой строки до конца

А если надо удалять только с 3-ей по 300-ю, то код будет выглядеть так:

For li = 3 To 300 ‘цикл с третьей строки до трехсотой

Статья помогла? Поделись ссылкой с друзьями!

Источник: www.excel-vba.ru

Как удалить пустые строки в Excel быстрыми способами

При импорте и копировании таблиц в Excel могут формироваться пустые строки и ячейки. Они мешают работе, отвлекают.

Некоторые формулы могут работать некорректно. Использовать ряд инструментов в отношении не полностью заполненного диапазона невозможно. Научимся быстро удалять пустые ячейки в конце или середине таблицы. Будем использовать простые средства, доступные пользователю любого уровня.

Как в таблице Excel удалить пустые строки?

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

Пример 1 . Сортировка данных в таблице. Выделяем всю таблицу. Открываем вкладку «Данные» – инструмент «Сортировка и фильтр» – нажимаем кнопку «Сортировка». Или щелкаем правой кнопкой мыши по выделенному диапазону и делаем сортировку «от минимального к максимальному».

Пустые строки после сортировки по возрастанию оказываются внизу диапазона.

Если порядок значений важен, то до сортировки необходимо вставить пустой столбец, сделать сквозную нумерацию. После сортировки и удаления пустых строк вновь отсортировать данные по вставленному столбцу с нумерацией.

Пример 2 . Фильтр. Диапазон должен быть отформатирован как таблица с заголовками. Выделяем «шапку». На вкладке «Данные» нажимаем кнопку «Фильтр» («Сортировка и фильтр»). Справа от названия каждого столбца появится стрелочка вниз. Нажимаем – открывается окно фильтрации. Снимаем выделение напротив имени «Пустые».

Таким же способом можно удалить пустые ячейки в строке Excel. Выбираем нужный столбец и фильтруем его данные.

Пример 3 . Выделение группы ячеек. Выделяем всю таблицу. В главном меню на вкладке «Редактирование» нажимаем кнопку «Найти и выделить». Выбираем инструмент «Выделение группы ячеек».

В открывшемся окне выбираем пункт «Пустые ячейки».

Программа отмечает пустые ячейки. На главной странице находим вкладку «Ячейки», нажимаем «Удалить».

Результат – заполненный диапазон «без пустот».

Внимание! После удаления часть ячеек перескакивает вверх – данные могут перепутаться. Поэтому для перекрывающихся диапазонов инструмент не подходит.

Полезный совет! Сочетание клавиш для удаления выделенной строки в Excel CTRL+«-». А для ее выделения можно нажать комбинацию горячих клавиш SHIFT+ПРОБЕЛ.

Как удалить повторяющиеся строки в Excel?

Чтобы удалить одинаковые строки в Excel, выделяем всю таблицу. Переходим на вкладку «Данные» – «Работа с данными» – «Удалить дубликаты».

В открывшемся окне выделяем те столбцы, в которых находятся повторяющиеся значения. Так как нужно удалять повторяющиеся строки, то должны быть выделены все столбцы.

После нажатия ОК Excel формирует мини-отчет вида:

Как удалить каждую вторую строку в Excel?

Проредить таблицу можно с помощью макроса. Например, такого:

А можно ручками. Предлагаем простенький способ, доступный каждому пользователю.

  1. В конце таблицы делаем вспомогательный столбец. Заполняем чередующимися данными. Например, «о у о у о у» и т.д. Вносим значения в первые четыре ячейки. Потом выделяем их. «Цепляем» за черный крестик в правом нижнем углу и копируем буквы до конца диапазона.
  2. Устанавливаем «Фильтр». Отфильтровываем последний столбец по значению «у».
  3. Выделяем все что осталось после фильтрации и удаляем.
  4. Убираем фильтр – останутся только ячейки с «о».
Читайте также:  Excel вставить в несколько строк

Вспомогательный столбец можно устранить и работать с «прореженной таблицей».

Как удалить скрытые строки в Excel?

Однажды пользователь скрыл некую информацию в строках, чтобы она не отвлекала от работы. Думал, что впоследствии данные еще понадобятся. Не понадобились – скрытые строки можно удалить: они влияют на формулы, мешают.

В тренировочной таблице скрыты ряды 5, 6, 7:

Будем их удалять.

  1. Переходим на «Файл»-«Сведения»-«Поиск проблем» – инструмент «Инспектор документов».
  2. В отрывшемся окне ставим галочку напротив «Скрытые строки и столбцы». Нажимаем «Проверить».
  3. Через несколько секунд программа отображает результат проверки.
  4. Нажимаем «Удалить все». На экране появится соответствующее уведомление.

В результате проделанной работы скрытые ячейки удалены, нумерация восстановлена.

Таким образом, убрать пустые, повторяющиеся или скрытые ячейки таблицы можно с помощью встроенного функционала программы Excel.

Источник: exceltable.com

Как в Excel удалить пустые строки

Работая с большими объемами данных в таблицах Excel, мы часто сталкиваемся с наличием пустых строк в Excel. Для того чтобы убрать пустые строки есть несколько способов:

  • с помощью сортировки данных;
  • с помощью фильтрации данных;
  • с помощью выделения группы ячеек;
  • с помощью вспомогательного столбца;

Давайте рассмотрим каждый из них.

Как удалить пустые строки в Excel с помощью сортировки

Представим, что у нас есть таблица с данными продаж по разным странам и городам:

В этой таблице есть пустые строки. Наша задача их удалить. Мы можем сделать это поочередно, выделяя каждую пустую строку, и правой клавишей мыши удалять строки. Более простой способ это отсортировать пустые строки и затем одним движением их удалить.

Для того чтобы отсортировать данные нашей таблицы проделаем следующие шаги:

  • Выделим левой клавишей мыши диапазон данных таблицы, затем на вкладке “Данные” нажмем на кнопку “Сортировка”:

  • В появившемся диалоговом окне сортировки выберем столбец, по которому будут отсортированы данные и укажем их порядок:

  • После этого система автоматически отсортирует строки с пустыми ячейками, и разместит их внизу таблицы:

  • Затем, выделите пустые строки левой клавишей мыши и удалите их, нажав правой кнопкой мыши и выбрав пункт “Удалить”:

Если вы хотите удалить строки целиком, то я рекомендую выделять их отмечая левой клавишей мыши за порядковые номера строк. Так, система выделит все колонки в строке и вы за пару кликов сможете их удалить.

Как удалить пустые строки в Excel с помощью фильтрации

Для того чтобы удалить строки в той же самой таблице, но уже с помощью фильтрации, проделаем следующие шаги:

  • Выделим левой клавишей мыши диапазон данных таблицы, затем на вкладке “Данные” нажмем на кнопку “Фильтр”:

Важно! Для корректной фильтрации данных обязательно, перед нажатием кнопки “Фильтр”, выделите область со значениями таблицы, включая пустые строки. Если этого не сделать – фильтрация данных таблицы будет осуществляться до первой пустой строки!

  • Нажмите на выпадающий список фильтра любого из заголовков таблицы и выберите пустые строки:

  • После того как пустые строки выбраны, выделите их и удалите, как это показано на примерах выше.

У этого способа удаления пустых строк есть минус, он заключается в том, что для их удаления вам необходимо отфильтровать каждую колонку. Делать это следует внимательно, дабы не удалить строки с данными.

Как убрать пустые строки в Excel с помощью выделения группы ячеек

Для удаления пустых строк можно воспользоваться инструментом выделения группы ячеек. Для этого:

  • Выделите ячейки с данными вашей таблицы;
  • Перейдите в меню “Найти и выделить” и выберите пункт “Выделить группу ячеек”:

  • Во всплывающем окне отметьте пункт “Пустые ячейки”:

  • Система автоматически выделит все пустые ячейки:

  • Для удаления выделенных строк, нажмите на любой из правой кнопкой мыши и выберите пункт “Удалить”:

  • Затем, во всплывающем окне выберите пункт “Строку”:

Внимание! Будьте аккуратны с использованием данного способа! Удаляя выделенные ячейки, есть высокая вероятность того, что вы удалите строки с данными, например, в которых есть только одна пустая ячейка, а в соседних ячейках строки есть данные!

Как удалить пустые строки в Экселе с помощью вспомогательного столбца

Пожалуй, самый эффективный и надежный способ удаления пустых строк в Excel это создание вспомогательного столбца, рядом с таблицей.

Представим, что в нашей таблице с данными есть строки, в которых всего лишь одна ячейка пустая, а остальные ячейки в строке содержат данные (на примере ниже выделены ячейки выделены желтым цветом).

Используя раннее описанные способы, высока вероятность удалить строки с данными.

Поэтому, чтобы избежать потери данных при удалении пустых строк, создадим справа от таблицы столбец, в который вставим функцию СЧИТАТЬПУСТОТЫ, в ней укажем диапазон всех ячеек каждой строки таблицы и протянем формулу до конца таблицы:

  • Функция СЧИТАТЬПУСТОТЫ ведет подсчет пустых ячеек в указанном диапазоне. Так как столбцов в нашей таблице с данными 4 штуки, то если во вспомогательном столбце мы найдем значение “4” это будет означать, что эта строка в таблице пустая и ее можно удалить. Для этого отфильтруем значения таблицы по вспомогательному столбцу по числу “4” и определим пустые строки:

  • Пустые строки найдены. Теперь их можно выделить и удалить.

Источник: excelhack.ru

5 вариантов, как удалить пустые строки в Excel

Доброго времени суток друзья!

Эту статью я написал с целью описать 5 простых вариантов, как возможно удалить пустые строки в Excel. Частенько после импорта данных или простого копирования с другого источника мы получаем пустые строки и столбцы, что в дальнейшем может негативно сказаться и осложнить работу с информацией.

Разрывы, которые возникают в таблице благодаря возникшим пустотам, могут помешать вам эффективно ее использовать. Возникают такие проблемы:

  • ошибки при автоматическом построении разнообразных формул, графиков, диаграмм;
  • пустые строки, выполняют роль разделителя вычисляемой области и т.п.;

Избежать таких ошибок очень легко и очень просто, нужно всегда следить постоянно за качеством вашей информации и при выявлении ненужных пробелов в ваших данных, удалять их. Найти и удалить незаполненые строки, столбцы и ячейки можно 5 способами:

Сортировка

Это самый простой способ убрать с вашей рабочей области или вычисляемого диапазона чистые строки. Вам нужно выделить диапазон, выбрать на вкладке «Данные» кнопку «Сортировка» и в предоставленном диалоговом окне выбираем вариант сортировки. Программа всё отсортирует по полочкам, и вы можете удалить пустые строки. Будьте внимательны! При использовании сортировки в таблице, которая имеет в своем составе несколько столбцов, вы можете нарушить целостность информации, ваши данные могут сместиться на другие ряды. Для избегания этой проблемы при выборе сортировки, нужно выделить всю таблицу и применить сортировку для всего выделенного объема.

Если очень важен порядок следования строк в таблице, вам стоит для начала создать столбик с порядковой нумерацией рядов, а после сортировки и удаления пустых срок в таблице Excel, снова выстроить данные по этому столбику.

Фильтрация

Этот способ также является простым и доступным абсолютно любому пользователю. Для применения фильтра на таблицу вам необходимо на вкладке «Главная» в разделе «Редактирование» нажимать кнопку «Сортировка и фильтр» и в открывшемся пункте меню выбираете «Фильтр». После включения фильтра, вам нужно выбрать столбец и в выпадающем меню указать отображение пустых ячеек. Дольше вы выделяете полученные пустые строки и просто-напросто удаляете их.

Выделение группы ячеек

Я бы и этот способ причислил к достаточно простым и лёгким. Для применения этого варианта вам нужен инструмент «Выделение группы ячеек». Удалить незаполненые строки возможно в несколько этапов:

  • выделение нужного диапазона;
  • выбираем вкладку «Главная», в блоке «Редактирование», кликаем «Найти и выделить» и в выпадающем меню выбираете «Выделение группы ячеек»;
Читайте также:  Как в excel отобразить скрытые строки

  • в диалоговом окне, в разделе «Выделить» отмечаем пункт «пустые ячейки»;

  • переходим во вкладку «Главная» и нажимаем кнопку «Ячейки» и выбираем пункт «Удалить»;
  • в диалоговом окне выбираете пункт «удалить ячейки со сдвигом вверх» и все незаполненые строки будут удалены.

Формула массива

Этот способ уже на искушенного пользователя. Хотя ничего уж слишком сложного и нет, тем не менее, этот способ я увидел у Николая Павлова на его сайте и решил добавить его для полноты информации о возможностях чистки от пустых строк с применением формулы массива.

Итак, в чём же состоит этот способ по удалению пустых строк в Excel и как его применять:

  • для большей простоты дадим имена нашим диапазонам, для этого на вкладке «Формулы» нажимаете «Диспетчер имен» и присваиваете для двух диапазонов имена, например для изначальных данных с пустыми ячейками – «Пустые», а для обработанных – «БезПустых». Обязательное условие в том, что диапазоны должны иметь одинаковый результат, но вот размещение этих диапазонов могут и отличатся, это не критично;

  • следующим шагом это введение в первую ячейку второго диапазона формулу:

=ЕСЛИ( СТРОКА() — СТРОКА (БезПустых) +1> ЧСТРОК( Пустые) — СЧИТАТЬПУСТОТЫ (Пустые);”«; ДВССЫЛ ( АДРЕС (НАИМЕНЬШИЙ ((ЕСЛИ (Пустые <>»”; СТРОКА (Пустые); СТРОКА()+ ЧСТРОК( Пустые))); СТРОКА() — СТРОКА (БезПустых)+1); СТОЛБЕЦ( Пустые);4))). Да я сам знаю, что формула страшная, сам, когда ее увидел, обалдел, тем не менее, она рабочая и исправно выполняет возложенные на нее обязанности;

  • после прописания формулы, вам нужно окончить введение формулы «гарячей» комбинацией клавишCtrl+Shift+Enter, это необходимо для того, что бы формула была введена как формула массива. Теперь используя возможность в Excel как авто заполнение (копирование формулы, протягивая за крестик в углу) вы получили исходный диапазон, но уже без пустых ячеек.

Макрос

Этот вариант также не прост, но, используя предоставленные коды, и инструкции к их применению ничего сложного и неосуществимого вы не увидите. Макрос стоит использовать, если вы уверены что такую процедуру по удалению пустых строк в Excel, а также, столбцов или ячеек будет очень частым и для выполнения этих работ стоит прописать скрипт.

Перейдите во вкладку «Сервис», выберите раздел «Макрос» и нажмите кнопку «Редактор Visual Basic» или нажав ALT+F11 и в появившемся диалоговом окне редактора нажимаем «Insert»«Module». В открывшимся, пустом модуле ставим код:

  • для удаления всех незаполненых рядов в таблице:

Источник: topexcel.ru

Excel — как удалить дубликаты но оставить уникальные значения?

Всем добрый вечер! Случалось ли Вам когда нибудь работать с данными в excel строковое значение которых переваливает за пару десятков тысяч? А вот мне человеку который создает и продвигает сайты и интернет магазины приходится сталкиваться достаточно часто, особенно когда дело касается загрузки и выгрузки данных от поставщика на сайт интернет магазина. Данная заметка родилась не на пустом месте, а прямо так сказать с пылу жару! Сегодня делал загрузку на свой интернет магазин по интим тематике (см портфолио) и после того как скачал прайс от поставщика и открыв его в excel (перед загрузкой на сайт я сначала все сверяю, на случай ошибок и случайных изменений столбцов со стороны поставщика) и увидел что из 25 тыс строк более 6-8 тыс являются дубликатами, зачем и почему так делает поставщик мы сейчас обсуждать не будем, на это не хочется тратить не сил, ни времени, а просто понимаем, что так сделал программист и по другому это делать нельзя!

После долгих колупаний решил выложить Вам инструкцию как удалить дубли строк без сдвига значений вверх.

Удаление дубликатов в Microsoft Excel

Для меня человека который проводит время в отпуске и работает с мобильного интернета скорость которого измеряется от 1-2 мегабита, прокачивать в пустую такое кол-во товара с фотографиями смысла не имеет и время пустое и трафика сожрет не мало, поэтому решил повторяющиеся товары просто удалить и тут столкнулся с тем, что удалить дублирующиеся значения в столбце не так то и просто, потому как стандартная функция excel 2010 делает это топорно и после удаления дубликата двигает вверх нижние значения и в итоге у нас все перепутается в документе и будет каша.

В данной статье будет представлено два варианта решения проблемы.

1 Вариант — Стандартная функция в эксель — Удалить дубликаты

Я не могу пропустить этот вариант, хоть он и самый примитивный но может это то, что именно Вы искали для своей ситуации, поэтому давайте рассмотрим тот функционал который идет из коробки самого экселя

Для этого выделим те столбцы или область в какой надо удалить дубликаты и зайдем в меню Данные и потом выберем Удалить дубликаты, после чего у нас удаляться дубликаты, но будет сдвиг ячеек, если для вас это не критично, то этот способ Ваш!

2 Вариант — Пометить дубликаты строк в Лож или Истина

Этот вариант самый простой и отсюда сразу вылетает птичка которая ограничит этот вариант в действии, а именно в том, что им можно воспользоваться если у вас все дублирующие значения идут по порядку, а не в разнобой по всему документу

для примера возьмем два столбика с данными, в одном (пример1) дублирующие значения повторяются, а в (примере2) в разнобой и не идут друг за другом.

В примере1 мы должны в стоящей рядом ячейки нажать знак ровно и выбрать первое и нижние значение что бы формула была такая:

и нажимаем энтер, и у нас в этой ячейки в зависимости от данных должно появится значение Лож или Истина

ЛОЖ — если А1 не будет равно А2

Истина — если А1 будет ровно А2

если применить этот вариант на столбце Пример2, то как вы поняли везде будет значение Лож

Этот вариант хорош только в редких случаях, но его тоже надо знать, его ограничение в том что эта формула сравнивает себя и следующее значение, тоесть она применима только одновременно к двум ячейкам, а не ко всему столбцу. Но если у вас данные как с столбце Пример2, тогда читайте дальше )

3 Вариант — Удалить дубликаты в столбе

Вот этот вариант уже более сложный, но он решит вашу проблему на все 100% и сразу ответит на все вопросы.

Как видим у нас имеется столбец в котором все значения идут не по порядку и они перемешаны

Мы как и в прошлый раз в соседнюю ячейку вставляем следующую формулу

После применения которой у нас будет либо пуская ячейка, либо значение из ячейки напротив.

из нашего примера сразу видно, что в этом столбце было два дубля и эта формула нам значительно сэкономила времени, а дальше фильтруем второй столбец и в фильтре выбираем пустые ячейки и дальше удаляем строки, вот и все)

Таким образом я в документе который который скачал у поставщика создал перед артикулом пустой столбце и далее применил эту формулу и после отфильтровав получил документ который был на 6-8 тыс строк меньше и самое главное после удаление дубликатов у меня не поднимались значения вверх, все стояло на своих местах

Надеюсь статья была полезная, если не поняли я прикрепил к каналу видео смотрите его или задавайте вопросы,

Источник: www.nibbl.ru