Удаление ячеек в Microsoft Excel

Как удалить ячейки, столбцы и строки в Excel

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

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

Как удалить ячейку?

1. Откройте в Excel необходимую таблицу. Щелкните левой кнопкой по элементу, который нужно удалить.

2. На вкладке «Главная», в правой части панели, откройте ниспадающее меню «Удалить» и выберите пункт «Удалить ячейки».

3. В дополнительном окне выберите способ удаления (кликните радиокнопку возле необходимой опции):

  • «Ячейки со сдвигом влево» — после удаления все элементы, находящиеся в строке по правую сторону переместятся влево;
  • «Ячейки со сдвигом вверх» — находящиеся ниже элементы в столбце поднимутся вверх.

Как изменить значение ячейки?

1. Клацните по элементу 2 раза левой кнопкой.

2. Когда появится курсор, изменяйте или удаляйте параметр точно так же, как и в Ворде (текстовом редакторе Word):

удерживая левую кнопку, выделите символы и нажмите клавишу «Delete», чтобы потом напечатать другие данные или вставить пробелы.

Как удаляются строки и столбцы?

1. Кликните по названию столбца (специальное поле вверху). Вся ячейки в столбце выделятся.

2. Не убирая курсор с подсвеченных элементов, нажмите правую кнопку.

3. В появившемся контекстном меню Excel клацните «Удалить».

4. Аналогичным образом убирается из проекта и строка: выделите её и активируйте соответствующую команду в меню.

Как убирать из таблицы одинаковые ячейки?

Способ #1

1. На вкладке «Данные» нажмите опцию «Удалить дубликаты».

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

  • нажмите «Снять выделение»;
  • установите щелчком мышки метку в списке, где требуется.

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

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

Способ #2

1. На вкладке «Данные», в блоке «Фильтр», клацните подраздел «Дополнительно».

2. В окне «Расширенный фильтр» укажите, где сохранять отредактированный список (на месте или в отдельный файл).

3. Клацните по окошку «Только уникальные записи». Нажмите «OK».

Как убрать пустые ячейки?

Способ #1

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

2. Нажмите клавишу «F5».

3. В открывшейся панели клацните «Выделить».

4. Включите кликом мыши опцию «Пустые ячейки». Нажмите «OK».

5. Удалите выделенные элементы через контекстное меню (клацните по ним правой кнопкой).

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

Способ #2

1. Выделите столбец, который нужно отредактировать.

2. Откройте раздел «Данные» и нажмите «Фильтр».

3. Щёлкните по установленному фильтру («стрелочка» в ячейке).

4. Снимите флажок в надстройке «Выделить всё».

5. Щёлкните окошко в «Пустые», а потом кнопку «OK».

6. В столбце отобразятся только пустые ячейки. Кликните по ним правой кнопкой и нажмите «Удалить… ».

Комфортной работы в Excel!

Удаление ячеек в Microsoft Excel

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

Процедура удаления ячеек

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

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

Способ 1: контекстное меню

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

    Выделяем один элемент или группу, которую желаем удалить. Выполняем щелчок по выделению правой кнопкой мыши. Производится запуск контекстного меню. В нем выбираем позицию «Удалить…».

  • Запускается небольшое окошко удаления ячеек. В нем нужно выбрать, что именно мы хотим удалить. Существуют следующие варианты выбора:
    • Ячейки, со сдвигом влево;
    • Ячейки со сдвигом вверх;
    • Строку;
    • Столбец.

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

    А, если был выбран второй пункт, то со сдвигом влево.

    Способ 2: инструменты на ленте

    Удаление ячеек в Экселе можно также произвести, воспользовавшись теми инструментами, которые представлены на ленте.

    1. Выделяем элемент, который следует удалить. Перемещаемся во вкладку «Главная» и жмем на кнопку «Удалить», которая располагается на ленте в блоке инструментов «Ячейки».

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

      Выделяем эту группу элементов горизонтальной направленности. Кликаем по кнопке «Удалить», размещенной во вкладке «Главная».

  • Как и в предыдущем варианте, происходит удаление выделенных элементов со сдвигом вверх.
  • Если же мы попробуем удалить вертикальную группу элементов, то сдвиг произойдет в другом направлении.

      Выделяем группу элементов вертикальной направленности. Производим щелчок по кнопке «Удалить» на ленте.

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

      Выделяем этот массив и жмем на кнопку «Удалить» на ленте.

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

      Выделяем многомерный массив, который следует удалить. После этого жмем не на саму кнопку «Удалить», а на треугольник, который размещается сразу справа от неё. Активируется список доступных действий. В нем следует выбрать вариант «Удалить ячейки…».

    Вслед за этим происходит запуск окошка удаления, которое нам уже знакомо по первому варианту. Если нам нужно удалить многомерный массив со сдвигом, отличным от того, который происходит при простом нажатии на кнопку «Удалить» на ленте, то следует переставить переключатель в позицию «Ячейки, со сдвигом вверх». Затем производим щелчок по кнопке «OK».

  • Как видим, после этого массив был удален так, как были заданы настройки в окне удаления, то есть, со сдвигом вверх.
  • Способ 3: использование горячих клавиш

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

      Выделяем на листе диапазон, который желаем убрать. После этого жмем комбинацию клавиш «Ctrl»+»-« на клавиатуре.

    Запускается уже привычное для нас окно удаления элементов. Выбираем желаемое направление сдвига и щелкаем по кнопке «OK».

  • Как видим, после этого выбранные элементы были удалены с направлением сдвига, которое было указано в предыдущем пункте.
  • Способ 4: удаление разрозненных элементов

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

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

  • После того, когда выделение выполнено, можно произвести удаление любым из трех способов, которые мы описывали выше. Удалены будут все выбранные элементы.
  • Способ 5: удаление пустых ячеек

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

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

    Запускается окно перехода. В нем следует щелкнуть по кнопке «Выделить…», размещенной в его нижнем левом углу.

    После этого открывается окно выделения групп ячеек. В нем следует установить переключатель в позицию «Пустые ячейки», а затем щелкнуть по кнопке «OK» в нижнем правом углу данного окна.

    Читайте также  Создание базы данных в Microsoft Excel

    Как видим, после выполнения последнего действия все пустые элементы в указанном диапазоне были выделены.

  • Теперь нам остается только произвести удаление этих элементов любым из вариантов, которые указаны в первых трех способах данного урока.
  • Существуют и другие варианты удаления пустых элементов, более подробно о которых говорится в отдельной статье.

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

    Применение и удаление заливки ячеек

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

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

    Заливка ячеек сплошными цветами

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

    На вкладке Главная в группе Шрифт выполните одно из указанных ниже действий.

    Чтобы заполнить ячейки сплошным цветом, щелкните стрелку рядом с кнопкой Цвет заливки , а затем в разделе цвета темы или Стандартные цветавыберите нужный цвет.

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

    Чтобы применить последний выбранный цвет, нажмите кнопку Цвет заливки .

    Примечание: Microsoft Excel сохраняет 10 самых последних выбранных настраиваемых цветов. Чтобы быстро применить один из этих цветов, щелкните стрелку рядом с кнопкой Цвет заливки , а затем выберите нужный цвет в разделе Последние цвета.

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

    Заполнение ячеек узором

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

    На вкладке Главная в группе Шрифт нажмите кнопку вызова диалогового окна » Формат ячеек «.

    Сочетание клавиш. Кроме того, можно нажать клавиши CTRL + SHIFT + F.

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

    Выполните одно из следующих действий.

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

    Чтобы использовать узор со специальными эффектами, нажмите кнопку Способы заливки, а затем выберите нужные параметры на вкладке градиент .

    Проверка параметров печати для печати заливки ячеек в цвете

    Если параметры печати настроены на черно-белое или Черновое качество — либо в книге, либо в том случае, если книга включает большие или сложные листы и диаграммы, которые привели к автоматическому включению режима черновика, Заливка ячеек не может печататься в цвете.

    На вкладке Разметка страницы в группе Параметры страницы нажмите кнопку вызова диалогового окна » Параметры страницы «.

    Убедитесь, что на вкладке лист в группе Печатьустановлены флажки черно-белый и Черновое качество .

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

    Удаление заливки ячеек

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

    На вкладке Главная в группе Шрифт щелкните стрелку рядом с кнопкой Цвет заливки, а затем выберите пункт Нет заливки.

    Установка цвета заливки по умолчанию для всех ячеек листа

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

    Создайте новый пустой лист.

    Нажмите кнопку » выделить все «, чтобы выделить весь лист.

    На вкладке Главная в группе Шрифт щелкните стрелку рядом с кнопкой Цвет заливки , а затем выберите нужный цвет.

    Совет Когда вы изменяете цвета заливки ячеек на листе, линии сетки могут быть трудными для просмотра. Чтобы выделить линии сетки на экране, вы можете поэкспериментировать с границами и стилями линий. Эти параметры находятся на вкладке Главная в группе Шрифт . Чтобы применить границу к листу, выделите весь лист, щелкните стрелку рядом с кнопкой границы и выберите пункт все границы.

    На вкладке Файл выберите команду Сохранить как.

    В поле Имя файла введите имя шаблона.

    В поле Тип файла выберите пункт шаблон Excel, нажмите кнопку сохранить, а затем закройте лист.

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

    Чтобы открыть новую книгу на основе шаблона, выполните указанные ниже действия.

    На вкладке Файл нажмите кнопку Создать.

    В разделе Доступные шаблоныщелкните Мои шаблоны.

    В диалоговом окне Создание в разделе личные шаблоныщелкните только что созданный шаблон.

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

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

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

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

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

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

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

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

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

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

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

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

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

    Читайте также  Место хранения временных файлов Microsoft Excel

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Способ первый:
    Использовать встроенное средство 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

    ‘процедура оставляет в листе только те значения, которые перечислены в списке 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

    Читайте также  Вычисление разности дат в Microsoft Excel

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

    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.H >

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

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

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

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

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

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

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

    Удаление ячеек в Excel

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

    Как удаляются ячейки

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

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

    Самый простой способ удалить ячейки

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

    1. Выделяем элементы, которые подлежат удалению и кликаем правой кнопкой мыши по любому месту выделенной области. В появившемся списке выбираем пункт “Удалить…”.
    2. На экране отобразится соответствующее окно с четырьмя опциями. Поскольку нам необходимо избавиться именно от ячеек, а не от целых строк или столбцов, выбираем одно из двух действий – удаление ячеек со сдвигом влево либо со сдвигом вверх. Выбор конкретного действия зависит от задач, которые стоят перед пользователем. После того, как мы определились с нужным вариантом, подтверждаем действие, нажав кнопку OK.
    3. Как мы и хотели, все выбранные ячейки были удалены из таблицы. Мы выбрали второй вариант (сдвиг вверх), поэтому группа ячеек, находящаяся под выделенной областью сместилась вверх ровно на столько строк, сколько было в выделенном нами диапазоне.
    4. Если же мы выберем первый вариант (сдвиг влево), все элементы, находящиеся по правую сторону от удаленных, сместятся влево, заняв их место. Кстати, данный вариант в нашем случае подошел лучше, так как с правой стороны от выделенного диапазона были пустые ячейки. Таким образом, визуально кажется, что мы просто очистили данные выделенного диапазона, сохранив целостную структуру таблицы. Хотя на самом деле, такого эффекта мы добились именно благодаря тому, что ячейки, которые собой заменили исходные, не содержат данных.

    Удаление ячеек с помощью кнопок на ленте

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

    1. Для начала отмечаем любым удобным способом ячейку, которую нужно удалить. Переключаемся в главную вкладку и щелкаем по кнопке “Удалить”, расположенной в группе “Ячейки”.
    2. Как мы видим, выбранный элемент исчез из документа, а ячейки под ними сдвинулись вверх. Обращаем ваше внимание на то, что подобный метод не позволяет определить сторону, в которую будут сдвигаться ячейки после выполнения процедуры удаления.

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

    1. Отмечаем необходимый диапазон элементов, переходим во вкладку “Главная” и нажимаем кнопку “Удалить”.
    2. Результат этого способа ничем не отличается от вышеописанного. После выполнения операции, выделенная группа элементов исчезнет, а ячейки снизу от выделенного диапазона сдвинутся вверх.

    В случае удаления диапазона элементов по вертикали, соседние ячейки сместятся в другом направлении. Давайте рассмотрим это на примере.

    1. Отмечаем вертикальный диапазон ячеек, и нажимаем по уже хорошо знакомой кнопке “Удалить” на ленте.
    2. После завершения процедуры, отмеченные ячейки удалились со сдвигом оставшихся справа в левую сторону.

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

    1. Выделяем нужную область данных и нажимаем кнопку удаления, расположенную на ленте.
    2. Отмеченный массив удален, а соседние элементы сдвинулись в левую сторону.

    Примечание: Использование кнопки “Удалить”, расположенной на ленте менее функционально в сравнении с удалением через контекстное меню, поскольку оно не дает пользователю возможность настроить сдвиг ячеек.

    Но выход есть. Используя набор инструментов на ленте, можно производить удаление ячеек, предварительно выбрав направление смещения. Давайте рассмотрим, как это реализовать на примере.

    1. Выделяем область ячеек для удаления. Но теперь, в разделе “Ячейки” на ленте кликаем не по самой кнопке «Удалить», а по треугольнику, расположенному справа от нее. В раскрывшемся списке щелкаем по пункту “Удалить ячейки…”.
    2. Мы увидим знакомое окно с вариантами удаления и смещения. Выбираем тот, который соответствует нашим целям и жмем кнопку OK, чтобы увидеть результат. Допустим, пусть это будет сдвиг вверх.
    3. Операция удаления прошла успешно, и смещение произошло именно вверх.

    Комбинация клавиш для удаления ячеек

    Сочетания клавиш позволяют оперативно выполнить многие операции в Эксель, и процедура удаления ячеек – не исключение (смотрите также на нашем сайте статью “Горячие клавиши в Excel“).

    1. Как обычно, все начинается с выделения нужной области данных. После этого нажимаем на клавиатуре комбинацию клавиш “Ctrl” и “-“.
    2. Запустится привычное нам окно с опциями удаления ячеек. Определяемся с желаемым направлением сдвига и подтверждаем операцию.
    3. Отмеченные ячейки удалились из книги со сдвигом в ранее указанном направлении.

    Как удалить разбросанные ячейки

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

    1. Отмечаем первый элемент привычным методом. Далее, зажав клавишу “Ctrl” по очереди выделяем все оставшиеся нужные ячейки либо диапазоны (вне зависимости от того, на каком расстоянии они находятся друг от друга).
    2. После того, как мы успешно справились с первым шагом, приступаем к самому удалению, которое можно выполнить ранее рассмотренными способами.

    Как быстро убрать пустые ячейки

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

    1. Как всегда, вначале нам потребуется выделение. Но теперь мы отмечаем всю таблицу или ее часть, где планируется выполнить удаление. После этого нажимаем функциональную клавишу “F5”.
    2. В запустившемся окне нажимаем кнопку «Выделить…» в левом нижнем углу.
    3. На экране отобразится окно с параметрами выделения групп ячеек. Устанавливаем отметку напротив опции «Пустые ячейки» и подтверждаем действие нажатием кнопки OK.
    4. Выполнив предыдущие действия нам удалось отметить все пустые ячейки в выделенной таблице.
    5. Теперь остаётся лишь удалить эти элементы одним из методов, рассмотренных выше.

    Заключение

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