Как удалить четные строки в excel

Обновлено: 07.07.2024

У меня есть несколько сотен строк с данными. Однако, они разбиты так что, в четных строках (F10, F12. F256) записанны одни данные (первый семестр например) , а в нечетных (F11,F13. F257) другие (второй семестр например) . Так вот в конце мне надо посчитать отдельно сумму только четных и сумму только не четных. Естественно вариант с F2+F4+F6 не подходит - я рехнусь быстрее.
Кто-нибудь, подскажите, какая формула - мозг уже сломал)
Заранее всем спасибо!

1) пусть в столбце A - твои числа которые надоть суммировать
2)в столбце B распространи формулу: =ОСТАТ(СТРОКА();2)
3)тогда для решения твоей задачи в C1 помести формулу: =СУММЕСЛИ(B:B;1;A:A)
в C2 помести формулу: =СУММЕСЛИ(B:B;0;A:A)

Так, на вскидку.
Где нибудь в стороне, чтобы не мешался, например АА сделай столбец, где проставь нечётные 1, чётные 2 например. (допустим, что строки у тебя с 8 по 356 например и столбец Е) .
Тогда формула для нечётных будет =СУММЕСЛИ (АА8:АА356;1;Е8:Е356)
Для чётных =СУММЕСЛИ (АА8:АА356;2;Е8:Е356)
Если подумать маленько, то может что и поумней в голову придёт.

если тебе через одну (например нечетные только чтобы считало ), делаешь след образом
например, строки 1,2,3,4 выделяешь и перетаскиваешь маркером на други строки и он тебе посчитает, но фишка в том, что предварительно ты удаляешь ячейки строк 2 и 4 . Таким же образом делается и с четными строками. Но результаты подчсета таким образом можно получить на разных столбцах

Можно запиндрючить еще один столбец. Я думаю ты умеешь это. Озаглавить его хоть как. И вписать в этот столбец слова "четные" и "нечетные" через раз и так все 256 строк. Тут можно пользоваться умением Ексель копировать. Надеюсь ты тоже это умеешь. А потом поставить Автофильтр. И все. Выбираешь в фильтре либо четные строки, либо нечетные. Ну и суммируешь. Мой способ самый простой. Не нало голову ломать.

На встроеном визуальном бейсике это элементарно. Без него я не знаю как выкрутиться

Это сложный навык, связанный с тем, как фильтровать каждую вторую строку, фильтровать каждую четную / нечетную строку и фильтровать каждую n-ю строку в Excel с помощью команды Filter.

Отфильтруйте каждую вторую строку (четную или нечетную) с помощью формулы

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

1. В пустом столбце, в столбце E, введите формулу = МОД (A2,2) в ячейке E2. См. Следующий снимок экрана:


2: Выберите диапазон E2: E17 и щелкните Главная >> Заполнять >> вниз , чтобы скопировать эту формулу во все выделенные ячейки.

Теперь он заполняет выделение 1, 0, 1…., 1, 0. См. Следующий снимок экрана:


3: Выберите столбец E и щелкните значок Фильтр под Данные меню.


4: Щелкните стрелку в столбце E снимите флажок (Выбрать все) пункт и проверьте 0 в коробке фильтра. См. Следующий снимок экрана:


5: нажмите OK.

Теперь он немедленно фильтрует каждую вторую строку (нечетные строки), как показано на следующем снимке экрана:


Заметки:

1. Отфильтруйте каждую вторую строку (четные строки)

Если вы хотите отфильтровать каждую вторую строку (четные строки), выполните те же действия, которые мы сказали вам выше, и проверьте 1 элемент в поле фильтра в Шаг 4.

2. Отфильтруйте каждую n-ю строку

В столбце справки вы получили 1, 0, 1, 0…, 1, 0 с формулой = МОД (A2; 2). Фактически, вы можете изменить формулу и получить другой делитель для фильтрации.
Например, вы можете применить формулу = Mod (A2; 5) фильтровать каждый 5 ряд с теми же шагами, которые мы сказали вам в Отфильтруйте каждую вторую строку (нечетные строки).

Заполните каждую вторую строку (нечетные / четные строки) с помощью Kutools for Excel

Освободи Себя Выберите интервальные строки и столбцы полезности Kutools for Excel помогает легко выбрать все нечетные строки или четные строки в выбранном диапазоне, а затем вы можете скопировать и вставить эти выбранные нечетные строки или четные строки в новый диапазон по мере необходимости.

Перед применением Kutools for Excel, Пожалуйста, сначала скачайте и установите.

1. Выберите диапазон, в котором вы хотите отфильтровать все нечетные строки или четные строки (для фильтрации всех четных строк игнорируйте первую строку при выборе диапазона), затем щелкните Kutools > Выберите > Выберите интервальные строки и столбцы. Смотрите скриншот:


2. в Выберите интервальные строки и столбцы в диалоговом окне выберите Ряды вариант, введите цифру 1 в Интервал и Ряды поле отдельно, а затем щелкните OK кнопку.


Внимание: Если вы хотите выбрать все строки, которые соответствуют критериям, установите флажок Sвыбирать целые строки пунктом.

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


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

Имеем диапазон ячеек с данными, в котором есть пустые ячейки:

Задача - удалить пустые ячейки, оставив только ячейки с информацией.

Способ 1. Грубо и быстро

  1. Выделяем исходный диапазон
  2. Жмем клавишу F5, далее кнопка Выделить(Special) . В открывшмся окне выбираем Пустые ячейки(Blanks) и жмем ОК.

delete_blanks3.jpg

Способ 2. Формула массива

