Бывают ситуации, когда необходимо отрезать/ удалить строго определенное количество символов в тексте справа или слева. Например, когда вы имеете список адресов, и вначале каждого адреса стоит шестизначный индекс. Нужно убрать почтовые индексы из списка, но через замену их не уберешь, так как они имеют совершенно разные значения и не находятся опцией замены.
Функции, которая отрезает лишнее количество символов в ячейке, найти не удается, но существует система из двух функций, которые можно применить. Это система из функции ЛЕВСИМВ (или ПРАВСИМВ) и функции ДЛСТР (длина строки).
Рассмотрим их применение.
Вначале находим количество символов в тексте при помощи функции ДЛСТР. Для этого запускаем менеджер функций, выбираем ДЛСТР, указываем ячейку с текстом. Функция ДЛСТР посчитает количество символов.
Зная длину лишнего текста — 6 знаков в индексе, вычитаем их из общего числа символов посчитанных функцией ДЛСТР и получаем то количество символов, которое должно остаться в тексте, когда удалим индекс.
Полученное значение – количество оставляемых в тексте знаков, вписываем в функцию ЛЕВСИМВ или ПРАВСИМВ. Если нужно удалить знаки справа, то используем ЛЕВСИМВ, если слева, то ПРАВСИМВ. Нажимаем «Enter». Функция ЛЕВСИМВ или ПРАВСИМВ присваивает ячейке нужное нам количество символов из текста в новую ячейку, исключая ненужный нам индекс.
Для уменьшения количества ячеек с расчетами эти функции можно записать в систему следующего вида:
ПРАВСИМВ(…*¹;(ДЛСТР(…*¹)-6)).
Где …*¹- адрес ячейки, из которой берем текст.
При импорте и копировании таблиц в Excel могут формироваться пустые строки и ячейки. Они мешают работе, отвлекают.
Некоторые формулы могут работать некорректно. Использовать ряд инструментов в отношении не полностью заполненного диапазона невозможно. Научимся быстро удалять пустые ячейки в конце или середине таблицы. Будем использовать простые средства, доступные пользователю любого уровня.
Как в таблице Excel удалить пустые строки?
Чтобы показать на примере, как удалить лишние строки, для демонстрации порядка действий возьмем таблицу с условными данными:
Пример 1. Сортировка данных в таблице. Выделяем всю таблицу. Открываем вкладку «Данные» — инструмент «Сортировка и фильтр» — нажимаем кнопку «Сортировка». Или щелкаем правой кнопкой мыши по выделенному диапазону и делаем сортировку «от минимального к максимальному».
Пустые строки после сортировки по возрастанию оказываются внизу диапазона.
Если порядок значений важен, то до сортировки необходимо вставить пустой столбец, сделать сквозную нумерацию. После сортировки и удаления пустых строк вновь отсортировать данные по вставленному столбцу с нумерацией.
Пример 2. Фильтр. Диапазон должен быть отформатирован как таблица с заголовками. Выделяем «шапку». На вкладке «Данные» нажимаем кнопку «Фильтр» («Сортировка и фильтр»). Справа от названия каждого столбца появится стрелочка вниз. Нажимаем – открывается окно фильтрации. Снимаем выделение напротив имени «Пустые».
Таким же способом можно удалить пустые ячейки в строке Excel. Выбираем нужный столбец и фильтруем его данные.
Пример 3. Выделение группы ячеек. Выделяем всю таблицу. В главном меню на вкладке «Редактирование» нажимаем кнопку «Найти и выделить». Выбираем инструмент «Выделение группы ячеек».
В открывшемся окне выбираем пункт «Пустые ячейки».
Программа отмечает пустые ячейки. На главной странице находим вкладку «Ячейки», нажимаем «Удалить».
Результат – заполненный диапазон «без пустот».
Внимание! После удаления часть ячеек перескакивает вверх – данные могут перепутаться. Поэтому для перекрывающихся диапазонов инструмент не подходит.
Полезный совет! Сочетание клавиш для удаления выделенной строки в Excel CTRL+«-». А для ее выделения можно нажать комбинацию горячих клавиш SHIFT+ПРОБЕЛ.
Как удалить повторяющиеся строки в Excel?
Чтобы удалить одинаковые строки в Excel, выделяем всю таблицу. Переходим на вкладку «Данные» — «Работа с данными» — «Удалить дубликаты».
В открывшемся окне выделяем те столбцы, в которых находятся повторяющиеся значения. Так как нужно удалять повторяющиеся строки, то должны быть выделены все столбцы.
После нажатия ОК Excel формирует мини-отчет вида:
Как удалить каждую вторую строку в Excel?
Проредить таблицу можно с помощью макроса. Например, такого:
А можно ручками. Предлагаем простенький способ, доступный каждому пользователю.
- В конце таблицы делаем вспомогательный столбец. Заполняем чередующимися данными. Например, «о у о у о у» и т.д. Вносим значения в первые четыре ячейки. Потом выделяем их. «Цепляем» за черный крестик в правом нижнем углу и копируем буквы до конца диапазона.
- Устанавливаем «Фильтр». Отфильтровываем последний столбец по значению «у».
- Выделяем все что осталось после фильтрации и удаляем.
- Убираем фильтр – останутся только ячейки с «о».
Вспомогательный столбец можно устранить и работать с «прореженной таблицей».
Как удалить скрытые строки в Excel?
Однажды пользователь скрыл некую информацию в строках, чтобы она не отвлекала от работы. Думал, что впоследствии данные еще понадобятся. Не понадобились – скрытые строки можно удалить: они влияют на формулы, мешают.
В тренировочной таблице скрыты ряды 5, 6, 7:
Будем их удалять.
- Переходим на «Файл»-«Сведения»-«Поиск проблем» — инструмент «Инспектор документов».
- В отрывшемся окне ставим галочку напротив «Скрытые строки и столбцы». Нажимаем «Проверить».
- Через несколько секунд программа отображает результат проверки.
- Нажимаем «Удалить все». На экране появится соответствующее уведомление.
В результате проделанной работы скрытые ячейки удалены, нумерация восстановлена.
Таким образом, убрать пустые, повторяющиеся или скрытые ячейки таблицы можно с помощью встроенного функционала программы Excel.
Хитрости »
28 Май 2011 644806 просмотров
Как удалить строки по условию?
Предположу, что почти каждый сталкивался с ситуацией, когда необходимо удалить только определенные строки: имеется большая таблица и необходимо удалить из неё только те строки, которые содержат какое-то слово (цифру, фразу). Для выполнения подобной задачи можно воспользоваться несколькими способами.
Способ первый:
Использовать встроенное средство 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("Укажите значение, которое необходимо найти в строке", "www.excel-vba.ru", "") If sSubStr = "" Then lMet = 0 Else lMet = 1 lCol = Val(InputBox("Укажите номер столбца, в котором искать указанное значение", "www.excel-vba.ru", 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("Укажите значение, которое необходимо найти в строке", "www.excel-vba.ru", "") lCol = Val(InputBox("Укажите номер столбца, в котором искать указанное значение", "www.excel-vba.ru", 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» заменить на «Соответствия». Удаление строк происходит на активном в момент запуска кода листе. Это значит, что перед запуском кода надо перейти на тот лист, строки в котором необходимо удалить.
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("Укажите номер столбца, в котором искать указанное значение", "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 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
УДАЛЕНИЕ ИЗ ЛИСТА СТРОК, КОТОРЫХ НЕТ В СПИСКЕ ЗНАЧЕНИЙ(МНОЖЕСТВЕННЫЕ КРИТЕРИИ)
Т.к. в последнее время стало поступать все больше и больше вопросов как не удалять значения по списку, а наоборот — оставить в таблице только те значения, которые перечислены в списке — решил дополнить статью и таким кодом.
Значения, которые необходимо оставить перечисляются на листе с именем «Лист2». Т.е. указав на «Лист2» в столбце А(начиная с первой строки) несколько значений — после работы кода на листе будут оставлены только те строки, в которых присутствует хоть одно из перечисленных в списке значений. Если лист называется иначе(скажем «Соответствия») в коде необходимо будет «Лист2» заменить на «Соответствия». Удаление строк происходит на активном в момент запуска кода листе. Это значит, что перед запуском кода надо перейти на тот лист, строки в котором необходимо удалить.
В отличие от приведенных выше кодов, данный код ориентирован на то, что значения в списке указаны не полностью. Т.е. если необходимо оставить только те ячейки, в которых встречается слово «активы», то в списке надо указать только это слово. В этом случае если в ячейке будет записана фраза «Нематериальные активы» или «Активы сторонние» — эти ячейки не будут удалены, т.к. в них встречается слово «активы». Регистр букв при этом неважен.
'процедура оставляет в листе только те значения, которые перечислены в списке 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 'цикл с третьей строки до трехсотой
Так же см.:
Что такое макрос и где его искать?
Что такое модуль? Какие бывают модули?
Как создать кнопку для вызова макроса на листе
Удаление всех пустых строк в таблице
Удаление пустых столбцов на листе
Установить Быстрый фильтр
Фильтр
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
Содержание
- Процесс удаления строк
- Способ 1: одиночное удаление через контекстное меню
- Способ 2: одиночное удаление с помощью инструментов на ленте
- Способ 3: групповое удаление
- Способ 4: удаление пустых элементов
- Способ 5: использование сортировки
- Способ 6: использование фильтрации
- Способ 7: условное форматирование
- Вопросы и ответы
Во время работы с программой Excel часто приходится прибегать к процедуре удаления строк. Этот процесс может быть, как единичным, так и групповым, в зависимости от поставленных задач. Особый интерес в этом плане представляет удаление по условию. Давайте рассмотрим различные варианты данной процедуры.
Процесс удаления строк
Удаление строчек можно произвести совершенно разными способами. Выбор конкретного решения зависит от того, какие задачи ставит перед собой пользователь. Рассмотрим различные варианты, начиная от простейших и заканчивая относительно сложными методами.
Способ 1: одиночное удаление через контекстное меню
Наиболее простой способ удаления строчек – это одиночный вариант данной процедуры. Выполнить его можно, воспользовавшись контекстным меню.
- Кликаем правой кнопкой мыши по любой из ячеек той строки, которую нужно удалить. В появившемся контекстном меню выбираем пункт «Удалить…».
- Открывается небольшое окошко, в котором нужно указать, что именно нужно удалить. Переставляем переключатель в позицию «Строку».
После этого указанный элемент будет удален.
Также можно кликнуть левой кнопкой мыши по номеру строчки на вертикальной панели координат. Далее следует щелкнуть по выделению правой кнопкой мышки. В активировавшемся меню требуется выбрать пункт «Удалить».
В этом случае процедура удаления проходит сразу и не нужно производить дополнительные действия в окне выбора объекта обработки.
Способ 2: одиночное удаление с помощью инструментов на ленте
Кроме того, эту процедуру можно выполнить с помощью инструментов на ленте, которые размещены во вкладке «Главная».
- Производим выделение в любом месте строчки, которую требуется убрать. Переходим во вкладку «Главная». Кликаем по пиктограмме в виде небольшого треугольника, которая расположена справа от значка «Удалить» в блоке инструментов «Ячейки». Выпадает список, в котором нужно выбрать пункт «Удалить строки с листа».
- Строчка будет тут же удалена.
Также можно выделить строку в целом, щелкнув левой кнопки мыши по её номеру на вертикальной панели координат. После этого, находясь во вкладке «Главная», жмем на значок «Удалить», размещенный в блоке инструментов «Ячейки».
Способ 3: групповое удаление
Для выполнения группового удаления строчек, прежде всего, нужно произвести выделение необходимых элементов.
- Для того, чтобы удалить несколько рядом расположенных строчек, можно выделить смежные ячейки данных строк, находящиеся в одном столбце. Для этого зажимаем левую кнопку мыши и курсором проводим по этим элементам.
Если диапазон большой, то можно выделить самую верхнюю ячейку, щелкнув по ней левой кнопкой мыши. Затем зажать клавишу Shift и кликнуть по самой нижней ячейке того диапазона, который нужно удалить. Выделены будут все элементы, находящиеся между ними.
В случае, если нужно удалить строчные диапазоны, которые расположены в отдалении друг от друга, то для их выделения следует кликнуть по одной из ячеек, находящихся в них, левой кнопкой мыши с одновременно зажатой клавишей Ctrl. Все выбранные элементы будут отмечены.
- Чтобы провести непосредственную процедуру удаления строчек вызываем контекстное меню или же переходим к инструментам на ленте, а далее следуем тем рекомендациям, которые были даны во время описания первого и второго способа данного руководства.
Выделить нужные элементы можно также через вертикальную панель координат. В этом случае будут выделяться не отдельные ячейки, а строчки полностью.
- Для того, чтобы выделить смежную группу строк, зажимаем левую кнопку мыши и проводим курсором по вертикальной панели координат от верхнего строчного элемента, который нужно удалить, к нижнему.
Можно также воспользоваться и вариантом с использованием клавиши Shift. Кликаем левой кнопкой мышки по первому номеру строки диапазона, который следует удалить. Затем зажимаем клавишу Shift и выполняем щелчок по последнему номеру указанной области. Весь диапазон строчек, лежащий между этими номерами, будет выделен.
Если удаляемые строки разбросаны по всему листу и не граничат друг с другом, то в таком случае, нужно щелкнуть левой кнопкой мыши по всем номерам этих строчек на панели координат с зажатой клавишей Ctrl.
- Для того, чтобы убрать выбранные строки, щелкаем по любому выделению правой кнопкой мыши. В контекстном меню останавливаемся на пункте «Удалить».
Операция удаления всех выбранных элементов будет произведена.
Урок: Как выполнить выделение в Excel
Способ 4: удаление пустых элементов
Иногда в таблице могут встречаться пустые строчки, данные из которых были ранее удалены. Такие элементы лучше убрать с листа вовсе. Если они расположены рядом друг с другом, то вполне можно воспользоваться одним из способов, который был описан выше. Но что делать, если пустых строк много и они разбросаны по всему пространству большой таблицы? Ведь процедура их поиска и удаления может занять значительное время. Для ускорения решения данной задачи можно применить нижеописанный алгоритм.
- Переходим во вкладку «Главная». На ленте инструментов жмем на значок «Найти и выделить». Он расположен в группе «Редактирование». В открывшемся списке жмем на пункт «Выделение группы ячеек».
- Запускается небольшое окошко выделения группы ячеек. Ставим в нем переключатель в позицию «Пустые ячейки». После этого жмем на кнопку «OK».
- Как видим, после того, как мы применили данное действие, все пустые элементы выделены. Теперь можно использовать для их удаления любой из способов, о которых шла речь выше. Например, можно нажать на кнопку «Удалить», которая расположена на ленте в той же вкладке «Главная», где мы сейчас работаем.
Как видим, все незаполненные элементы таблицы были удалены.
Обратите внимание! При использовании данного метода строчка должна быть абсолютно пустая. Если в таблице имеются пустые элементы, расположенные в строке, которая содержит какие-то данные, как на изображении ниже, этот способ применять нельзя. Его использование может повлечь сдвиг элементов и нарушение структуры таблицы.
Урок: Как удалить пустые строки в Экселе
Способ 5: использование сортировки
Для того, чтобы убрать строки по определенному условию можно применять сортировку. Отсортировав элементы по установленному критерию, мы сможем собрать все строчки, удовлетворяющие условию вместе, если они разбросаны по всей таблице, и быстро убрать их.
- Выделяем всю область таблицы, в которой следует провести сортировку, или одну из её ячеек. Переходим во вкладку «Главная» и кликаем по значку «Сортировка и фильтр», которая расположена в группе «Редактирование». В открывшемся списке вариантов действий выбираем пункт «Настраиваемая сортировка».
Можно также совершить альтернативные действия, которые тоже приведут к открытию окна настраиваемой сортировки. После выделения любого элемента таблицы переходим во вкладку «Данные». Там в группе настроек «Сортировка и фильтр» жмем на кнопку «Сортировка».
- Запускается окно настраиваемой сортировки. Обязательно установите галочку, в случае её отсутствия, около пункта «Мои данные содержат заголовки», если у вашей таблицы имеется шапка. В поле «Сортировать по» нужно выбрать наименование столбца, по которому будет происходить отбор значений для удаления. В поле «Сортировка» нужно указать, по какому именно параметру будет происходить отбор:
- Значения;
- Цвет ячейки;
- Цвет шрифта;
- Значок ячейки.
Тут уже все зависит от конкретных обстоятельств, но в большинстве случаев подходит критерий «Значения». Хотя в дальнейшем мы поговорим и об использовании другой позиции.
В поле «Порядок» нужно указать, в каком порядке будут сортироваться данные. Выбор критериев в этом поле зависит от формата данных выделенного столбца. Например, для текстовых данных порядок будет «От А до Я» или «От Я до А», а для даты «От старых к новым» или «От новых к старым». Собственно сам порядок большого значения не имеет, так как в любом случае интересующие нас значения будут располагаться вместе.
После того, как настройка в данном окне выполнена, жмем на кнопку «OK». - Все данные выбранной колонки будут отсортированы по заданному критерию. Теперь мы можем выделить рядом находящиеся элементы любым из тех вариантов, о которых шла речь при рассмотрении предыдущих способов, и произвести их удаление.
Кстати, этот же способ можно использовать для группировки и массового удаления пустых строчек.
Внимание! Нужно учесть, что при выполнении такого вида сортировки, после удаления пустых ячеек положение строк будет отличаться от первоначального. В некоторых случаях это не важно. Но, если вам обязательно нужно вернуть первоначальное расположение, то тогда перед проведением сортировки следует построить дополнительный столбец и пронумеровать в нем все строчки, начиная с первой. После того, как нежелательные элементы будут удалены, можно провести повторную сортировку по столбцу, где располагается эта нумерация от меньшего к большему. В таком случае таблица приобретет изначальный порядок, естественно за вычетом удаленных элементов.
Урок: Сортировка данных в Экселе
Способ 6: использование фильтрации
Для удаления строк, которые содержат определенные значения, можно также использовать такой инструмент, как фильтрация. Преимущество данного способа состоит в том, что, если вам вдруг эти строчки когда-нибудь понадобится снова, то вы их сможете всегда вернуть.
- Выделяем всю таблицу или шапку курсором с зажатой левой кнопкой мыши. Кликаем по уже знакомой нам кнопке «Сортировка и фильтр», которая расположена во вкладке «Главная». Но на этот раз из открывшегося списка выбираем позицию «Фильтр».
Как и в предыдущем способе, задачу можно также решить через вкладку «Данные». Для этого, находясь в ней, нужно щелкнуть по кнопке «Фильтр», которая расположена в блоке инструментов «Сортировка и фильтр».
- После выполнения любого из вышеуказанных действий около правой границы каждой ячейки шапки появится символ фильтрации в виде треугольника, направленного углом вниз. Жмем по этому символу в том столбце, где находится значение, по которому мы будем убирать строки.
- Открывается меню фильтрования. Снимаем галочки с тех значений в строчках, которые хотим убрать. После этого следует нажать на кнопку «OK».
Таким образом, строки, содержащие значения, с которых вы сняли галочки, будут спрятаны. Но их всегда можно будет снова восстановить, сняв фильтрацию.
Урок: Применение фильтра в Excel
Способ 7: условное форматирование
Ещё более точно можно задать параметры выбора строк, если вместе с сортировкой или фильтрацией использовать инструменты условного форматирования. Вариантов ввода условий в этом случае очень много, поэтому мы рассмотрим конкретный пример, чтобы вы поняли сам механизм использования этой возможности. Нам нужно удалить строчки в таблице, по которым сумма выручки менее 11000 рублей.
- Выделяем столбец «Сумма выручки», к которому хотим применить условное форматирование. Находясь во вкладке «Главная», производим щелчок по значку «Условное форматирование», который расположен на ленте в блоке «Стили». После этого открывается список действий. Выбираем там позицию «Правила выделения ячеек». Далее запускается ещё одно меню. В нем нужно конкретнее выбрать суть правила. Тут уже следует производить выбор, основываясь на фактической задаче. В нашем отдельном случае нужно выбрать позицию «Меньше…».
- Запускается окно условного форматирования. В левом поле устанавливаем значение 11000. Все значения, которые меньше него, будут отформатированы. В правом поле есть возможность выбрать любой цвет форматирования, хотя можно также оставить там значение по умолчанию. После того, как настройки выполнены, щелкаем по кнопке «OK».
- Как видим, все ячейки, в которых имеются значения выручки менее 11000 рублей, были окрашены в выбранный цвет. Если нам нужно сохранить изначальный порядок, после удаления строк делаем дополнительную нумерацию в соседнем с таблицей столбце. Запускаем уже знакомое нам окно сортировки по столбцу «Сумма выручки» любым из способов, о которых шла речь выше.
- Открывается окно сортировки. Как всегда, обращаем внимание, чтобы около пункта «Мои данные содержат заголовки» стояла галочка. В поле «Сортировать по» выбираем столбец «Сумма выручки». В поле «Сортировка» устанавливаем значение «Цвет ячейки». В следующем поле выбираем тот цвет, строчки с которым нужно удалить, согласно условному форматированию. В нашем случае это розовый цвет. В поле «Порядок» выбираем, где будут размещаться отмеченные фрагменты: сверху или снизу. Впрочем, это не имеет принципиального значения. Стоит также отметить, что наименование «Порядок» может быть смещено влево от самого поля. После того, как все вышеуказанные настройки выполнены, жмем на кнопку «OK».
- Как видим, все строчки, в которых имеются выделенные по условию ячейки, сгруппированы вместе. Они будут располагаться вверху или внизу таблицы, в зависимости от того, какие параметры пользователь задал в окне сортировки. Теперь просто выделяем эти строчки тем методом, который предпочитаем, и проводим их удаление с помощью контекстного меню или кнопки на ленте.
- Затем можно отсортировать значения по столбцу с нумерацией, чтобы наша таблица приняла прежний порядок. Ставший ненужным столбец с номерами можно убрать, выделив его и нажав знакомую нам кнопку «Удалить» на ленте.
Поставленная задача по заданному условию решена.
Кроме того, можно произвести аналогичную операцию с условным форматированием, но только после этого проведя фильтрацию данных.
- Итак, применяем условное форматирование к столбцу «Сумма выручки» по полностью аналогичному сценарию. Включаем фильтрацию в таблице одним из тех способов, которые были уже озвучены выше.
- После того, как в шапке появились значки, символизирующие фильтр, кликаем по тому из них, который расположен в столбце «Сумма выручки». В открывшемся меню выбираем пункт «Фильтр по цвету». В блоке параметров «Фильтр по цвету ячейки» выбираем значение «Нет заливки».
- Как видим, после этого действия все строчки, которые были залиты цветом с помощью условного форматирования, исчезли. Они спрятаны фильтром, но если удалить фильтрацию, то в таком случае, указанные элементы снова отобразятся в документе.
Урок: Условное форматирование в Экселе
Как видим, существует очень большое количество способов удалить ненужные строки. Каким именно вариантом воспользоваться зависит от поставленной задачи и от количества удаляемых элементов. Например, чтобы удалить одну-две строчки вполне можно обойтись стандартными инструментами одиночного удаления. Но чтобы выделить много строк, пустые ячейки или элементы по заданному условию, существуют алгоритмы действий, которые значительно облегчают задачу пользователям и экономят их время. К таким инструментам относится окно выделения группы ячеек, сортировка, фильтрация, условное форматирование и т.п.
Загрузить PDF
Загрузить PDF
Данная статья научит вас обрезать текст в Microsoft Excel. Для этого вам в первую очередь потребуется ввести в Excel полные неукороченные данные.
-
1
Запустите Microsoft Excel. Если у вас уже создан документ с данными, которые требуют обработки, дважды кликните по нему мышкой, чтобы открыть. В ином случае вам необходимо запустить Microsoft Excel, чтобы создать новую книгу и ввести в нее данные.
-
2
Выделите ячейку, в которой должен быть выведен укороченный текст. Это необходимо сделать тогда, когда в книгу у вас уже введены необработанные данные.
- Обратите внимание, что выбранная ячейка должна отличаться от той ячейки, в которой содержится полный текст.
-
3
Введите формулу ЛЕВСИМВ или ПРАВСИМВ в выделенную ячейку. Принцип действия формул ЛЕВСИМВ и ПРАВСИМВ одинаков, несмотря на то, что ЛЕВСИМВ отражает заданное количество символов от начала текста заданной ячейки, а ПРАВСИМВ – от ее конца. Вводимая вами формула должна выглядеть следующим образом: «=ЛЕВСИМВ(адрес ячейки с текстом; количество символов для отображения)». Кавычки вводить не нужно. Ниже приведено несколько примеров использования упомянутых функций.[1]
- Формула =ЛЕВСИМВ(A3;6) покажет первые шесть символов текста из ячейки A3. Если в исходной ячейке содержится фраза «кошки лучше», то в ячейке с формулой появится укороченная фраза «кошки».
- Формула =ПРАВСИМВ(B2;5) покажет последние пять символов текста из ячейки B2. Если в ячейке B2 содержится фраза «я люблю wikiHow», то в ячейке с формулой появится укороченный текст «kiHow».
- Помните о том, что пробелы в тексте тоже считаются за символ.
-
4
Когда закончите ввод параметров формулы, нажмите на клавиатуре клавишу Enter. Ячейка с формулой автоматически отразит обрезанный текст.
Реклама
-
1
Выделите ячейку, в которой должен появиться обрезанный текст. Эта ячейка должна отличаться от той ячейки, в которой содержится обрабатываемый текст.
- Если вы еще не ввели данные для обработки, то это нужно сделать в первую очередь.
-
2
Введите формулу ПСТР в выделенную ячейку. Функция ПСТР позволяет извлечь текст из середины строки. Вводимая формула должна выглядеть следующим образом: «=ПСТР(адрес ячейки с текстом, порядковый номер начального символа извлекаемого текста, количество извлекаемых символов)». Кавычки вводить не нужно. Ниже приведено несколько примеров.
- Формула =ПСТР(A1;3;3) отражает три символа из ячейки A1, первый из которых занимает третью позицию от начала полного текста. Если в ячейке A1 содержится фраза «гоночный автомобиль», то в ячейке с формулой появится сокращенный текст «ноч».
- Аналогичным образом, формула =ПСТР(B3;4;8) отражает восемь символов из ячейки B3, начиная с четвертой позиции от начала текста. Если в ячейке B3 содержится фраза «бананы – не люди», то в ячейке с формулой появится сокращенный текст «аны – не».
-
3
Когда закончите ввод параметров формулы, нажмите на клавиатуре клавишу Enter. Ячейка с формулой автоматически отразит обрезанный текст.
Реклама
-
1
Выберите ячейку с текстом, которую вы хотите разбить. В ней должно содержаться больше текстовых символов, чем пробелов.
-
2
Нажмите на вкладку Данные. Она расположена вверху на панели инструментов.
-
3
Нажмите на кнопку Текст по столбцам. Эта кнопка расположена на панели инструментов в группе кнопок под названием «Работа с данными».
- С помощью функциональных возможностей данной кнопки можно поделить содержимое ячейки Excel на несколько отдельных колонок.
-
4
В появившемся окне настроек активируйте опцию фиксированной ширины. После нажатия на предыдущем шаге кнопки Текст по столбцам откроется окно настроек с названием «Мастер текстов (разбор) – шаг 1 из 3». В окне у вас будет возможность выбора одной из двух опций: «с разделителями» или «фиксированной ширины». Опция «с разделителями» подразумевает, что текст будет разделен на части по пробелам или запятым. Данная опция обычно бывает полезна при обработке данных, импортированных из других приложений и баз данных. Опция «фиксированной ширины» позволяет создать из текста колонки с заданным количеством текстовых символов.
-
5
Нажмите кнопку Далее. Перед вами появится описание трех возможных вариантов действий. Чтобы вставить конец строки текста, щелкните в нужной позиции. Чтобы удалить конец строки, дважды щелкните по разделительной линии. Чтобы переместить конец строки, нажмите на разделительную линию и перетащите ее в нужное место.
-
6
Снова нажмите кнопку Далее. В данном окне вам также предложат несколько опций формата данных столбца на выбор: «общий», «текстовый», «дата» и «пропустить столбец». Просто пропустите данную страницу, если только вы не хотите намеренно поменять исходный формат своих данных.
-
7
Нажмите на кнопку Готово. Теперь исходный текст будет разделен на две или более отдельных ячеек.
Реклама
Об этой статье
Эту страницу просматривали 127 764 раза.