Многим пользователям, в том числе и мне, приходится ежедневно, еженедельно, ежемесячно либо ежегодно использовать одни и те же таблицы, сделанные в Excel. Для повторного и последующего использования этих таблиц, как правило приходится удалять значения некоторых ячеек для того, чтобы освободить место для внесения в них новых данных. Удалить устаревшие значения в таблице тем дольше и сложнее, чем старее версия Excel, чем больше таблица и чем больше промежуточных расчетов и результатов в этой таблице. Как сделать это быстро?
Чтобы было понятно о чем пойдет речь, вспомним, что ячейка — это часть табличного пространства, образованная пересечением строки и столбца. Ячейка может содержать какие-то значения, например числа, текст, формулы и так далее, а также может содержать информацию о шрифтах, их цветах и размерах, заливках, рамках, защите и так далее. Таким образом, удалять можно как сами ячейки со всем их содержимым (при этом место удаленной ячейки занимает новая, а всё табличное пространство смещается либо вверх, либо влево) так и часть информации, например только значения или только форматы. В этой публикации речь пойдет об удалении значений, когда сами ячейки остаются на своих местах и информация об их форматах остается неизменной.
Стандартные средства для удаления значений ячеек
Представим (либо посмотрим на видео ниже), что на рабочем листе Excel расположена таблица. В этой таблице шапка и некоторые столбцы, содержат различные текстовые значения, основное пространство таблицы содержит ячейки с числовыми значениями, которые в свою очередь участвуют в расчетах, определенных формулами. К примеру, необходимо удалить из этой таблицы только числа, не удаляя при этом формулы, или только текст, не удаляя при этом числа и всё остальное.
Для того чтобы очистить место в таблице для внесения новых значений можно выделять поочередно нужные диапазоны ячеек и нажимать кнопку «Delete» на клавиатуре, как говорится, медленно, но верно. Проделав такую операцию полтора десятка раз невольно появляется вопрос «а можно ли как-нибудь быстрее?». Конечно можно! Даже нужно. В Microsoft Excel 2007 и выше для этих целей подойдет такой инструмент как «Выделение группы ячеек». Для этого выбираем на ленте Excel вкладку «Главная», переходим в группу «Редактирование», нажимаем кнопку «Найти и выделить» и выбираем команду «Выделение группы ячеек». Появляется одноименное диалоговое окно, при помощи которого можно выделить определенные ячейки таблицы и после этого удалить их значения.
Выделение группы ячеек производится последовательно, нельзя например одновременно выделить и константы и формулы. Так уже гораздо быстрее, не правда ли? Но и это не предел. Все-таки удаление происходит в два этапа, сначала выделяем, затем удаляем. Если таблицы на разных листах и их много, то и с таким способом можно провозиться достаточно долго. В Excel 2003 выделение группы ячеек вообще не предусмотрено и в этой версии без дополнительных инструментов не обойтись.
Дополнительные инструменты для выборочного удаления значений
В некоторых случаях ускорить выборочное удаление значений ячеек поможет надстройка, которая легко устанавливается и запускается одним нажатием кнопки, выведенной прямо в главное меню. Надстройка позволяет удалять значения из ячеек с числами, с текстом, с формулами, с примечаниями, с заливкой, с рамками, как по раздельности, так и в любых сочетаниях. Кроме того предусмотрен выбор диапазона для удаления значений. Возможен используемый диапазон (с первой до последней заполненной ячейки), используемые диапазоны (используемый диапазон на каждом листе активной рабочей книги), выделенный пользователем диапазон, а также выделенный диапазон, но на каждом листе рабочей книги.
Использование надстройки позволяет:
1. выборочно удалять значения из ячеек с числами, с текстом, с формулами, с датами, ячеек содержащих примечания, цветную заливку, цветной шрифт, границы;
2. проводить выборочное удаление значений из ячеек используемых диапазонов, предварительно выделенных диапазонов, диапазонов, выбранных вручную, а также столбцов с заданными именами;
3. осуществлять очистку ячеек от значений на видимых, скрытых, непустых листах, листах с заданными именами, с заданными номерами, с заданным значением в определенном диапазоне, а также на всех листах рабочей книги Excel.
Видео по работе с надстройкой
макрос (надстройка) для выборочного удаления значений из ячеек
Видео по выборочному удалению значений ячеек
Другие материалы по теме:
Как удалить строки в excel через одну?
Вариант №1 (более простой)
- Добавляете в конце таблицы еще один столбец. (D см рис) В первую строку этого столбца (ту, которую вы не хотите удалять) ставите значение «1«. Значение для второй строки этого же столбца — оставляете пустой.
- Выделяете две клетки в этом столбце (D2:D3 см рис.) (первую и вторую, с значением 1 и пусто.), копируете их значение (Ctrl+C).
- Выделяете все клетки этого столбца, после второй (третью и все вниз, D4:D13 на рис.). Вставляете скопированное значение (Ctrl+V). Вы должны получить примерно следующее:
Вариант №2 (для опытных)
Открываете редактор Visual Basic. (Alt + F11) или из меню Сервис-Макрос-Редактор Visual Basic.
-
В окне редактора в секции VBAProject дважды щелкаете по обьекту : Эта Книга (см рисунок)
Dim ra As Range, delra As Range, cntdel As Integer
For Each ra In ActiveSheet.UsedRange.Rows
If cntdel <> 0 Then
If cntdel = 2 Then cntdel = 0
cntdel = cntdel + 1
- сохраняем текст процедуры, нажав на дискетку.
- Переключаемся в Excel (в ваш открытый документ). Добавляем пользовательскую кнопку на панель инструментов для вызова процедуры.
- На любой панели инструментов нажимаем левую кнопку мыши (далее ЛКМ), в появившемся меню выбираем «Настройка«
Удаление каждой второй строки — макрос по автоматизации
21.06.2012 , Советы вебмастерам , 5 комментариев
Задавались ли вы когда нибудь таким вопросом, а как удалить каждую четную строку? Лично у меня частенько возникает такая необходимость, особенно когда я провожу анализ конкурентов или создаю карту сайта. В поисках подобного решения я наткнулся (уже не помню где) на макрос удаления каждой второй строки. Он буквально в считанные секунды производит колоссальную рутинную работу.
Ниже я предоставлю образец кода макроса на языке Microsoft Visual Basic для приложений, который можно успешно использовать для удаления каждой второй строки в выбранном вами диапазоне ячеек на листе Microsoft Excel.
Инструкции по использованию кода
1. Создайте новую книгу Microsoft Excel.
2. На новом листе введите информацию, в которой мы будем удалять каждую вторую строку.
3. В меню Сервис выберите пункт Макрос, а затем команду Редактор Visual Basic.
4. Примечание. В Microsoft Office Excel 2007 выберите на вкладке Разработчик в группе Код элемент Visual Basic.
5. В меню Вставка выберите команду Модуль.
6. В новом модуле введите следующий макрос:
Sub Delete_Every_Other_Row() ‘ Переменные размерности. Y = False ‘ Измените значение на True, если необходимо ‘ удалить строки 1, 3, 5 и т.д. I = 1 Set xRng = Selection ‘ Цикл по всем строкам выделенного диапазона. For xCounter = 1 To xRng.Rows.Count ‘ Если Y = True, тогда. If Y = True Then ‘ . удалить целую строку ячеек. xRng.Cells(I).EntireRow.Delete ‘ В противном случае. Else ‘ . увеличить переменную I на единицу и продолжить выполнение цикла по диапазону ячеек. I = I + 1 End If ‘ Если Y = True, изменить значение на False; если Y = False, изменить значение на True. Y = Not Y Next xCounter End Sub
7. Перейдите на лист с данными и выделите нужный диапазон ячеек.
8. Чтобы запустить макрос, выберите в меню Сервис пункт Макрос, а затем — пункт Макросы.
9. Примечание. В Excel 2007 выберите на вкладке Разработчик в группе Code элемент Макросы.
Примечание. Чтобы вывести на Ленту вкладку Разработчик, нажмите кнопку Microsoft Office, выберите Параметры Excel, затем — категорию Основные, установите флажок Показывать вкладку «Разработчик» на ленте и нажмите кнопку ОК.
10. Выберите макрос Delete_Every_Other_Row и нажмите кнопку Выполнить. Этот макрос удалит каждую вторую строку в выделенном диапазоне, начиная со второй.
Примечание. В случае, если список данных состоит из нескольких столбцов, выберите только первый столбец, а затем запустите макрос.
К посту «Удаление каждой второй строки — макрос по автоматизации» уже написано 5 комментариев
Веду расчеты, бухгалтерские дела, это решение пришлось как раз к месту, благодарю ?
А у меня он почему-то убирает до упора (пока текста не останется) и цикл приходится прерывать насильно
Спасибо большое, у меня численные данные больше 1000 ячеек, нужно было сократить в 2 раза. Долго искала решения и очень помогла Ваша статья
Как удалить строки по условию?
Предположу, что почти каждый сталкивался с ситуацией, когда необходимо удалить только определенные строки: имеется большая таблица и необходимо удалить из неё только те строки, которые содержат какое-то слово (цифру, фразу). Для выполнения подобной задачи можно воспользоваться несколькими способами.
Способ первый:
Использовать встроенное средство 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» заменить на «Соответствия». Удаление строк происходит на активном в момент запуска кода листе. Это значит, что перед запуском кода надо перейти на тот лист, строки в котором необходимо удалить.
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
Чтобы код выше удалял строки не по точному совпадению слов, а по частичному(например, в ячейке записано «Привет, как дела?», а в списке есть слово «привет» — надо удалить, т.к. есть слово «привет»), то надо строку:
Как удалить пустые строки в Excel быстрыми способами
При импорте и копировании таблиц в Excel могут формироваться пустые строки и ячейки. Они мешают работе, отвлекают.
Некоторые формулы могут работать некорректно. Использовать ряд инструментов в отношении не полностью заполненного диапазона невозможно. Научимся быстро удалять пустые ячейки в конце или середине таблицы. Будем использовать простые средства, доступные пользователю любого уровня.
Как в таблице Excel удалить пустые строки?
Чтобы показать на примере, как удалить лишние строки, для демонстрации порядка действий возьмем таблицу с условными данными:
Пример 1 . Сортировка данных в таблице. Выделяем всю таблицу. Открываем вкладку «Данные» — инструмент «Сортировка и фильтр» — нажимаем кнопку «Сортировка». Или щелкаем правой кнопкой мыши по выделенному диапазону и делаем сортировку «от минимального к максимальному».
Пустые строки после сортировки по возрастанию оказываются внизу диапазона.
Если порядок значений важен, то до сортировки необходимо вставить пустой столбец, сделать сквозную нумерацию. После сортировки и удаления пустых строк вновь отсортировать данные по вставленному столбцу с нумерацией.
Пример 2 . Фильтр. Диапазон должен быть отформатирован как таблица с заголовками. Выделяем «шапку». На вкладке «Данные» нажимаем кнопку «Фильтр» («Сортировка и фильтр»). Справа от названия каждого столбца появится стрелочка вниз. Нажимаем – открывается окно фильтрации. Снимаем выделение напротив имени «Пустые».
Таким же способом можно удалить пустые ячейки в строке Excel. Выбираем нужный столбец и фильтруем его данные.
Пример 3 . Выделение группы ячеек. Выделяем всю таблицу. В главном меню на вкладке «Редактирование» нажимаем кнопку «Найти и выделить». Выбираем инструмент «Выделение группы ячеек».
В открывшемся окне выбираем пункт «Пустые ячейки».
Программа отмечает пустые ячейки. На главной странице находим вкладку «Ячейки», нажимаем «Удалить».
Результат – заполненный диапазон «без пустот».
Внимание! После удаления часть ячеек перескакивает вверх – данные могут перепутаться. Поэтому для перекрывающихся диапазонов инструмент не подходит.
Полезный совет! Сочетание клавиш для удаления выделенной строки в Excel CTRL+«-». А для ее выделения можно нажать комбинацию горячих клавиш SHIFT+ПРОБЕЛ.
Как удалить повторяющиеся строки в Excel?
Чтобы удалить одинаковые строки в Excel, выделяем всю таблицу. Переходим на вкладку «Данные» — «Работа с данными» — «Удалить дубликаты».
В открывшемся окне выделяем те столбцы, в которых находятся повторяющиеся значения. Так как нужно удалять повторяющиеся строки, то должны быть выделены все столбцы.
После нажатия ОК Excel формирует мини-отчет вида:
Как удалить каждую вторую строку в Excel?
Проредить таблицу можно с помощью макроса. Например, такого:
А можно ручками. Предлагаем простенький способ, доступный каждому пользователю.
- В конце таблицы делаем вспомогательный столбец. Заполняем чередующимися данными. Например, «о у о у о у» и т.д. Вносим значения в первые четыре ячейки. Потом выделяем их. «Цепляем» за черный крестик в правом нижнем углу и копируем буквы до конца диапазона.
- Устанавливаем «Фильтр». Отфильтровываем последний столбец по значению «у».
- Выделяем все что осталось после фильтрации и удаляем.
- Убираем фильтр – останутся только ячейки с «о».
Вспомогательный столбец можно устранить и работать с «прореженной таблицей».
Как удалить скрытые строки в Excel?
Однажды пользователь скрыл некую информацию в строках, чтобы она не отвлекала от работы. Думал, что впоследствии данные еще понадобятся. Не понадобились – скрытые строки можно удалить: они влияют на формулы, мешают.
В тренировочной таблице скрыты ряды 5, 6, 7:
Будем их удалять.
- Переходим на «Файл»-«Сведения»-«Поиск проблем» — инструмент «Инспектор документов».
- В отрывшемся окне ставим галочку напротив «Скрытые строки и столбцы». Нажимаем «Проверить».
- Через несколько секунд программа отображает результат проверки.
- Нажимаем «Удалить все». На экране появится соответствующее уведомление.
В результате проделанной работы скрытые ячейки удалены, нумерация восстановлена.
Таким образом, убрать пустые, повторяющиеся или скрытые ячейки таблицы можно с помощью встроенного функционала программы Excel.
Как в Excel удалить пустые строки
Работая с большими объемами данных в таблицах Excel, мы часто сталкиваемся с наличием пустых строк в Excel. Для того чтобы убрать пустые строки есть несколько способов:
- с помощью сортировки данных;
- с помощью фильтрации данных;
- с помощью выделения группы ячеек;
- с помощью вспомогательного столбца;
Давайте рассмотрим каждый из них.
Как удалить пустые строки в Excel с помощью сортировки
Представим, что у нас есть таблица с данными продаж по разным странам и городам:
В этой таблице есть пустые строки. Наша задача их удалить. Мы можем сделать это поочередно, выделяя каждую пустую строку, и правой клавишей мыши удалять строки. Более простой способ это отсортировать пустые строки и затем одним движением их удалить.
Для того чтобы отсортировать данные нашей таблицы проделаем следующие шаги:
- Выделим левой клавишей мыши диапазон данных таблицы, затем на вкладке “Данные” нажмем на кнопку “Сортировка”:
- В появившемся диалоговом окне сортировки выберем столбец, по которому будут отсортированы данные и укажем их порядок:
- После этого система автоматически отсортирует строки с пустыми ячейками, и разместит их внизу таблицы:
- Затем, выделите пустые строки левой клавишей мыши и удалите их, нажав правой кнопкой мыши и выбрав пункт “Удалить”:
Если вы хотите удалить строки целиком, то я рекомендую выделять их отмечая левой клавишей мыши за порядковые номера строк. Так, система выделит все колонки в строке и вы за пару кликов сможете их удалить.
Как удалить пустые строки в Excel с помощью фильтрации
Для того чтобы удалить строки в той же самой таблице, но уже с помощью фильтрации, проделаем следующие шаги:
- Выделим левой клавишей мыши диапазон данных таблицы, затем на вкладке “Данные” нажмем на кнопку “Фильтр”:
Важно! Для корректной фильтрации данных обязательно, перед нажатием кнопки “Фильтр”, выделите область со значениями таблицы, включая пустые строки. Если этого не сделать – фильтрация данных таблицы будет осуществляться до первой пустой строки!
- Нажмите на выпадающий список фильтра любого из заголовков таблицы и выберите пустые строки:
- После того как пустые строки выбраны, выделите их и удалите, как это показано на примерах выше.
У этого способа удаления пустых строк есть минус, он заключается в том, что для их удаления вам необходимо отфильтровать каждую колонку. Делать это следует внимательно, дабы не удалить строки с данными.
Как убрать пустые строки в Excel с помощью выделения группы ячеек
Для удаления пустых строк можно воспользоваться инструментом выделения группы ячеек. Для этого:
- Выделите ячейки с данными вашей таблицы;
- Перейдите в меню “Найти и выделить” и выберите пункт “Выделить группу ячеек”:
- Во всплывающем окне отметьте пункт “Пустые ячейки”:
- Система автоматически выделит все пустые ячейки:
- Для удаления выделенных строк, нажмите на любой из правой кнопкой мыши и выберите пункт “Удалить”:
- Затем, во всплывающем окне выберите пункт “Строку”:
Внимание! Будьте аккуратны с использованием данного способа! Удаляя выделенные ячейки, есть высокая вероятность того, что вы удалите строки с данными, например, в которых есть только одна пустая ячейка, а в соседних ячейках строки есть данные!
Как удалить пустые строки в Экселе с помощью вспомогательного столбца
Пожалуй, самый эффективный и надежный способ удаления пустых строк в Excel это создание вспомогательного столбца, рядом с таблицей.
Представим, что в нашей таблице с данными есть строки, в которых всего лишь одна ячейка пустая, а остальные ячейки в строке содержат данные (на примере ниже выделены ячейки выделены желтым цветом).
Используя раннее описанные способы, высока вероятность удалить строки с данными.
Поэтому, чтобы избежать потери данных при удалении пустых строк, создадим справа от таблицы столбец, в который вставим функцию СЧИТАТЬПУСТОТЫ, в ней укажем диапазон всех ячеек каждой строки таблицы и протянем формулу до конца таблицы:
- Функция СЧИТАТЬПУСТОТЫ ведет подсчет пустых ячеек в указанном диапазоне. Так как столбцов в нашей таблице с данными 4 штуки, то если во вспомогательном столбце мы найдем значение “4” это будет означать, что эта строка в таблице пустая и ее можно удалить. Для этого отфильтруем значения таблицы по вспомогательному столбцу по числу “4” и определим пустые строки:
- Пустые строки найдены. Теперь их можно выделить и удалить.
Удаление строки в Microsoft Excel
Смотрите такжеCells(i, 2).Value =на всякий случай человека. ofd.Filter = «Microsoft «P2,атм»; zagl4 =End Sub: > это же 200 строк, в после фильтрации и фильтр» — нажимаем кнопки на ленте.«Условное форматирование» все строчки, начиная
вариантов действий выбираемИногда в таблице могут
Процесс удаления строк
нужно произвести выделениеВо время работы с empty подправил для вашегоКазанский Excel (*.xls*)|*.xls*»; ofd.Title xlSht.get_Range(«D1», Type.Missing); zagl4.Value2выбирает строки с не модуль, так которых полезных данных
Способ 1: одиночное удаление через контекстное меню
удаляем. кнопку «Сортировка». ИлиЗатем можно отсортировать значения, который расположен на с первой. После пункт
- встречаться пустые строчки, необходимых элементов. программой Excel частоIsEmpty(Cells(i, 2).Value) примера: = «Выберите документ = «P3,атм»; zagl5
- 1 по 10 ? 100. после реализацииУбираем фильтр – останутся щелкаем правой кнопкой по столбцу с ленте в блоке
того, как нежелательные«Настраиваемая сортировка»
данные из которыхДля того, чтобы удалить приходится прибегать кsashgeraDim sh AsДеметрио Excel»; if (ofd.ShowDialog() = xlSht.get_Range(«E1», Type.Missing); и удаляет четныеЕсли сюда дописать макроса остаются 100
только ячейки с мыши по выделенному нумерацией, чтобы наша«Стили» элементы будут удалены,.
Способ 2: одиночное удаление с помощью инструментов на ленте
были ранее удалены. несколько рядом расположенных процедуре удаления строк.: Scripter, спасибо! Worksheet, i As, != DialogResult.OK) {
- zagl5.Value2 = «P4,атм»;если будет пример Sub и End строк, но уже «о». диапазону и делаем таблица приняла прежний. После этого открывается можно провести повторнуюМожно также совершить альтернативные Такие элементы лучше строчек, можно выделить Этот процесс можетsashgera Long Set sh1. Выделить ст. MessageBox.Show(«Вы не выбрали
- zagl6 = xlSht.get_Range(«F1», то можно циклом
Sub, то, наверно, с полезными даннымиВспомогательный столбец можно устранить сортировку «от минимального порядок. Ставший ненужным список действий. Выбираем сортировку по столбцу, действия, которые тоже убрать с листа смежные ячейки данных быть, как единичным,: Scripter, я немного = Sheets(«Лист1») On С, правый клик
Способ 3: групповое удаление
файл для открытия», Type.Missing); zagl6.Value2 = выбрать все четные заработет.
- 50. и работать с к максимальному». столбец с номерами там позицию где располагается эта приведут к открытию вовсе. Если они строк, находящиеся в так и групповым,
изменил макрос, все Error Resume Next — Вставить. «Внимание», MessageBoxButtons.OK, MessageBoxIcon.Information); «P5,атм»; int m, или нечетные доВы тоже моглиВот такая беда. «прореженной таблицей».Пустые строки после сортировки можно убрать, выделив«Правила выделения ячеек» нумерация от меньшего
окна настраиваемой сортировки. расположены рядом друг одном столбце. Для в зависимости от работает With sh.UsedRange.Columns(2) For2. Выделить ст. return; } string n, z; xlSht.Activate(); конца диапазона и бы обойтись безFynjyОднажды пользователь скрыл некую по возрастанию оказываются
- его и нажав. Далее запускается ещё к большему. В После выделения любого с другом, то этого зажимаем левую поставленных задач. ОсобыйУДАЛЯЕМ строку если i = .Rows.Count В, Данные - xlFileName = ofd.FileName;
for (m = удалить{/post}{/quote} макроса: в свободный: вот ссылка на информацию в строках, внизу диапазона. знакомую нам кнопку
- одно меню. В таком случае таблица элемента таблицы переходим вполне можно воспользоваться кнопку мыши и интерес в этом в ячейке столбца To 2 Step Текст по столбцам,
//имя нашего Excel 2; m <Спасибо. На досуге столбец ввести формулу совет который не чтобы она неЕсли порядок значений важен,«Удалить» нем нужно конкретнее приобретет изначальный порядок, во вкладку одним из способов, курсором проводим по плане представляет удаление «B» есть число: -1 If CLng(IIf(Cells(i,
с разделителями, поставить файла Excel.Workbook xlWB; 3000; m = испробую. Надо прайс=ОСТАТ(СТРОКА();3) помог((( отвлекала от работы. то до сортировкина ленте. выбрать суть правила. естественно за вычетом«Данные» который был описан
- этим элементам. по условию. Давайте от 0 до 2).Value = «», курсор в поле Excel.Worksheet xlSht; int m + 10) «причесать»
, отфильтровать поFynjy
Думал, что впоследствии необходимо вставить пустойПоставленная задача по заданному
Способ 4: удаление пустых элементов
Тут уже следует удаленных элементов.. Там в группе выше. Но чтоЕсли диапазон большой, то рассмотрим различные варианты 399 0, Trim(Cells(i, 2).Value))) «другой» и нажать iLastRow; int m, { for (nKuklP <>0 и удалить: Пардон, господа! данные еще понадобятся. столбец, сделать сквозную условию решена. производить выбор, основываясьУрок: настроек делать, если пустых можно выделить самую данной процедуры.НЕ УДАЛЯЕМ строку
- >= 0 And Ctrl+J (должен появиться StartRow; Excel.Application xlApp = 1; n: Public Sub qwe() видимые строки.Кажется тут же Не понадобились – нумерацию. После сортировкиКроме того, можно произвести на фактической задаче.Сортировка данных в Экселе
- «Сортировка и фильтр» строк много и верхнюю ячейку, щелкнувСкачать последнюю версию если в ячейке _ CLng(IIf(Cells(i, 2).Value образец разбора) - = new Excel.Application(); < 7; n++)
- Dim i AsИли отфильтровать по и нашел необходимое! скрытые строки можно и удаления пустых аналогичную операцию с В нашем отдельномДля удаления строк, которыежмем на кнопку они разбросаны по по ней левой Excel столбца «B» есть = «», 0, готово. //создаём приложение Excel { cell = Integer
=0 и перенестиXxs удалить: они влияют
строк вновь отсортировать условным форматированием, но случае нужно выбрать содержат определенные значения,«Сортировка» всему пространству большой кнопкой мыши. ЗатемУдаление строчек можно произвести буква: k Trim(Cells(i, 2).Value))) 133. Перенести В1 //xlApp.Visible = true; (Excel.Range)xlSht.Cells[m, n]; cell.Delete();For i =
видимые на другой: Как можно удалить на формулы, мешают.
Способ 5: использование сортировки
данные по вставленному только после этого позицию можно также использовать. таблицы? Ведь процедура зажать клавишу совершенно разными способами.НЕ УДАЛЯЕМ строку Then Rows(i).Delete Else в С1, удалить
- xlWB = xlApp.Workbooks.Open(xlFileName); } } } 320 To 1 лист. макросом каждую вторуюВ тренировочной таблице скрыты столбцу с нумерацией. проведя фильтрацию данных.«Меньше…» такой инструмент, какЗапускается окно настраиваемой сортировки. их поиска иShift Выбор конкретного решения если в ячейке Err.Clear End If ст. В. //открываем наш файл
private void button2_Click(object Step -1 ‘вместоpolkan строку ? ряды 5, 6,Пример 2. Фильтр. ДиапазонИтак, применяем условное форматирование. фильтрация. Преимущество данного Обязательно установите галочку, удаления может занятьи кликнуть по зависит от того, столбца «B» есть
- End If NextЕсли не получится xlSht = xlWB.Worksheets[«Лист1»]; sender, EventArgs e) 320 последнюю строку: буду знатьЮрий М 7: должен быть отформатирован к столбцуЗапускается окно условного форматирования. способа состоит в в случае её значительное время. Для самой нижней ячейке какие задачи ставит слово: стал i End Withлибо
- — значит, там
- //или так xlSht
- { } private
- Вашей таблицы.
СПБ ! ;): Xxs, хочу обратитьБудем их удалять. как таблица с«Сумма выручки» В левом поле том, что, если отсутствия, около пункта ускорения решения данной
того диапазона, который перед собой пользователь.НЕ УДАЛЯЕМ строку еще прощелибо еще какой-то другой символ = xlWB.ActiveSheet //активный void button3_Click(object sender,If i ModHugo Ваше внимание, чтоПереходим на «Файл»-«Сведения»-«Поиск проблем» заголовками. Выделяем «шапку».по полностью аналогичному устанавливаем значение вам вдруг эти«Мои данные содержат заголовки» задачи можно применить нужно удалить. Выделены Рассмотрим различные варианты, если ячейка столбца проще перевода строки - лист xlSht.Columns[«G:P»].Clear(); //очистка EventArgs e) {
2 = 0: Тем, кто нашёл в данном случае, — инструмент «Инспектор На вкладке «Данные» сценарию. Включаем фильтрацию - 11000 строчки когда-нибудь понадобится, если у вашей нижеописанный алгоритм. будут все элементы, начиная от простейших «B»- пустаяDim sh As приложите файл-пример с столбцов xlSht.get_Range(«A1»).Value = Close(); } }
Then ‘0 - тему поиском - как и во документов».
нажимаем кнопку «Фильтр» в таблице одним. Все значения, которые снова, то вы таблицы имеется шапка.Переходим во вкладку находящиеся между ними. и заканчивая относительнотакже макрос удаляет строки Worksheet, i As частью данных «Время,с»; xlSht.get_Range(«B1»).Value = } Для четных. Для при удалении строк многих других, достаточноВ отрывшемся окне ставим («Сортировка и фильтр»). из тех способов, меньше него, будут их сможете всегда В поле«Главная»В случае, если нужно сложными методами. если в ячейке Long Set shДеметрио
«P1,атм»; xlSht.get_Range(«C1»).Value =Pavel55
Способ 6: использование фильтрации
нечетных 1 нижние сдвигаются вверх, было 10 строк галочку напротив «Скрытые Справа от названия которые были уже отформатированы. В правом вернуть.«Сортировать по». На ленте инструментов удалить строчные диапазоны,Наиболее простой способ удаления
- столбца «B» есть = Sheets(«Лист1») With: вот файл «P2,атм»; xlSht.get_Range(«D1»).Value =: Плохо, что выRows(i).Delete поэтому цикл перебора с данными. Ну строки и столбцы». каждого столбца появится озвучены выше. поле есть возможностьВыделяем всю таблицу илинужно выбрать наименование жмем на значок
которые расположены в строчек – это какой либо текст, sh.UsedRange.Columns(2) For iДеметрио «P3,атм»; xlSht.get_Range(«E1»).Value = не приложили вашEnd If строк нужно пускать вот ЗАЧЕМ 600 Нажимаем «Проверить». стрелочка вниз. НажимаемПосле того, как в
- выбрать любой цвет шапку курсором с столбца, по которому«Найти и выделить» отдалении друг от одиночный вариант данной кроме ‘k’ и = .Rows.Count To: «P4,атм»; xlSht.get_Range(«F1»).Value2 = тестовый Excel файл,Next
- снизу вверх (иначе строк?!Через несколько секунд программа – открывается окно шапке появились значки, форматирования, хотя можно зажатой левой кнопкой будет происходить отбор
. Он расположен в друга, то для процедуры. Выполнить его ‘стал’ 2 Step -1Деметрио «P5,атм»; iLastRow =
на котором можноEnd Sub
Способ 7: условное форматирование
при удалении напримерXxs отображает результат проверки. фильтрации. Снимаем выделение символизирующие фильтр, кликаем также оставить там мыши. Кликаем по значений для удаления. группе их выделения следует можно, воспользовавшись контекстнымSub Макрос22() Dim If Cells(i, 2).Value, выделяете столбец С xlSht.Cells[xlSht.Rows.Count, «A»].End[Excel.XlDirection.xlUp].Row; //последняя было бы поэксперементировать.KuklP
- строки 2 на: Извините, не обрезалНажимаем «Удалить все». На напротив имени «Пустые». по тому из значение по умолчанию. уже знакомой нам В поле«Редактирование» кликнуть по одной меню. sh As Worksheet, <> «№» And — Данные - заполненная строка в Пришлось создавать свой: её место сдвинется таблицу. экране появится соответствующееТаким же способом можно них, который расположен После того, как кнопке«Сортировка». В открывшемся списке из ячеек, находящихсяКликаем правой кнопкой мыши
- i As Long Val(Cells(i, 2).Value) >= текст по столбцам столбце А StartRow Excel файл. НаПо поводу последней строки строка 3, 4-яКазанский уведомление. удалить пустые ячейки в столбце настройки выполнены, щелкаем«Сортировка и фильтр»нужно указать, по жмем на пункт в них, левой по любой из
- Set sh = 0 And Val(Cells(i, — далее - = 2; for моём файле мой сюда: строка станет 3-й,: Без макроса. ВыделитьВ результате проделанной работы в строке Excel.«Сумма выручки» по кнопке, которая расположена во какому именно параметру«Выделение группы ячеек» кнопкой мыши с ячеек той строки, Sheets(«склад») With sh.UsedRange.Columns(2)
- 2).Value) и на каком-то (m = StartRow; код работает, аDominique и удаляя строку первый столбец, Ctrl+H, скрытые ячейки удалены, Выбираем нужный столбец. В открывшемся меню«OK» вкладке будет происходить отбор:. одновременно зажатой клавишей которую нужно удалить. For i =sashgera шаге отметить «Текстовый» m < iLastRow; на вашем не: Попробовал. Стирает. Сильно! 4 — на Найти: пробел, Заменить нумерация восстановлена. и фильтруем его выбираем пункт.«Главная»Значения;Запускается небольшое окошко выделенияCtrl В появившемся контекстном .Rows.Count To 4: Scripter, — Готово. m++) { ((Excel.Range)xlSht.Rows[(m знаю, тестируйте, корректируйте
- :-))) самом деле удалите на: пусто, ЯчейкаТаким образом, убрать пустые, данные.«Фильтр по цвету»Как видим, все ячейки,. Но на этотЦвет ячейки; группы ячеек. Ставим. Все выбранные элементы меню выбираем пункт Step -1 Ifспасибо, а какВыделяете столбец D + 1) + мой код, в
- Иоанн88 строку 5). целиком. повторяющиеся или скрытыеПример 3. Выделение группы. В блоке параметров в которых имеются раз из открывшегосяЦвет шрифта; в нем переключатель будут отмечены.
«Удалить…» Cells(i, 2).Value <>
сделать наоборот - — Найти/Заменить - «:» + (m общем, мучайтесь сами: Прошу помощи.Такая задачка.Пишу
- Тоже самое иНе снимая выделения ячейки таблицы можно ячеек. Выделяем всю«Фильтр по цвету ячейки» значения выручки менее списка выбираем позициюЗначок ячейки. в позицию
- Чтобы провести непосредственную процедуру. «k» And Cells(i, не удалять строки, в найти: держите + 10)]).EntireRow.Delete(Excel.XlDeleteShiftDirection.xlShiftUp); } )) программку которая будет при удалении столбцов F5 — перейти с помощью встроенного таблицу. В главномвыбираем значение 11000 рублей, были«Фильтр»
- Тут уже все зависит«Пустые ячейки» удаления строчек вызываемОткрывается небольшое окошко, в 2).Value <> «стал» если в ячейках Alt и на MessageBox.Show(«Удаление строк завершено!»);если коротко, то редактировать Еxcel документы — нужно цикл
— выделить - функционала программы Excel.
меню на вкладке«Нет заливки» окрашены в выбранный. от конкретных обстоятельств,. После этого жмем контекстное меню или котором нужно указать, And Cells(i, 2).Value числа от 0 цифровой панели набираете xlApp.Visible = true; строки удаляются так одного типа.Одинаковое количество пускать справа налево, пустые ячейки.Fynjy «Редактирование» нажимаем кнопку. цвет. Если намКак и в предыдущем но в большинстве на кнопку же переходим к
что именно нужно
lumpics.ru
Как удалить пустые строки в Excel быстрыми способами
<> «» And до 100, а 0010 — получитсяИоанн88C# iLastRow = строк и столбцов.Столкнулся
т.е. с концаПравый клик на: Добрый день! «Найти и выделить».Как видим, после этого нужно сохранить изначальный способе, задачу можно случаев подходит критерий«OK» инструментам на ленте, удалить. Переставляем переключатель
Как в таблице Excel удалить пустые строки?
Val(Cells(i, 2).Value) не остальные, от 100 такая точечка: Огромное человеческое спасибо xlSht.Cells[xlSht.Rows.Count, «A»].End[Excel.XlDirection.xlUp].Row; //последняя с такой проблемой.Мне
листа к началу. любой выделенной ячейкеможет быть такой Выбираем инструмент «Выделение действия все строчки, порядок, после удаления также решить через«Значения». а далее следуем в позицию получается сделать аналогичный
и выше -в Заменить на: Вам за помощь!!!!!!!Все
заполненная строка в нужно выбрать каждуюгость — удалить - вопрос уже повторялся группы ячеек». которые были залиты строк делаем дополнительную вкладку
. Хотя в дальнейшемКак видим, после того, тем рекомендациям, которые«Строку» макрос удалить. И в что-то нейтральное, типа прекрасно заработало!!!!!!!!!!!=)))))Дай Бог столбце А StartRow 11 строку(всего в: Ребята помогите с строку. тут, но я
В открывшемся окне выбираем цветом с помощью нумерацию в соседнем«Данные» мы поговорим и как мы применили
были даны во.1. НЕ УДАЛЯЛАСЬ обоих случаях не # — заменить здоровья и успеха = 2; for документе примерно 3000
удалением строк.В таблицеXxs
что то не пункт «Пустые ячейки». условного форматирования, исчезли. с таблицей столбце.
. Для этого, находясь об использовании другой
данное действие, все время описания первогоПосле этого указанный элемент строка если в удалять строки, если все
во всем такому (m = StartRow; строк),а промежуточные 10 много строк с: Спасибо Казанский, что нашел. Яндекс привелПрограмма отмечает пустые ячейки.
Они спрятаны фильтром,
Как удалить повторяющиеся строки в Excel?
Запускаем уже знакомое в ней, нужно позиции. пустые элементы выделены. и второго способа будет удален. ячейке столбца «B»
в ячейке вместоТеперь снова выделяете отзывчивому человеку!!!!!!!!!! m < iLastRow; строк удалить.Подскажите что ненужной информацией,на счастье я сразу не сюда. Надеюсь, что
На главной странице но если удалить
Как удалить каждую вторую строку в Excel?
нам окно сортировки щелкнуть по кнопкеВ поле
Теперь можно использовать данного руководства.Также можно кликнуть левой
- есть буква: b числа имеется знак столбец D -Тетка m++) { ((Excel.Range)xlSht.Rows[(m добавить в код. такие строки по заметил этот пробел… местные гуру Excel находим вкладку «Ячейки», фильтрацию, то в по столбцу«Фильтр»«Порядок»
- для их удаленияВыделить нужные элементы можно кнопкой мыши по
- 2. НЕ УДАЛЯЛАСЬ № Данные- текст по
- : Здравствуйте + 1) +C# using System;
счету «нечетные» илиЮрий М мне помогут.
Как удалить скрытые строки в Excel?
нажимаем «Удалить». таком случае, указанные«Сумма выручки», которая расположена внужно указать, в любой из способов, также через вертикальную номеру строчки на строка если вScripter
столбцам — сМожно ли в «:» + (m
using System.Collections.Generic; using
- «нечетные».Как их удалить?: Гы… Так каждуюНеобходимо удалить каждую
- Результат – заполненный диапазон элементы снова отобразятсялюбым из способов, блоке инструментов
- каком порядке будут о которых шла
- панель координат. В вертикальной панели координат. ячейке столбца «B»
: Dim sh As разделителем Другой, ставите таблице удалить одновременно
+ 10)]).EntireRow.Delete(Excel.XlDeleteShiftDirection.xlShiftUp); }В System.ComponentModel; using System.Data;lelya вторую или все вторую строчку из
exceltable.com
Как удалить каждую вторую строчку из Excel
«без пустот». в документе.
о которых шла«Сортировка и фильтр» сортироваться данные. Выбор речь выше. Например, этом случае будут Далее следует щелкнуть есть слово: стал Worksheet, i As
#, предварительно вставьте каждую 2 строку? моём файле остаются using System.Drawing; using: Можно такой способ,
пустые? На мой
массива данных. Google
Внимание! После удаления часть
Урок: речь выше.. критериев в этом
можно нажать на выделяться не отдельные по выделению правой
3. НЕ УДАЛЯЛАСЬ
Long Set sh рядом столбец пустой.
Например: 1,3,5,7 следующие строки: 1, System.Linq; using System.Text;
немного длинный. взгляд это разные
посоветовал мне вот ячеек перескакивает вверх
Условное форматирование в ЭкселеОткрывается окно сортировки. Как
После выполнения любого из поле зависит от
кнопку
ячейки, а строчки кнопкой мышки. В
строка если ячейка
= Sheets(«Лист1») Withбольшое спасибо, яa_s_p 2, 13, 24, using System.Threading.Tasks; using
Вводим колонку(например столбец
вещи :-)
такой макрос: – данные могутКак видим, существует очень всегда, обращаем внимание, вышеуказанных действий около формата данных выделенного
«Удалить»
полностью.
активировавшемся меню требуется
столбца «B»- пустая
sh.UsedRange.Columns(2) For i разобрался: Можно с помощью 35 и далее System.Windows.Forms; using Excel А), с номерамиpolkan————————————————————————- перепутаться. Поэтому для большое количество способов чтобы около пункта правой границы каждой столбца. Например, для, которая расположена на
Для того, чтобы выделить
выбрать пункт4. УДАЛЯЛАСЬ строка = .Rows.Count Tosashgera
VBA с шагом 11
= Microsoft.Office.Interop.Excel; namespace строк.Затем пишем формулу
planetaexcel.ru
Удаление каждой второй строки макросом
: Продолжу тему, вSub Delete_Every_Other_Row() перекрывающихся диапазонов инструмент удалить ненужные строки.
«Мои данные содержат заголовки» ячейки шапки появится текстовых данных порядок ленте в той смежную группу строк,«Удалить» если в ячейке 2 Step -1: ЗдравствуйтеТетка
1-я строка остаётся, WindowsFormsApplication { public=IF(MOD(A1;2)=1;1;0), протягиваем ее
огромном столбце с’ Переменные размерности. не подходит. Каким именно вариантомстояла галочка. В символ фильтрации в
будет же вкладке зажимаем левую кнопку.
столбца «B» есть If Val(Cells(i, 2).Value)Есть макрос, который: это что?
т.к. я увидел, partial class Form1 на все строки, данными , надо
Y = FalseПолезный совет! Сочетание клавиш воспользоваться зависит от поле виде треугольника, направленного«От А до Я»
«Главная» мыши и проводимВ этом случае процедура число: от 400 > 100 Then удаляет строки, еслиЮрий М что вы туда
: Form {
отфильтровываем 0 или удалить 1,2 4,5
‘ Измените значение для удаления выделенной
поставленной задачи и
«Сортировать по»
углом вниз. Жмемили, где мы сейчас
курсором по вертикальной
удаления проходит сразу
и выше Rows(i).Delete Next i
в столбце ‘B’
: Можно и без
записываете название столбца
public Form1() {
1(нечетные или четные) 7,8 и т.д.
на True, если
строки в Excel от количества удаляемыхвыбираем столбец
по этому символу«От Я до А»
работаем.
панели координат от
и не нужно5. УДАЛЯЛАСЬ строка End With имеются числа от
VBA — выделить
Если нужно удалять
InitializeComponent(); } private
и удаляем ненужное. строки, не поможете
необходимо
CTRL+«-». А для
элементов. Например, чтобы
«Сумма выручки»
в том столбце,, а для даты
Как видим, все незаполненные верхнего строчного элемента, производить дополнительные действия если в ячейке
sashgera 0 до 100 необходимые и удалить начиная со 2-й
void Form1_Load(object sender,lelya макросом.’ удалить строки
ее выделения можно
удалить одну-две строчки. В поле где находится значение,
«От старых к новым» элементы таблицы были который нужно удалить, в окне выбора
столбца «B» есть: Scripter, большое спасибо,
Sub Макрос22() Dim
) строки, то измените EventArgs e) {: Сорри, можно, конечно,Спасибо ! 1, 3, 5 нажать комбинацию горячих вполне можно обойтись«Сортировка» по которому мыили удалены. к нижнему. объекта обработки. какой либо текст, все отлично работает! sh As Worksheet,
Z переменную StartRow = } private void просто функцию modARTEM и т.д.
planetaexcel.ru
Как удалить каждую четную или нечетную строку?
клавиш SHIFT+ПРОБЕЛ. стандартными инструментами одиночногоустанавливаем значение будем убирать строки.«От новых к старым»Обратите внимание! При использованииМожно также воспользоваться иКроме того, эту процедуру
кроме ‘b’ иsashgera i As Long
: А как нужно? 2, на StartRow button1_Click(object sender, EventArgs
Dominique: i = 3I = 1 удаления. Но чтобы
«Цвет ячейки»Открывается меню фильтрования. Снимаем. Собственно сам порядок
данного метода строчка вариантом с использованием можно выполнить с ‘стал’
: Scripter, Set sh =
Как сами пробовали, = 1 e) { //поиск: А можно как-то
While i Rows(i).DeleteSet xRng =
Чтобы удалить одинаковые строки выделить много строк,
. В следующем поле
галочки с тех
большого значения не
должна быть абсолютно
клавиши помощью инструментов напробовал так, все
только что заметил, Sheets(«Лист1») With sh.UsedRange.Columns(2) что не получается?и ещё, в файла Excel OpenFileDialog потом автоматически выделить
Shift:=xlUp Selection в Excel, выделяем пустые ячейки или
выбираем тот цвет, значений в строчках, имеет, так как пустая. Если в
Shift ленте, которые размещены
выполняется, кроме одного не удаляются пустые
For i =
Есть функция =ЕНЕЧЁТ(),
коде находится последняя
ofd = new
четные/нечетные строки?i = i + 2’ Цикл по
всю таблицу. Переходим элементы по заданному строчки с которым которые хотим убрать. в любом случае таблице имеются пустые
. Кликаем левой кнопкой во вкладке -
ячейки, .Rows.Count To 1
пометить, отфильтровать, удалить заполненная строка в
OpenFileDialog(); ofd.Multiselect =Юрий МWend всем строкам выделенного на вкладку «Данные»
условию, существуют алгоритмы нужно удалить, согласно После этого следует интересующие нас значения элементы, расположенные в
мышки по первому
«Главная»
макрос не удаляет строки
а в ячейках,
Step -1 With — вариант?!.
столбце А и false; ofd.DefaultExt =
:ARTEM диапазона.
planetaexcel.ru
Выбрать каждую 11 строку в Excel, а промежуточные 10 строк удалить
— «Работа с действий, которые значительно условному форматированию. В нажать на кнопку будут располагаться вместе. строке, которая содержит номеру строки диапазона,. если в ячейке где стоит знак .Cells(i) If 0a_s_p цикл удаления идёт
«*.xls;*.xlsx»; ofd.Filter =R Dmitry: Сорри… так этиFor xCounter = данными» — «Удалить облегчают задачу пользователям нашем случае это«OK»После того, как какие-то данные, как который следует удалить.Производим выделение в любом столбца «B» есть № — всеПомогите, пожалуйста, изменить: Да, эт мне до этой последней «Microsoft Excel (*.xls*)|*.xls*»;: А можно как-то строки наоборот останутся)) 1 To xRng.Rows.Count дубликаты». и экономят их розовый цвет. В. настройка в данном на изображении ниже, Затем зажимаем клавишу месте строчки, которую текст нормально, они не код макроса, что сразу хочется огород строки (а не ofd.Title = «Выберите потом автоматически выделитьlr = ActiveSheet.Range(«A1″).CurrentRegion.Rows.Count’ Если YВ открывшемся окне выделяем время. К таким полеТаким образом, строки, содержащие окне выполнена, жмем этот способ применятьShift требуется убрать. ПереходимIf Cells(i, 2).Value удаляются бы строки удалялись, городить) до 3000), если документ Excel»; if четные/нечетные строки?{/post}{/quote}i = 1 = True, тогда… те столбцы, в инструментам относится окно«Порядок» значения, с которых на кнопку нельзя. Его использованиеи выполняем щелчок во вкладку <> «b» Andесли можно поправьте начиная со строкиТетка у вас данные (ofd.ShowDialog() != DialogResult.OK)можно и автоматическиwhile i Rows(i+1).DeleteIf Y = которых находятся повторяющиеся выделения группы ячеек,выбираем, где будут вы сняли галочки,«OK» может повлечь сдвиг по последнему номеру«Главная» Cells(i, 2).Value <>Dim sh As ‘B2’ и до: =ЕНЕЧЁТ(RC[1];R[6533]C)
в другом столбце, { MessageBox.Show(«Вы не макросом Shift:=xlUp True Then значения. Так как сортировка, фильтрация, условное размещаться отмеченные фрагменты: будут спрятаны. Но. элементов и нарушение указанной области. Весь. Кликаем по пиктограмме «стал» And Cells(i, Worksheet, i As
последней активной ячейкиТак не получилось.
то в этой выбрали файл дляно пример тожеRows(i).Delete Shift:=xlUp’ …удалить целую нужно удалять повторяющиеся форматирование и т.п. сверху или снизу. их всегда можноВсе данные выбранной колонки структуры таблицы. диапазон строчек, лежащий в виде небольшого 2).Value <> «» Long Set sh этого столбца (строки
Александр Сергеевич строке открытия», «Внимание», MessageBoxButtons.OK, нужно
i = i+1 строку ячеек. строки, то должныАвтор: Максим Тютюшев Впрочем, это не будет снова восстановить,
будут отсортированы поУрок: между этими номерами, треугольника, которая расположена And Val(Cells(i, 2).Value) = Sheets(«склад») With в таблице добавляются/удаляются).: =ОСТАТ(СТРОКА();2)iLastRow = xlSht.Cells[xlSht.Rows.Count, «A»].End[Excel.XlDirection.xlUp].Row; MessageBoxIcon.Information); return; }если без примераlr = ActiveSheet.Range(«A1»).CurrentRegion.Rows.Count
xRng.Cells(I).EntireRow.Delete
быть выделены всеПри импорте и копировании имеет принципиального значения.
сняв фильтрацию. заданному критерию. ТеперьКак удалить пустые строки будет выделен. справа от значка > 399 Then sh.UsedRange.Columns(2) For iЕсли в ячейкефильтр и уделениепоменяйте А в
string xlFileName =Sub test()Wend’ В противном столбцы. таблиц в Excel Стоит также отметить,Урок: мы можем выделить
в ЭкселеЕсли удаляемые строки разбросаны«Удалить» Rows(i).Delete = .Rows.Count To вместо числа имеетсяa_s_p кавычках, на ваш ofd.FileName; //имя нашегоRange(«2:2,4:4,6:6,8:8,10:10»).Delete Shift:=xlUpКазанский случае…После нажатия ОК Excel могут формироваться пустые что наименованиеПрименение фильтра в Excel рядом находящиеся элементыДля того, чтобы убрать по всему листув блоке инструментовесли можно, пожалуйста, 5 Step -1 знак № –: =ЕНЕЧЁТ(СТРОКА()) столбец, например, «C» Excel файла Excel.RangeEnd Sub: Sub bb()Else формирует мини-отчет вида: строки и ячейки.«Порядок»Ещё более точно можно любым из тех строки по определенному и не граничат«Ячейки» помогите If Val(Cells(i, 2).Value) то строку неZP.S. И посмотрите, Rng; Excel.Workbook xlWB;выбирает строки сDim i&’ …увеличить переменнуюПроредить таблицу можно с Они мешают работе,
может быть смещено задать параметры выбора вариантов, о которых условию можно применять друг с другом,. Выпадает список, вScripter
CyberForum.ru
Можно ли в таблице удалить одновременно каждую 2 строку?
> 100 Then удалять
: Файл (ма-а-а-ленький) - как я записываю Excel.Worksheet xlSht; Excel.Range 1 по 10
For i = I на единицу помощью макроса. Например,
отвлекают. влево от самого
строк, если вместе шла речь при сортировку. Отсортировав элементы то в таком котором нужно выбрать
: так Rows(i).Delete Next i..и как все в студию! Есть данные в ячейку, zagl1; Excel.Range zagl2; и удаляет четные
Cells.SpecialCells(xlCellTypeLastCell).Row To 1 и продолжить выполнение такого:Некоторые формулы могут работать
поля. После того, с сортировкой или
рассмотрении предыдущих способов,
по установленному критерию, случае, нужно щелкнуть
пункт
Sub Макрос5() Dim End With
сделать наоборот: не такое — хоццf так намного проще, Excel.Range zagl3; Excel.Rangeесли будет пример
Step -1 цикла по диапазонуА можно ручками. Предлагаем
planetaexcel.ru
Удалить первую строчку в каждой ячейке
некорректно. Использовать ряд как все вышеуказанные
фильтрацией использовать инструменты и произвести их мы сможем собрать левой кнопкой мыши«Удалить строки с листа» sh As Worksheet,
[USER=11992][/USER] удалять строки, если этакого!..
чем присваивать ячейку zagl4; Excel.Range zagl5; то можно цикломIf i Mod ячеек. простенький способ, доступный
инструментов в отношении настройки выполнены, жмем условного форматирования. Вариантов удаление.
все строчки, удовлетворяющие по всем номерам.
i As LongScripter в ячейках числаТетка переменной. Так же Excel.Range zagl6; Excel.Range выбрать все четные 3 Then Rows(i).DeleteI = I + 1
каждому пользователю. не полностью заполненного на кнопку
ввода условий вКстати, этот же способ условию вместе, если этих строчек наСтрочка будет тут же Set sh =
: добавил проверку на от 0 до
: Спасибо. С помощью посмотрите, как я cell; Excel.Application xlApp или нечетные доNextEnd IfВ конце таблицы делаем диапазона невозможно. Научимся«OK» этом случае очень
можно использовать для они разбросаны по панели координат с удалена. Sheets(«склад») With sh.UsedRange.Columns(2) пустые ячейки 100, а остальные
автофильтра удалила. очищаю столбцы, тоже = new Excel.Application(); конца диапазона и
End Sub’ Если Y вспомогательный столбец. Заполняем быстро удалять пустые. много, поэтому мы группировки и массового
всей таблице, и зажатой клавишей
CyberForum.ru
Удаление строк таблицы по условию
Также можно выделить строку For i =
Dim sh As удалить. Если вДеметрио без присвоения диапазона //создаём приложение Excel
удалитьpolkan = True, изменить чередующимися данными. Например, ячейки в концеКак видим, все строчки, рассмотрим конкретный пример, удаления пустых строчек. быстро убрать их.
Ctrl в целом, щелкнув .Rows.Count To 2 Worksheet, i As ячейке вместо числа: Ребят, я нуб. переменной xlApp.Visible = true;
Dominique: Спасибо Казанский Вы значение на False; «о у о или середине таблицы.
в которых имеются чтобы вы понялиВнимание! Нужно учесть, чтоВыделяем всю область таблицы,. левой кнопки мыши Step -1 If Long Set sh имеется знак №У меня естьИ, кстати, процесс удаления
xlWB = xlApp.Workbooks.Open(xlFileName);: Там только про сэкономили мне не если Y = у о у» Будем использовать простые
выделенные по условию сам механизм использования при выполнении такого в которой следуетДля того, чтобы убрать
по её номеру ((Not IsNumeric(Cells(i, 2).Value) = Sheets(«склад») With
– то строку столбец, в каждой строк очень долгий //открываем наш файл форматирование, а мне один час времени False, изменить значение и т.д. Вносим средства, доступные пользователю ячейки, сгруппированы вместе. этой возможности. Нам вида сортировки, после провести сортировку, или выбранные строки, щелкаем на вертикальной панели And Cells(i, 2).Value sh.UsedRange.Columns(2) For i не удалять ячейке в этом (секунд 20-30) xlSht = xlWB.Worksheets[«Лист1»];
удалить потом нужно……но что тогда на True. значения в первые любого уровня. Они будут располагаться нужно удалить строчки удаления пустых ячеек одну из её по любому выделению координат. После этого, <> «b» And
= .Rows.Count ToScripter
столбце необходимо убрать, так что советую //или так xlShtDominiquelr = ActiveSheet.Range(«A1»).CurrentRegion.Rows.CountY = Not Y четыре ячейки. ПотомЧтобы показать на примере, вверху или внизу в таблице, по положение строк будет ячеек. Переходим во правой кнопкой мыши. находясь во вкладке
Cells(i, 2).Value <> 5 Step -1: просто изменить For верхнюю строчку и строку = xlWB.ActiveSheet //активный: А можно как-тоi = 1Next xCounter выделяем их. «Цепляем» как удалить лишние таблицы, в зависимости
которым сумма выручки отличаться от первоначального. вкладку
В контекстном меню«Главная»
«стал») _ Or If Val(Cells(i, 2).Value) i = .Rows.Count
оставить только вторую.xlApp.Visible = true; лист Rng = потом автоматически выделитьwhile i Rows(i+1).Delete
End Sub
за черный крестик строки, для демонстрации от того, какие менее 11000 рублей. В некоторых случаях«Главная» останавливаемся на пункте, жмем на значок Val(Cells(i, 2).Value) >= > 100 Or To 1 Step
Подскажите, как можно
поставить после цикла, (Excel.Range)xlSht.Columns[«G:P», Type.Missing];//очистка столбцов четные/нечетные строки?{/post}{/quote}
Shift:=xlUp————————————— в правом нижнем порядка действий возьмем параметры пользователь задалВыделяем столбец это не важно.и кликаем по«Удалить»«Удалить» 400) And Cells(i, Cells(i, 2).Value = -1 на это сделать не а не перед
Rng.Clear(); zagl1 =
можно и автоматическиRows(i).Delete Shift:=xlUp
Однако он не
углу и копируем таблицу с условными
в окне сортировки.«Сумма выручки» Но, если вам значку
., размещенный в блоке 2).Value <> «» «» Then Rows(i).DeleteTo2
в ручную. циклом удаления xlSht.get_Range(«A1», Type.Missing); zagl1.Value2 макросом
i = i+1 работает, то есть буквы до конца данными:
Теперь просто выделяем, к которому хотим обязательно нужно вернуть
«Сортировка и фильтр»Операция удаления всех выбранных инструментов Then Rows(i).Delete Next Next i Endно ваш код
Вот на скрине,C# //поиск файла = «Время,с»; zagl2но пример тожеlr = ActiveSheet.Range(«A1»).CurrentRegion.Rows.Count работает, но удаление диапазона.Пример 1. Сортировка данных эти строчки тем применить условное форматирование. первоначальное расположение, то, которая расположена в элементов будет произведена.«Ячейки» i End With Withпроверка на пустые
будет выдавать ошибку мне надо убрать Excel OpenFileDialog ofd = xlSht.get_Range(«B1», Type.Missing);
нужноWend происходит как тоУстанавливаем «Фильтр». Отфильтровываем последний
в таблице. Выделяем методом, который предпочитаем, Находясь во вкладке
тогда перед проведением группеУрок:. End Sub
может быть выполнена в случае конвертации город, чтобы в = new OpenFileDialog(); zagl2.Value2 = «P1,атм»;если без примера
это же не странно — удаляются столбец по значению всю таблицу. Открываем и проводим их«Главная» сортировки следует построить
«Редактирование»Как выполнить выделение вДля выполнения группового удаленияsashgera разными вариантами: пустой ячейки в ячейке осталась только ofd.Multiselect = false;
zagl3 = xlSht.get_Range(«C1»,Sub test()
модуль, так ? так же и
«у». вкладку «Данные» - удаление с помощью, производим щелчок по дополнительный столбец и. В открывшемся списке Excel строчек, прежде всего,: Scripter, спасибо!Cells(i, 2).Value = «» Cnlg, фамилия и имя ofd.DefaultExt = «*.xls;*.xlsx»; Type.Missing); zagl3.Value2 =Range(«2:2,4:4,6:6,8:8,10:10»).Delete Shift:=xlUpКазанский необходимые данныею. напримерВыделяем все что осталось инструмент «Сортировка и
контекстного меню или значку
planetaexcel.ru
пронумеровать в нем
На чтение 5 мин Просмотров 8.3к. Опубликовано 12.05.2022
Часто бывает такое, что нужно удалить один или несколько символов из начала каждой ячейки.
Допустим у нас есть первый столбик, в котором лежат значения буква+цифры, нам нужно обрезать их таким образом, чтобы получились только цифры. Как на картинке ниже:
На самом деле, есть несколько вариантов, как можно это сделать.
Итак, давайте начнем!
Содержание
- С помощью функции ЗАМЕНА
- Копируем из ячейки все, кроме первого символа
- С помощью функции «Текст по столбцам»
- С помощью автозаполнения
- С помощью Visual Basic
С помощью функции ЗАМЕНА
Самый распространенный способ — использовать функцию ЗАМЕНА. Она довольно простая и в то же время полезная.
Для указанного выше примера формула функции принимает такой вид:
=ЗАМЕНА(A2;1;1;"")
Что она делает?
Просто заменяет первый символ в строке на пустое место.
С помощью неё можно удалить любое количество символов с начала строки, например удалить два символа можно так:
=ЗАМЕНА(A1;1;2;"")
Копируем из ячейки все, кроме первого символа
Можно сделать и так, в этом случае формула будет немного сложней, но результата мы добьемся.
Разница в том, что в первом случае мы удаляли первый символ из строки, а в этом случае — мы просто разделяем строку и переносим нужную её часть в другую ячейку.
Допустим, у нас тот же столбик, который нужно обработать:
В этой ситуации формула принимает такой вид:
=ПРАВСИМВ(A1;ДЛСТР(A1)-1)
Функция ДЛСТР получает длину всей строки, а далее из длины убавляется 1 (потому что 1 символ мы хотим «пропустить») и все это отдается в обработку функции ПРАВСИМВ.
С помощью функции «Текст по столбцам»
Прошлые методы простые, но неудобны тем, что для них нужен отдельный столбец, так сказать, «технический» (для расчетов).
Если, например, вам нужно получить результат в тех же ячейках, которые мы обрабатываем, грубо говоря, перезаписать их, то вам поможет этот метод.
Допустим, у нас тот же столбик:
Пошаговая инструкция:
- Выделите ячейки и щелкните на «Данные»;
- Далее «Текст по столбцам»;
- В открывшемся окошке:
- В первом шаге используйте вторую опцию (как на картинке);
- Во втором шаге установите стрелку на том делении, сколько символов вы хотите «отрезать»;
- И в последнем шаге, выберите «пропустить столбец»;
- Подтвердите.
Таким образом, первый символ был удален.
Как это работает?
Довольно просто: вы указали функции сколько символов нужно «отрезать» от начала строки, а также вы указали пропустить столбец. Это значит что данные, после обработки, будут записаны в тот же столбик, где они изначально были.
С помощью автозаполнения
Эта функция — одна из самых удобных функций в Excel. Она автоматически пытается угадать значения для следующих ячеек, если вы заполнили первую (одну или две).
Давайте посмотрим как это работает.
Допустим, у нас тот же столбик:
Воспользуемся этой функцией
Пошаговая инструкция:
- В следующем столбике, впишите значение, которое должно быть после преобразования (в нашем случае 271);
- А также, по аналогии, укажите значение для второй ячейки. На самом деле, функция автозаполнения уже поняла логику и предлагает нам заполнить всю оставшуюся часть;
- Теперь выделите обе ячейки с обработанными данными;
- Наведите курсор на правую нижнюю часть выделения и потяните её вниз;
- Готово!
Просто не правда ли?
Это удобная функция, но с ней нужно быть осторожным. Если она неправильно поймет логику вашего заполнения — могут быть ошибки.
С помощью Visual Basic
Ну и как обычно, напоследок, рассмотрим как можно сделать это с помощью Visual Basic.
Я дам вам код функции для такого рода задачи, вы сможете модифицировать его.
Также, как и в случае использования функции «Текст по столбцам» в этом методе нам не нужен дополнительный столбик для расчетов.
Обратите внимание, что если строк, которые нужно обработать у вас очень много, выполнение этого кода может замедлить работу компьютера на какое-то время.
Этот код удаляет первый символ из каждой ячейки:
For Each cell In Selection: cell.Value = Right(cell.Value, Len(cell.Value) - 1): Next cell
Как его использовать?
Пошаговая инструкция:
- Выделите диапазон ячеек, в которых нужно удалить первый символ
- Откройте просмотр кода (правой кнопкой на имя листа -> «Просмотр кода»);
- Далее щелкните на «View» -> «Immediate Window» (или CTRL + G);
- Поместите в окно наш код;
- Обязательно наведите мышь в конец кода;
- И просто подтвердите (нажав ENTER);
Готово, первый символ удален.
Что же делает этот код?
For Each cell In Selection: cell.Value = Right(cell.Value, Len(cell.Value) - 1): Next cell
Итак, здесь используется цикл, который копирует и перезаписывает каждую ячейку отдельно.
В общем то и все! Мы рассмотрели несколько удобных и практичных методов удаления первого символа из каждой ячейки.
Я надеюсь эта статья была полезна для вас! Потому что даже если какой-то способ вам не по душе, вы всегда можете использовать несколько других.
Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article
In this article, we will see how to delete every other row or every nth row in excel. Generally, deleting every other row in Excel boils down to selecting alternate rows. Once the rows are selected, a single stroke on the Delete button is all it takes. But there are simpler ways to achieve so which we will be discussing in this article.
Implementation:
We can delete every nth column in excel by following steps:
- Create an extra column say ‘Helper’.
- Write modulus formula that divides the row number by n(nth row you want to delete) number in helper column.
- Filter out data whose helper column value is 1. (considering column header has row value 1 and entries starts from row number 2)
- Delete the filtered data.
- View the original data, delete the helper column created earlier.
- you can see that nth row data is deleted now.
Example:
We have the following data in excel:
For demonstration purposes follow the below steps:
Step 1: Create a new column with the name ‘Helper’.
Step 2: Write the formula.
- For demonstration delete every third column of the data.
Formula used: Mod(row(),3)
Step 3: Filter data
- We want to delete every third row, which means whose helper column value is 1.
- To filter data, go to Data>>Filter>> Autofilter.
- Select ‘1’ from the dropdown displayed with the Helper column.
Step 4: Delete filter data
- To delete the data: select data>> right click>> delete>> delete entire row.
- Press ‘OK’.
Step 5: View original data
- To go back to the original data, go to Data>>Filter>>Autofilter
- We can see that every third row is deleted as compared to the original data presented earlier.
Step 6: Delete the Helper column.
- Select helper column>> right click>> delete>> delete entire column>> select ok.
Final result:
Like Article
Save Article