Для упрощения дадим нашим рабочим диапазонам имена, используя Диспетчер Имен (Name Manager) на вкладке Формулы (Formulas) или - в Excel 2003 и старше - меню Вставка - Имя - Присвоить (Insert - Name - Define)

Диапазону B3:B10 даем имя ЕстьПустые, диапазону D3:D10 - НетПустых. Диапазоны должны быть строго одного размера, а расположены могут быть где угодно относительно друг друга.

Теперь выделим первую ячейку второго диапазона (D3) и введем в нее такую страшноватую формулу:

В английской версии это будет:
=IF(ROW()-ROW(НетПустых)+1>ROWS(ЕстьПустые)-COUNTBLANK(ЕстьПустые),"",INDIRECT(ADDRESS(SMALL((IF(ЕстьПустые<>"",ROW(ЕстьПустые),ROW()+ROWS(ЕстьПустые))),ROW()-ROW(НетПустых)+1),COLUMN(ЕстьПустые),4)))

Причем ввести ее надо как формулу массива, т.е. после вставки нажать не Enter (как обычно), а Ctrl+Shift+Enter. Теперь формулу можно скопировать вниз, используя автозаполнение (потянуть за черный крестик в правом нижнем углу ячейки) - и мы получим исходный диапазон, но без пустых ячеек:

Способ 3. Пользовательская функция на VBA

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

Для этого откройте редактор Visual Basic (ALT+F11), вставьте новый пустой модуль (меню Insert - Module) и скопируйте туда текст этой функции:

Не забудьте сохранить файл и вернитесь из редактора Visual Basic в Excel. Чтобы использовать эту функцию в нашем примере:

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

Давайте рассмотрим несколько способов решения этой задачи.

Способ 1. Поиск пустых ячеек

Это, может, и не самый удобный, но точно самый простой способ вполне достойный упоминания.

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

Исходные данные

Допустим, мы уверены, что в первом столбце нашей таблицы (колонка B) всегда обязательно присутствует название какого-либо города. Тогда пустые ячейки в этой колонке будут признаком ненужных пустых строк. Чтобы быстро их все удалить делаем следующее:

  1. Выделяем диапазон с городами (B2:B26)
  2. Нажимаем клавишу F5 и затем кнопку Выделить (Go to Special) или выбираем на вкладке Главная - Найти и выделить - Выделить группу ячеек (Home - Find&Select - Go to special) .
  3. В открывшемся окне выбираем опцию Пустые ячейки (Blanks) и жмём ОК – должны выделиться все пустые ячейки в первом столбце нашей таблицы.
  4. Теперь выбираем на вкладке Главная команду Удалить - Удалить строки с листа (Delete - Delete rows) или жмём сочетание клавиш Ctrl + минус - и наша задача решена.

Само-собой, от пустых столбцов можно избавиться совершенно аналогично, взяв за основу шапку таблицы.

Способ 2. Поиск незаполненных строк

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

Взгляните, например, на следующую таблицу - как раз такой случай:

Исходные данные с пустыми ячейками

Здесь подход будет чуть похитрее:

    Введём в ячейку A2 функцию СЧЁТЗ (COUNTA) , которая вычислит количество заполненных ячеек в строке правее и скопируем эту формулу вниз на всю таблицу:

Считаем количество заполненных ячеек

К сожалению, со столбцами такой трюк уже не проделать – фильтровать по столбцам Excel пока не научился.

Способ 3. Макрос удаления всех пустых строк и столбцов на листе

Для автоматизации подобной задачи можно использовать и простой макрос. Нажмите сочетание клавиш Alt + F11 или выберите на вкладке Разработчик - Visual Basic (Developer - Visual Basic Editor) . Если вкладки Разработчик не видно, то можно включить ее через Файл - Параметры - Настройка ленты (File - Options - Customize Ribbon) .

В открывшемся окне редактора Visual Basic выберите команду меню Insert - Module и в появившийся пустой модуль скопируйте и вставьте следующие строки:

Закройте редактор и вернитесь в Excel.

Теперь нажмите сочетание Alt + F8 или кнопку Макросы на вкладке Разработчик. В открывшемся окне будут перечислены все доступные вам в данный момент для запуска макросы, в том числе только что созданный макрос DeleteEmpty. Выберите его и нажмите кнопку Выполнить (Run) - все пустые строки и столбцы на листе будут мгновенно удалены.

Способ 4. Запрос Power Query

Ещё один способ решить нашу задачу и весьма частый сценарий - это удаление пустых строк и столбцов в Power Query.

Сначала давайте загрузим нашу таблицу в редактор запросов Power Query. Можно конвертировать её в динамическую "умную" сочетанием клавиш Ctrl+T или же просто выделить наш диапазон данных и дать ему имя (например Данные) в строке формул, преобразовав в именованный:

Присваиваем имя диапазону данных

Теперь используем команду Данные - Получить данные - Из таблицы/диапазона (Data - Get Data - From table/range) и грузим всё в Power Query:

Загруженные в Power Query данные

Дальше всё просто:

  1. Удаляем пустые строки командой Главная - Сократить строки - Удалить строки - Удалить пустые строки (Home - Remove Rows - Remove empty rows).
  2. Щёлкаем правой кнопкой мыши по заголовку первого столбца Город и выбираем в контекстном меню команду Отменить свёртывание других столбцов (Unpivot Other Columns). Наша таблица будет, как это технически правильно называется, нормализована - преобразована в три столбца: город, месяц и значение с пересечения города и месяца из исходной таблицы. Особенность этой операции в Power Query в том, что она пропускает в исходных данных пустые ячейки, что нам и требуется:

Читайте также: