Удаление всех пустых столбцов в excel

Skip to content

Быстрое удаление пустых столбцов в Excel

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

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

Итак, как мы будем решать проблему удаления пустых столбцов?

  • Способ 1 — быстрый, но неправильный.
  • Способ 2 — макрос VBA.
  • Способ 3 — используем формулы.
  • Способ 4 — самый быстрый, одной кнопкой.
  • Почему не удаляются пустые столбцы?

Быстрый, но неправильный способ удалить пустые столбцы.

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

Этот метод ( Найти и выделить > Группу ячеек > Пустые ) находит и выбирает все пустые ячейки в диапазоне:

Если теперь щелкнуть выделенные ячейки правой кнопкой мыши и выбрать «Удалить» > « Весь столбец», то все колонки, содержащие хотя бы одну пустую ячейку, будут потеряны! Если вы сделали это случайно, нажмите Ctrl + Z , чтобы вернуть все на место.

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

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

Опытные пользователи Excel знают это практическое правило: чтобы не тратить часы на что-то вручную, потратьте несколько минут на написание макроса, который сделает это за вас автоматически.

Приведенный ниже макрос VBA удаляет все пустые столбцы в выбранном диапазоне. И делает это безопасно — удаляются только абсолютно пустые. Если столбец содержит значение хотя бы в одной ячейке, пусть даже пустую строку (“”), возвращаемую какой-либо формулой, то он останется на листе.

Public Sub DeleteEmptyColumns()
Dim SourceRange As Range
Dim EntireColumn As Range

On Error Resume Next
Set SourceRange = Application.InputBox( _
    "Select a range:", "Delete Empty Columns", _
    Application.Selection.Address, Type:=8)

If Not (SourceRange Is Nothing) Then
    Application.ScreenUpdating = False
    For i = SourceRange.Columns.Count To 1 Step -1
        Set EntireColumn = SourceRange.Cells(1, i).EntireColumn
        If Application.WorksheetFunction.CountA(EntireColumn) = 0 Then
            EntireColumn.Delete
        End If
    Next
    Application.ScreenUpdating = True
End If

End Sub

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

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

Вот пошаговая инструкция, чтобы добавить макрос в ваш файл Excel:

  1. Нажмите Alt + F11 , чтобы открыть редактор Visual Basic.
  2. В строке меню щелкните Вставить > Модуль (Insert > Module).
  3. Вставьте приведенный выше код в появившееся окно. Нажмите иконку дискеты и сохраните проект.
  4. Если окно модуля еще открыто, то нажмите F5 для запуска макроса. В последующем для вызова программы используйте комбинацию Alt+F8.
  5. Когда появится всплывающее диалоговое окно, переключитесь на интересующий рабочий лист, выберите нужный диапазон и нажмите OK:

Пустые колонки в выбранном диапазоне будут удалены:

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

Удаление пустых столбцов в Excel с помощью формул.

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

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

Сохранив резервную копию в надежном месте, выполните следующие действия:

Шаг 1. Вставьте новую строку.

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

Шаг 2. Найдите пустые столбцы.

В самой левой ячейке только что добавленной строки введите следующую формулу:

=СЧЁТЗ(A2:A1048576)=0

Затем скопируйте формулу по строке на сколько это необходимо, перетащив маркер заполнения вправо.

Логика формулы очень проста: СЧЁТЗ проверяет количество пустых ячеек в столбце, от строки 2 до строки 1048576, что является максимумом числа строк в Excel 2019–2007. Вы сравниваете это число с нулем и в результате получаете ИСТИНА в пустых и ЛОЖЬ там, где имеется хотя бы одна непустая ячейка. Благодаря использованию относительных ссылок формула правильно настраивается для каждого столбца, в который она скопирована.

Если вы настраиваете лист для кого-то другого, вы можете пометить их более явным и понятным образом. Нет проблем, это легко сделать с помощью функции ЕСЛИ, примерно так:

=ЕСЛИ(СЧЁТЗ(A2:A1048576)=0;»Пусто»;»Не пусто»)

Теперь формула явным образом указывает, какие колонки пусты, а какие нет:

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

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

Шаг 3. Удалите пустые столбцы.

Теперь вы можете просто выбрать те колонки, у которых в первой строке записано «Пусто» (чтобы выбрать сразу несколько, удерживайте Ctrl , нажимая на их буквы). Затем щелкните правой кнопкой мыши на любом из выделенных столбцов и укажите команду «Удалить» в контекстном меню:

Если на вашем листе десятки или сотни колонок, имеет смысл вывести на просмотр все пустые. Для этого сделайте следующее:

  1. Выберите верхнюю строку с формулами, перейдите на вкладку «Данные» > группу « Сортировка и фильтр » и нажмите кнопку «Сортировка» .
  2. В появившемся диалоговом окне с предупреждением выберите «Развернуть выделение» и нажмите «Сортировать…».

  1. Откроется диалоговое окно «Сортировка», в котором вы нажмете кнопку «Параметры…», выберите «столбцы диапазона» и нажмите «ОК» .

  1. Настройте только один уровень сортировки, как показано ниже, и нажмите ОК:
    • Сортировать по: Строка 1
    • Сортировка: значения ячеек
    • Порядок: от А до Я

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

Если вы выберете порядок сортировки от Я до А, то переместите их в левую чсть вашего листа, в начало.

  1. Выберите все пустые столбцы в конце таблицы. Для этого щелкните букву первого из них, нажмите Shift, а затем кликните на букву последнего.
  2. Щелкните правой кнопкой мыши на выделенном и выберите пункт «Удалить» во всплывающем меню.

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

Самый быстрый способ удалить пустые столбцы в Excel.

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

На вашем листе переключитесь на вкладку AblebitsTools, нажмите Delete Blanks и выберите Пустые столбцы (Empty Columns):

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

Нажмите ОК, и через мгновение все незаполненные колонки исчезнут!

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

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

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

Пустые столбцы не удаляются! Почему?

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

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

Чтобы определить виновника, выберите первую ячейку в проблемном месте и нажмите Ctrl + стрелка вниз. И вы сразу же переместитесь к первой непустой ячейке. Например, столбец B на скриншоте ниже не является пустым из-за символа пробела в B6:

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

А затем повторите описанный выше процесс, чтобы узнать, есть ли ниже ещё какие-либо другие невидимые объекты. Вы также можете очистить свои данные, удалив начальные, конечные и неразрывные пробелы.

Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге снова!

Deleting blank columns and rows is a tedious task when you are working with a large set of data. And manual deletion is not even an option. In this article, you’ll learn to delete the blank columns in excel in some simple steps using Excel built-in tool named Go To Special. It is a quick and easy way to remove the blank columns. While this makes it a simple alternative to implement, be aware that it may cause your document to become misaligned. Always save a backup copy of your document before you start deleting cells to be safe. 

There are two ways to delete the blank columns in excel:

  1. Manual selection and deletion
  2. Deleting columns using Go To in-built tool from excel

Note: The tutorial is for Microsoft Excel 2013. You may find the same or different steps in other Microsoft Excel versions. 

Deleting blank columns in Excel using manual selection and deletion

We can delete blank columns in Excel using manual selection and deletion. This method works with all types of data but it is time taking, here I would suggest to use this method only when your data is less. If you have a large number of columns to delete then move on to the second method. Now we understand this method with the help of an example. So consider the example

Selected Data to delete columns

Step 1: Select the blank columns, to select the blank columns press Shift and press the down arrow to the row upto you want to select the column. 

Select-the-blank-columns

Step 2: Then right-click on the selected column. A drop-down will appear (as shown below). Select the Delete button. The selected column will be deleted.

Select-the-Delete-button

Repeat the same steps for all the blank columns left in the required worksheet and delete them.

Deleting blank columns in Excel using Go To

We can also be deleting blank columns in MS Excel using Go To. So follow the following steps:

Step 1: Open the required Excel where you want to delete the blank columns.

Step 2: Select all the data by selecting the required rows and columns and press F5 from the keyboard. A dialogue box will appear(as shown below) and select Special. The special feature allows users to select all that has matching criteria as selected such as blanks, numbers, formulas. 

Select-all-the-data Go-To-dialogue-box

Step 3: After selecting special, a window (as shown below) will appear. Click on Blanks (as shown) and then select OK. This operation will select all the blank columns from the selected data.

Go-to-special

Step 4: Then go to the Home tab>Cells Group>Delete i.e go to the Home tab and in the Cells group click on Delete(as shown below). The delete will help to delete the selected row, column, cell, and entire sheet.

Cells-Group

Step 5: After selecting Delete a drop-down will appear (as shown in the image). Select Delete Cells.

Delete-cells-dialogue-box

Step 6: After selecting Delete Cells, a pop-up window will appear(as shown below). Select Shift cells left. This option will shift all the leftover cells left after deleting the blank columns. Click OK.

Delete-Cells-options

All the blank columns from the selected range will be deleted.

Удаление пустых строк и столбцов в данных

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  2. Выделим ячейку А2 и включим фильтр командой Данные — Фильтр (Data — Filter) или сочетанием клавиш Ctrl+Shift+L.
  3. Отфильтруем по вычисленному столбцу нули, т.е. все строки, где нет данных.
  4. Осталось выделить отфильтрованные строки и удалить их командой Главная — Удалить -’ Удалить строки с листа (Home — Delete — Delete rows) или сочетанием клавиш Ctrl+минус.
  5. Отключаем фильтр и получаем наши данные без пустых строк.

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

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

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

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

 
Sub DeleteEmpty()
    Dim r As Long, rng As Range

    'удаляем пустые строки
    For r = 1 To ActiveSheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count
        If Application.CountA(Rows(r)) = 0 Then
            If rng Is Nothing Then Set rng = Rows(r) Else Set rng = Union(rng, Rows(r))
        End If
    Next r
    If Not rng Is Nothing Then rng.Delete
    
    'удаляем пустые столбцы
    Set rng = Nothing
    For r = 1 To ActiveSheet.UsedRange.Column - 1 + ActiveSheet.UsedRange.Columns.Count
        If Application.CountA(Columns(r)) = 0 Then
            If rng Is Nothing Then Set rng = Columns(r) Else Set rng = Union(rng, Columns(r))
        End If
    Next r
    If Not rng Is Nothing Then rng.Delete

End Sub

Закройте редактор и вернитесь в 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 в том, что она пропускает в исходных данных пустые ячейки, что нам и требуется:

    Отмена свертывания (unpivot) таблицы

  3. Теперь выполяем обратную операцию — сворачиваем полученную таблицу обратно в двумерную, чтобы вернуть ей исходный вид. Выделяем столбец с месяцами и на вкладке Преобразование выбираем команду Столбец сведения (Transform — Pivot Column). В открывшемся окне в качестве столбца значений выбираем последний (Значение), а в расширенных параметрах — операцию Не агрегировать (Don’t aggregate):

    Сворачиваем обратно

  4. Останется выгрузить результат обратно в Excel командой Главная — Закрыть и загрузить — Закрыть и загрузить в… (Home — Close&Load — Close&Load to…)

    Результат

Ссылки по теме

  • Что такое макрос, как он работает, куда копировать текст макроса, как запустить макрос?
  • Заполнение всех пустых ячеек в списке значениями вышестоящих ячеек
  • Удаление всех пустых ячеек из заданного диапазона
  • Удаление всех пустых строк на листе с помощью надстройки PLEX

Удаление пустых ячеек в Microsoft Excel

Удаление пустых ячеек в Microsoft Excel

​Смотрите также​ не работает?​If arr1(i, 2)​ maxCln)​ равно остается медленной?​Nic70y​’ переносим ячейки,​на вкладке​ нее такую страшноватую​Нажимаем «Ок». У​ в формулах. Если​

​ самого простого случая​редактор запросов​

Алгоритмы удаления

​ с выделением групп​ и в предыдущий​«OK»​«OK»​При выполнении задач в​Вариант, предложенный вам​ > arr1(i +​dC = 0​ Тогда единственный вариант​, у меня 3000​ анализируя содержимое​Формулы (Formulas)​ формулу:​

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

​ приложении Excel может​AndreTM​ 1, 2) Then​ ‘ delta Colunm​ — считать все​ строк и под​’ работаем с​в новых версиях​=ЕСЛИ(СТРОКА()-СТРОКА(НетПустых)+1>ЧСТРОК(ЕстьПустые)-СЧИТАТЬПУСТОТЫ(ЕстьПустые);»»;ДВССЫЛ(АДРЕС(НАИМЕНЬШИЙ((ЕСЛИ(ЕстьПустые<>»»;СТРОКА(ЕстьПустые);СТРОКА()+ЧСТРОК(ЕстьПустые)));СТРОКА()-СТРОКА(НетПустых)+1);СТОЛБЕЦ(ЕстьПустые);4)))​ будут видны только​

Способ 1: выделение групп ячеек

​ формула потом не​ ее.​ не изменяя существующий​ и быстрый. Но​

  1. ​ наименование данной области.​В любом из указанных​После этих манипуляций все​ наступить необходимость удалить​, прекрасно работает.​k = i​ если выводить не​​ данные в массив​​ 200 столбцов. Медленно​

    Выделение диапазона в Microsoft Excel

  2. ​ выделенной областью​ Excel. В категории​​В английской версии это​​ пустые строки. Их​ сработает, а сама​​Есть еще несколько методов​​ запрос в книге,​

    Переход к выделению в Microsoft Excel

  3. ​ ситуации бывают разные.​​ Мы решили дать​​ в предыдущем пункте​ пустые элементы внутри​​ пустые ячейки. Они​​Вы это пробовали?​fOut = 0​​ в А1​​ и провести преобразования​

    Выделение пустых ячеек в Microsoft Excel

  4. ​ удаляет. Эксель виснет.​If Selection.Count =​Определенные пользователем (User Defined)​ будет:​ видно по столбцу​ программа выдаст ошибку​ для проведения таких​ в разделе​​ Поэтому, как дополнительные​​ ей название​

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

  5. ​ вариантов пустые элементы​ указанного диапазона будут​ зачастую являются ненужным​ Должно работать достаточно​buff1 = arr1(i,​​dR = 0​​ уже с ним…​​ Попробую на ночь​​ 1 Then Exit​

Удаление ячеек со сдвигом вверх в Microsoft Excel

​выберите нашу функцию​=IF(ROW()-ROW(НетПустых)+1>ROWS(ЕстьПустые)-COUNTBLANK(ЕстьПустые),»»,INDIRECT(ADDRESS(SMALL((IF(ЕстьПустые<>»»,ROW(ЕстьПустые),ROW()+ROWS(ЕстьПустые))),ROW()-ROW(НетПустых)+1),COLUMN(ЕстьПустые),4)))​ адресов строк. Можно​ о присутствии в​

Пустые ячейки удалены в Microsoft Excel

Способ 2: условное форматирование и фильтрация

​ операций. Одним из​Получение внешних данных​ способы, можно использовать​«Без_пустых»​ будут скрыты. Выделяем​ удалены.​ элементом и только​ быстро (приемлимо быстро).​ 1)​ ‘ delta Row​KSV​ оставить.​ Sub​NoBlanks​Причем ввести ее надо​ подкрасить последнюю пустую​

  1. ​ вычислениях ссылки на​ решений вопроса того,​на вкладке ленты​​ варианты с фильтрованием​​.​​ диапазон оставшихся ячеек.​​Удалить пустые ячейки можно​ увеличивают общий массив​Можно еще на​​arr1(i, 1) =​​If SheetCheck(lName) =​:​​_Boroda_​​For Each col​.​​ как формулу массива,​​ ячеку, чтобы виднее​

    Переход к условному форматированию в Microsoft Excel

  2. ​ несуществующие или некорректные​ как удалить пустые​Power Query​​ и применением комплексной​​Выделяем двойным щелчком левой​ На вкладке​ также путем применения​ данных, чем запутывают​ время сортировки временно​​ arr1(i + 1,​​ 0 Then Sheets.Add.Name​

    Окно условного форматирования в Microsoft Excel

  3. ​regnus​: Не уверен, но​ In Selection.Columns​В качестве аргумента функции​ т.е. после вставки​ было, сколько пустых​ данные. Поэтому в​ строки в «Экселе»,​выберите​​ формулы.​​ кнопки мышки первую​​«Главная»​​ условного форматирования и​​ пользователя. Определим способы,​​ отключать обновление экрана​ 1)​​ = lName​​, я не стал​

    Включение фильтра в Microsoft Excel

  4. ​ в качестве предположения​Set cellTo =​ укажите исходный диапазон​ нажать не​ строк. Выделяем пустые​ такой ситуации следует​ может стать применение​​Из других источников >​​Автор: Максим Тютюшев​​ ячейку условного диапазона​​в блоке настроек​ последующей фильтрации данных.​ какими можно быстро​ и авторасчет формул​

    Применение фильтра в Microsoft Excel

    ​arr1(i + 1,​Application.StatusBar = «Идёт​ делать «Нужно2», т.к.​ — возможно, код​ Nothing​​ с пустотами (B3:B10)​​Enter​ строки и удаляем​​ быть особо внимательным,​​ инструмента сортировки.​

    Снятие галочки с фильтра в Microsoft Excel

  5. ​ Пустой запрос​Примечание:​«Без_пустых»​«Буфер обмена»​ Этот метод сложнее​ удалить пустые элементы.​​ (если их у​​ 1) = buff1​​ считывание и сортировка​​ судя по коду​ будет работать быстрее,​​For Each cell​​ и нажмите​

    Копирование в Microsoft Excel

  6. ​(как обычно), а​ функцией «Удалить строку».​ чтобы не нарушить​Для этого нужно после​. В видео показан​Надстройка​(у вас он​выполняем щелчок по​ предыдущего, но, тем​​Скачать последнюю версию​​ вас много)​

    Вставка данных в Microsoft Excel

  7. ​buff1 = arr1(i,​ данных…»​ (не проверял), процедура​ если удалять пустые​ In col.Cells​Ctrl+Shift+Enter​Ctrl+Shift+Enter​ Теперь фильтром возвращаем​ целостность математических или​ выделения всей таблицы​ один из способов​Power Query​ может назваться и​ кнопке​ не менее, некоторые​

Данные вставлены в Microsoft Excel

​ Excel​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub testColumns00()​

​ 2)​​Application.ScreenUpdating = False​testColumns00()​

Способ 3: применение сложной формулы

​ не сверху вниз,​If Not IsEmpty(cell)​, чтобы ввести функцию​. Теперь формулу можно​ все заполненные строки​

  1. ​ других операций. В​ (Ctrl + A)​ отображения​предлагается в Excel 2016​ по-другому). Вставляем в​«Копировать»​ пользователи предпочитают именно​Прежде всего, нужно разобраться,​​Dim c As​​arr1(i, 2) =​

    Переход к присвоению имени в Microsoft Excel

  2. ​With Sheets(lNmBasa)​от​​ как по умолчанию​​ Then​ как формулу массива.​ скопировать вниз, используя​ в таблице.​ остальном же все​ в разделе данных​редактора запросов​​ в виде группы​​ неё формулу следующего​.​ его. Кроме того,​ а действительно ли​​ Range​​ arr1(i + 1,​

    Присвоение имени в Microsoft Excel

  3. ​For j =​AndreTM​ Excel делает, а​If Not cellTo​regnus​ автозаполнение (потянуть за​Третий вариант.​ просто. В зависимости​ выбрать меню сортировки​​.​​ команд​

    Переход к присвоению имени второго диапазона в Microsoft Excel

  4. ​ типа:​Затем выделяем любую пустую​ нужно сразу оговориться,​ можно в конкретном​Application.ScreenUpdating = False’​ 2)​​ 1 To maxCln​​должна сортировать быстро.​

    Присвоение имени второго диапазона в Microsoft Excel

  5. ​ насильно прописать удаление​ Is Nothing Then​: Как удалить пустые​​ черный крестик в​​Как удалить пустые​ от того, какой​ и фильтра. Тут​Всем пользователям, которые работают​Скачать и преобразовать​

    ​=ЕСЛИ(СТРОКА()-СТРОКА(Без_пустых)+1>ЧСТРОК(С_пустыми)-СЧИТАТЬПУСТОТЫ(С_пустыми);"";ДВССЫЛ(АДРЕС(НАИМЕНЬШИЙ((ЕСЛИ(С_пустыми "";СТРОКА(С_пустыми);СТРОКА()+ЧСТРОК(С_пустыми)));СТРОКА()-СТРОКА(Без_пустых)+1);СТОЛБЕЦ(С_пустыми);4)))​

    ​ область на том​ что этот способ​ массиве или таблице​ откл. обновление экрана​arr1(i + 1,​​k = 0​​Единственное, ее можно​ по циклу снизу​​cell.Copy cellTo​​ ячейки в столбцах​

    Ввод формулы в Microsoft Excel

  6. ​ правом нижнем углу​ ячейки формулой, смотрите​ результат должен быть​ применяется команда упорядочивания​ с электронными таблицами​. Информация в этой​Так как это формула​ же или на​ подходит только в​ удалять пустые ячейки?​ActiveSheet.EnableCalculation = False’​ 2) = buff1​For i =​ чуть дописать, если​ вверх.​cell.ClearContents​ сразу в 100​ ячейки) — и​​ в статье «Как​​ получен, можно применять​

    Маркер заполнения в Microsoft Excel

  7. ​ от минимального к​ в офисном редакторе​ статье относится и​ массива, то для​ другом листе. Выполняем​ том случае, если​ Указанная процедура приводит​ откл. авторасчет формул​End If​ 1 To maxRow​ у вас выделенный​​Richman​​Set cellTo =​​ столбцах?​​ мы получим исходный​ удалить пустые ячейки​​ ту или иную​​ максимальному (пустые строки​​ Excel, очень часто​​ к Power Query,​

    Копирование данных в Microsoft Excel

  8. ​ выведения расчета на​ щелчок правой кнопкой​ значения находятся в​ к смещению данных,​’ работаем с​​Next i​​If .Cells(i, j)​​ диапазон начинается с​​: Формулами и доп​

    Вставка в Microsoft Excel

  9. ​ cellTo.Offset(1)​1. Нужно все​ диапазон, но без​ в Excel».​ методику.​ окажутся снизу). После​ приходится убирать пустые​ и к новой​

Данные вставлены в программе Microsoft Excel

​ экран нужно нажать​​ мыши. В появившемся​ одном столбце и​

​ а это далеко​ выделенной областью​If fOut Then​ <> «» Then​ первой строки на​ строками нужно?​End If​ данные (не пустые​ пустых ячеек:​Если появилась необходимость,​Автор: Панькова Оксана Владимировна​ этого их можно​

​ ячейки, находящиеся в​

lumpics.ru

Удаление столбцов (Power Query)

​ группе. Дополнительные сведения​​ комбинацию клавиш​​ контекстном списке действий​​ не содержат формулы.​ не всегда является​’ сначала выполняем​​ Exit Do​​k = k + 1​ листе, или чтобы​нужно1​Else​ ячейки) вывести к​Если есть подозрение, что​ вставить в заполненную​Как убрать пустые​

​ удалить. Если порядок​ строках, чтобы они​ см. в статье​

Удаление столбцов

​Ctrl+Shift+Enter​​ в параметрах вставки​

  1. ​Выделяем диапазон, который собираемся​ допустимым. По сути,​ «сжатие» по строкам​RBdr = k​arr2(k, j) =​​ не затереть строку​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИОШИБКА(ИНДЕКС(Лист2!B$1:B$9;НАИМЕНЬШИЙ(ЕСЛИ(Лист2!B$2:B$9<>»»;СТРОКА(Лист2!B$2:B$9);100000);СТРОКА(1:1)));»»)​​If cellTo Is​​ верху листа, чтобы​

  2. ​ вам часто придется​​ таблицу пустые строки​​ строки в Excel​​ построения данных важен,​​ не загромождали рабочее​​ Функция «Скачать и​​, вместо обычного нажатия​ выбираем пункт​​ обрабатывать. Находясь во​​ элементы можно удалять​If Selection.Count =​​fOut = 1​​ .Cells(i, j)​

    Remove columns using Query Editor

​ перед выделенным диапазоном.​​потом копировать——Правая кнопка​

  1. ​ Nothing Then​ понимать длину не​ повторять процедуру удаления​ через определенный промежуток,​, как удалить отфильтрованные​​ сначала необходимо использовать​​ пространство. Сейчас будет​​ преобразовать» в Excel 2016.​​ кнопки​

  2. ​«Значения»​ вкладке​

  3. ​ только в двух​ 1 Then Exit​​For i =​​End If​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub testColumns00()​​ ——специальная вставка—-значения​​Set cellTo =​ пустых ячеек каждого​​ пустых ячеек из​​ то смотрите статью​

    Query Editor context menu

​ строки в Excel​​ вставку пустого столбца​​ рассмотрено, как в​​Если запрос содержит ненужные​Enter​.​«Главная»​​ случаях:​​ Sub​ RBdr To LBdr​​Next i​​Dim c As​KSV​ cell​ столбца.​​ диапазонов, то лучше​​ «Вставить пустые строки​, поможет функция «Сортировка​ со сквозной нумерацией.​ таблице «Эксель» удалить​​ столбцы, их можно​​.​​Как видим, произошла вставка​​, жмем на пиктограмму​​Если строка (столбец) полностью​PackByRows​​ + 1 Step​DoEvents​ Range​​: Странно…​​End If​

Отображение редактора запросов в Excel

support.office.com

Как удалить пустые строки в «Экселе»: несколько простых методов

​2. Нужно подровнять​ один раз добавить​ в Excel через​ и фильтр в​ После удаления строк​ пустые строки. Некоторые​ удалить.​Но, как видим, заполнилась​ данных без сохранения​«Условное форматирование»​ является пустой (в​With Selection​ -1​arrK(j, 1) =​’ работаем с​600 тыс. ячеек​End If​

Как удалить пустые строки в «Экселе» двумя простейшими методами?

​ столбцы по длине​ в стандартный набор​ одну».​ Excel» и немного​ снова производите упорядочивание​ решения пригодятся и​С помощью ленты​ только одна ячейка.​ форматирования. Теперь можно​, которая, в свою​ таблицах);​.Rows(1).Insert​If arr1(i, 2)​ j​ выделенной областью​ для Excel это​Next​

​ (слева-направо)​ свою функцию для​В Excel можно​ хитрости помогут быстро​ по пронумерованному столбцу.​ в других ситуациях.​редактора запросов​ Для того, чтобы​ удалить первичный диапазон,​ очередь, располагается в​Если ячейки в строке​For Each c​ < arr1(i -​arrK(j, 2) =​’ сначала выполняем​ не тот объем,​Next​Есть и пустые​ удаления пустых ячеек,​ настроить так, что​

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

​ удалить лишние пустые​Решить вопрос того, как​ Например, при аналогичных​Выберите столбец, который вы​ заполнились и остальные,​ а на его​ блоке инструментов​ и столбце логически​ In .Columns​ 1, 2) Then​ k​ «сжатие» по строкам​ чтобы виснуть. (если,​End Sub​ столбцы.​ и пользоваться ей​ вместо цифр, например,​ строки в огромной​ удалить пустые строки​ действиях со столбцами​ хотите удалить. Чтобы​ нужно скопировать формулу​ место вставить тот,​

Как в «Экселе» удалить пустые строки с помощью сортировки?

​«Стили»​ не связаны друг​c.Cells(0) = WorksheetFunction.CountA(c)​k = i​Next j​If Selection.Count =​ конечно, у вас​Sub testColumns00()​

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

​Есть:​ во всех последующих​ отрицательных, будут писаться​ таблице.​ в «Экселе», можно​ или отдельными ячейками.​ выделить несколько столбцов,​ на оставшуюся часть​ который мы получили​. Переходим в пункт​ с другом (в​Next​fOut = 0​Call sortArr(arrK)​ 1 Then Exit​ не пентиум III​’ работаем с​111 222 4​ случаях.​

Удаление строк с использованием фильтра

​ нули. Читайте статью​Часто, в большой​ и при помощи​Для начала стоит сказать,​ щелкните их, удерживая​ диапазона. Это можно​ в ходе вышеописанной​ открывшегося списка​ массивах).​Set c =​buff1 = arr1(i,​

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

​For i =​ Sub​)​ выделенной областью​333 44 55​Для этого откройте редактор​ «Как заменить в​ таблице после копирования​ простого фильтра. Устанавливают​ что при проведении​ нажатой клавишу​

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

​ сделать с помощью​ процедуры, а можно​«Правила выделения ячеек»​Если пустых ячеек мало,​ .Offset(-1).Resize(.Rows.Count + 1)​ 1)​ 1 To maxCln​PackByRows​Попробуйте так (должно​

эксель удалить пустые строки в диапазоне

​’ сначала выполняем​11 555​ Visual Basic (​ Excel отрицательное число​ или корректировки, появляется​ его путем выделения​ операций такого рода​CTRL​ маркера заполнения. Устанавливаем​ продолжать работу с​. В появившемся списке​ то их вполне​With .Parent.Sort​arr1(i, 1) =​For j =​

Вместо послесловия

​With Selection​ работать оч. быстро​ «сжатие» по строкам​111 22 444​ALT+F11​ на ноль».​ много не нужных​ столбца, группы столбцов​ нужно быть крайне​или​ курсор в нижний​ данными на новом​ действий выбираем позицию​ можно удалить с​With .SortFields​ arr1(i — 1,​ 1 To maxRow​.Rows(1).Insert​ на любом кол-ве)​If Selection.Count =​55​), вставьте новый пустой​Имеем диапазон ячеек с​ пустых строк. Удалять​ или всей таблицы.​ внимательным. Дело в​SHIFT​ правый угол ячейки,​ месте. Тут все​«Больше…»​ помощью обычного ручного​.Clear​ 1)​arrOut(j, maxCln +​For Each c​

​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub PackByRows() ‘ реализация​

fb.ru

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

​ 1 Then Exit​11 44​​ модуль (меню​ данными, в котором​​ по одной строке​ Кроме того, применяют​ том, что ячейки​.​ содержащей комплексную функцию.​ уже зависит от​.​
​ способа удаления. Но,​.Add c.Rows(1), xlSortOnValues,​arr1(i — 1,​ 1 — i)​ In .Columns​ вашего «Нужно1″​ Sub​1​Insert — Module​ есть пустые ячейки:​
​ – это долго.​
​ команду «Фильтр» в​ могут содержать скрытые​На ленте​ Курсор должен преобразоваться​ конкретных задач и​Открывается окошко условного форматирования.​

Как удалить строки в Excel.

​ если таких незаполненных​ xlDescending​
​ 1) = buff1​ = arr2(j, arrK(i,​c.Cells(0) = WorksheetFunction.CountA(c)​Dim r&, c&,​testRows00​Нужно1​) и скопируйте туда​Задача — удалить пустые​
​ Но, есть способ,​ разделе сортировки.​ формулы (бесцветный текст).​редактора запросов​
​ в крестик. Зажимаем​ личных приоритетов пользователя.​ В левое поле​ элементов большое количество,​End With​
​buff1 = arr1(i,​ 1))​Next​ i&, n&, v()​
​’ выделенная область​111 222 333​ текст этой функции:​ ячейки, оставив только​ удалить все пустые​Теперь остается нажать на​ А сами вычисления​нажмите кнопку​ левую кнопку мыши​Урок:​
​ вписываем цифру​
​ то в этом​
​.SetRange c​ 2)​Next j​Set c =​v = Selection.Value​

​ та же​ 4 55​Function NoBlanks(DataRange As​ ячейки с информацией.​ строки одним махом.​ сам фильтр, отобразить​ могут ссылаться на​Удалить столбцы​ и тянем его​Условное форматирование в Excel​«0»​ случае, данную процедуру​.Header = xlNo​arr1(i, 2) =​Next i​
​ .Offset(-1).Resize(.Rows.Count + 1)​
​n = UBound(v)​’ ПРЕДУПРЕЖДЕНИЕ: одна​11 22 44​ Range) As Variant()​Выделяем исходный диапазон​
​Первый вариант.​ только пустые ячейки​ строки, в которых​и выберите команду​ вниз до самого​Урок:​. В правом поле​ нужно автоматизировать.​
​.Orientation = xlLeftToRight​ arr1(i — 1,​End With​With .Parent.Sort​ ‘ кол-во строк​ строка выше выделенного​ 555​ Dim N As​

excel-office.ru

Удаление пустых ячеек из диапазона

Постановка задачи

​Жмем клавишу​У нас такая​ и удалить их.​

ВȎxcel убрать пустые столбцы в

​ данные отсутствуют, но​Удалить столбцы​ конца диапазона​

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

  1. ​Сортировка и фильтрация данных​
  2. ​ выбираем любой цвет,​​Наиболее простой способ удалить​​.Apply​​ 2)​ ​Sheets(lName).Cells(1 + dR,​​With .SortFields​ в выделенном диапазоне​​ диапазона будут очищена​ ​111 444 55​​ Long Dim N2​​F5​​ таблица. В нашем​
    ВȎxcel убрать пустые столбцы в
    ​ Но тут есть​ их предполагается ввести​
  3. ​. Можно также выбрать​«Без_пустых»​ в Excel​ но можно оставить​​ пустые элементы –​ ​End With​​arr1(i — 1,​

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

​ 1 + dC).Resize(maxRow,​.Clear​For c =​​For Each col​​11 44​​ As Long Dim​​, далее кнопка​ примере — несколько​ одна загвоздка. Нельзя​​ в дальнейшем. Такие​ команду​ ​.​Кроме того, убрать пустые​

ВȎxcel убрать пустые столбцы в

​ настройки по умолчанию.​​ это воспользоваться инструментом​​.Rows(0).Delete​​ 2) = buff1​​ maxCln).ClearContents​.Add c.Rows(1), xlSortOnValues,​ 1 To UBound(v,​ In Selection.Columns​1​

​ Rng As Range​Выделить​ строк, но может​ применять такое удаление​ ячейки с точки​

​Удалить другие столбцы​

​Как видим, после этого​ ячейки из массива​
​ Щелкаем по кнопке​

​ выделения групп ячеек.​End With​End If​Sheets(lName).Cells(1 + dR,​​ xlDescending​​ 2)​​col.Offset(-1).Cells(1, 1).Value =​​Нужно2​ Dim MaxCells As​(Special)​ быть строк очень​ для нескольких столбцов,​ зрения программы пустыми​, чтобы удалить все​ действия мы имеем​ можно, применив сложную​

ВȎxcel убрать пустые столбцы в

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

​«OK»​Выделяем диапазон на листе,​’ вкл. все,​Next i​ 1 + dC).Resize(maxRow,​End With​’ находим первую​ WorksheetFunction.CountA(col)​111 4 55​ Long Dim Result()​. В открывшмся окне​ много.​

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

​If fOut Then​ maxCln) = arrOut​.SetRange c​ пустую ячейку в​Next​ 222 333​ As Variant Dim​ выбираем​Строки 2, 4, 6,​ строке хоть одна​Но посмотрим, как в​кроме​ подряд расположены заполненные​ нескольких функций.​Как видим, все ячейки​ проводить операцию поиска​ActiveSheet.EnableCalculation = True​ Exit Do​Application.ScreenUpdating = True​.Header = xlNo​ столбце​Set rngS =​11 44 555​ R As Long​Пустые ячейки​ 8 нужно удалить.​ ячейка содержит данные.​ «Экселе» удалить пустые​выделенных.​ ячейки. Но выполнять​Прежде всего, нам нужно​ указанного диапазона, в​ и удаления пустых​Application.ScreenUpdating = True​

​LBdr = k​Application.StatusBar = «Вывод​.Orientation = xlLeftToRight​For i =​ Selection.Offset(-1).Resize(Selection.Rows.Count + 1)​ 22​

  1. ​ Dim C As​(Blanks)​
  2. ​Выделяем таблицу, нажимаем​​Наконец, рассмотрим еще один​ строки, если они​​С помощью контекстного меню​​ различные действия с​ ​ будет дать имя​​ которых находятся значения,​​ элементов. Жмем на​​End Sub​Loop​​ данных закончен»​​.Apply​​ 1 To n​​With rngS.Parent.Sort​
  3. ​111 444 55​ Long MaxCells =​и жмем​ кнопку «Сортировка и​​ универсальный метод. Он​​ действительно являются таковыми.​редактора запросов​

planetaexcel.ru

Как удалить пустые ячейки в столбцах сразу в 100 столбцах? (Формулы/Formulas)

​ этими данными мы​​ диапазону, который подвергается​ были выделены в​ функциональную клавишу на​gling​
​End Sub​End Sub​End With​If Len(v(i, c))​.SortFields.Add Key:=rngS.Rows(1), _​11 44​ Application.WorksheetFunction.Max( _ Application.Caller.Cells.Count,​
​ОК​ фильтр» на закладке​ позволяет решить проблему​
​ Самым простым методом​Выберите столбец, который вы​
​ не сможем, так​
​ трансформации. Выделяем область,​
​ выбранный цвет, а​
​ клавиатуре​
​: Ошибка, должно быть​
​AndreTM​
​Function SheetCheck(ByVal ShName​
​.Rows(0).Delete​
​ = 0 Then​
​SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal​1​
​ DataRange.Cells.Count) ReDim Result(1​.​
​ «Главная» и выбираем​
​ того, как в​
​ считается обычное выделение​
​ хотите удалить. Чтобы​
​ как они связаны​ делаем щелчок правой​
​ пустые остались белыми.​F5​
​ так​
​: А если в​
​ As String) As​
​End With​
​ Exit For​.SetRange rngS​Спасибо)​

​ To MaxCells, 1​​Выделяются все пустые​
​ «Сортировать от минимального​
​ «Эксель» удалить пустые​
​ при помощи мыши​
​ выделить несколько столбцов,​ формулой массива. Выделяем​
​ кнопкой мышки. В​

​ Опять выделяем наш​​.​regnus​

​ код ещё добавить​ ​ Byte​ ​End Sub​
​Next​ ​.Header = xlGuess​ ​См. пример в​
​ To 1) For​ ​ ячейки в диапазоне.​
​ к максимальному» (или​ ​ строки в диапазоне​
​ с зажатой левой​

​ щелкните их, удерживая​​ весь диапазон​
​ активировавшемся меню выбираем​ диапазон. В этой​Запускается небольшое окошко, которое​: Пробую ваш файл,​ отключение/включение​
​Dim x As​
​Udik​' проверяем остальные​
​.Orientation = xlLeftToRight​ экселе, тут форматирование​
​ Each Rng In​Даем в меню команду​ от максимального к​
​ от и до​ кнопкой. Оно производится​
​ нажатой клавишу​«Без_пустых»​
​ пункт​ же вкладке​
​ называется​ т.к. вроде он​
​Application.ScreenUpdating​ Byte​
​: Вот попробовал сварганить​
​ ячейки в столбце​
​.SortMethod = xlPinYin​ не то.​
​ DataRange.Cells If Rng.Value​
​ на удаление выделенных​
​ минимальному).​ определенного номера или​
​ движением вверх или​CTRL​
​. Жмем на кнопку​
​«Присвоить имя…»​
​«Главная»​
​«Переход»​
​ делает 2 варианта.​
​- то тоже​
​x = 0​ с сортировкой столбцов,​
​For r =​.Apply​
​Nic70y​ <> vbNullString Then​ ячеек: правой кнопкой​
​Подробнее о сортировке​
​ значения.​ вниз по полю​
​или​«Копировать»​.​
​щелкаем по кнопке​. Жмем в нем​
​500 строк и​ быстродействие поднимется.​
​For Each ws​
​ вышло многа букфф​ i + 1​
​End With​
​: F5​
​ N = N​
​ мыши​
​ в таблице смотрите​
​В этом случае следует​
​ нумерации слева. Затем,​
​SHIFT​
​, которая размещена во​
​Открывается окно присвоения наименования.​
​«Сортировка и фильтр»​

​ кнопку​:)​ 100 столбцов обрабатывает​Вотбы вам сразу​
​ In ActiveWorkbook.Sheets​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>​​ To n​
​rngS.Rows(1).ClearContents​
​Выделить​ + 1 Result(N,​-​ в статье «Сортировка​
​ использовать раздел редактирования​ используя правый клик,​.​ вкладке​
​ В поле​, расположенной в группе​
​«Выделить…»​ за 1-3 минуты.​ спросить — «как​
​If ws.Name =​
​Public Sub test()​If Len(v(r, c))​End Sub​

​пустые ячейки​​ 1) = Rng.Value​​Удалить ячейки (Delete Cells)​​ в Excel».​ на главной панели​ вы вызываете контекстное​Щелкните правой кнопкой мыши​«Главная»​«Имя»​

​«Редактирование»​​.​ Точно не скажу,​ БЫСТРО проделать данную​ ShName Then​Dim i As​ Then​Смеяться не надо​ПКМ — удалить​ End If Next​со сдвигом вверх.​Все заполненные строки​

​ с выбором кнопки​​ меню, где выбираете​ выделенные столбцы.​
​в блоке инструментов​
​даем любое удобное​
​. В открывшемся меню​Открывается следующее окно –​

​ т.к. при обработке​​ операцию на таком-то​
​x = 1​ Integer, j As​v(i, c) =​Мне было просто​ячейки, со сдвигом​ Rng For N2​:)​Для упрощения дадим нашим​
​ будут стоять вверху​ «Найти и выделить».​ строку удаления. Но​​В контекстном меню выберите​«Буфер обмена»​
​ название. Главное условие​ жмем на кнопку​
​«Выделение групп ячеек»​
​ виснет.​ объёме"...​Exit For​
​ Integer, k As​ v(r, c)​ нечего делать​
​ вверх​ = N +​ рабочим диапазонам имена,​
​ таблицы, а пустые​ Из выпадающего меню​
​ такая методика применима​ команду​.​
​ – в нем​
​«Фильтр»​. Устанавливаем в нем​
​А 3000 строк​gling​End If​
​ Integer​v(r, c) =​
​Например, предложенный​то?​
​ 1 To MaxCells​ используя​
​ строки соберутся внизу​
​ выбирается строка выделения​
​ только в том​
​Удалить​
​После этого выделяем первоначальный​

​ не должно быть​​.​
​ переключатель в позицию​
​ и 100 столбцов​: Собрал конструкцию из​

​Next ws​​Dim dC As​​ Empty​​Nic70y​Serge_007​ Result(N2, 1) =​Диспетчер Имен (Name Manager)​​ таблицы.​​ группы ячеек. А​​ случае, если ячейки​​, чтобы удалить выделенные​ массив данных. Щелкаем​ пробелов. Для примера​После этих действий, как​«Пустые ячейки»​ появляется жесть.​ разных файлов, быстро​

​SheetCheck = x​​ Integer, dR As​​i = i + 1​​код​: А Вы его​ vbNullString Next N2​на вкладке​​Осталось удалить эти​​ в окошке условия​​ располагаются подряд.​​ столбцы, или​
​ правой кнопкой мыши.​ мы присвоили диапазону​ видим, в верхнем​. Выполняем щелчок по​Эксель зависает минут​ ли работает не​End Function​ Integer​​End If​
​Код200?'200px':''+(this.scrollHeight+5)+'px');">Sub testRows()​ и не применяли:​
​ If Application.Caller.Rows.Count =​Формулы (Formulas)​
​ строки. Чтобы быстро​ активируется та, которая​
​Как удалить пустые строки​Удалить другие столбцы​ В открывшемся списке​
​ наименование​
​ элементе столбца появилась​
​ кнопке​
​ на 20 и​ знаю. Диапазон сортировки​
​Private Sub sortArr(arr1()​
​Const maxRow As​
​Next r, c​' используя встроенные​
​111​
​ 1 Then NoBlanks​
​или - в​
​ это сделать, есть​ указывает на пустые​
​ в «Экселе», если​
​, чтобы удалить все​
​ в группе​
​«С_пустыми»​
​ пиктограмма символизирующая фильтр.​
​«OK»​
​ более​
​ нужно указывать в​
​ As Integer)​

​ Integer = 25,​​Selection = v​ средства, удаляем пустые​222​:)

​ = Application.Transpose(Result) Else​
​ Excel 2003 и​
​ хитрость.​ единицы. После этого​ пустые поля чередуются​ столбцы,​
​«Параметры вставки»​. Больше никаких изменений​ Жмем на неё.​
​.​Начинает глючить и​ макросе, может кто​Dim fOut As​ maxCln As Integer​
​End Sub​ ячейки, со сдвигом​4​ NoBlanks = Result​ старше - меню​Выделяем первую пустую​
​ в разделе операций​ с данными? В​кроме​
​жмем на пиктограмму​ в том окне​ В открывшемся списке​
​Как видим, все пустые​ не открывает другие​ переделает под выделение.​
​ Byte​ = 25 'задаем​regnus​ данных вверх​
​333​ End If End​
​Вставка - Имя -​ строку, нажав на​ с ячейками выбирается​
​ этом случае вопрос​выделенных.​«Значения​
​ вносить не нужно.​
​ переходим в пункт​
​ элементы указанного диапазона​ файлы.​
​ Сортируются столбцы начиная​
​Dim LBdr As​ размеры для считывания​
​: Спасибо!!!​' ПРЕДУПРЕЖДЕНИЕ: сдвигаются​
​44​
​ Function​ Присвоить​
​ номер строки. Затем​
​ кнопка удаления.​
​ решается другим способом.​
​Примечание:​».​
​ Жмем на кнопку​«Сортировка по цвету»​
​ были выделены. Кликаем​
​Приходится перегружать комп...как​
​ с нижней строки.​ Integer, RBdr As​
​Const lName As​быстро действительно.​
​ выше данные, расположенные​55​Не забудьте сохранить файл​(Insert - Name -​
​ нажимаем одновременно кнопки​
​Вот, собственно, и все​
​ Для этого следует​
​ ​После этих действий данные​«OK»​
​. Далее в группе​ по любому из​ будто эксель вирус​
​ Результат не отличается​
​ Integer​ String = "buff",​
​А Нужно 2​
​ на листе ниже​11​ и вернитесь из​
​ Define)​ на клавиатуре Shift+Ctrl+​
​ простейшие методы, при​
​ зажать клавишу Ctrl,​Редактор запросов​
​ будут вставлены в​.​
​«Сортировка по цвету ячейки»​
​ них правой кнопкой​
​ хватает.​
​ от результата Udik.​
​Dim buff1 As​
​ lNmBasa As String​
​ сможете?​ выделенной области​
​55​ редактора Visual Basic​
​Диапазону B3:B10 даем имя​ стрелка вниз. Выделятся​ помощи которых можно​
​ а затем, удерживая​отображается только при​
​ изначальную область своего​Выделяем в любом месте​
​выбираем тот цвет,​
​ мыши. В запустившемся​Есть способы не​
​regnus​
​ Integer​
​ = "test" 'имена​AndreTM​' работаем с​
​11​ в Excel. Чтобы​ЕстьПустые​
​ все строки до​
​ произвести удаление пустых​
​ ее, выделить каждую​ загрузке, редактировании или​
​ расположения цельным диапазоном​ на листе точно​ которым произошло выделение​
​ контекстном меню щелкаем​ вешать эксель и​
​: Ваш пример работает.​Dim str1 As​
​ целевого и базового​:​ выделенной областью​
​44​ использовать эту функцию​
​, диапазону D3:D10 -​
​ конца листа. Теперь​
​ строк буквально в​ строку, подлежащую удалению.​
​ создании нового запроса​
​ без пустых ячеек.​
​ такой же по​ в результате условного​ по пункту​ ускорить обработку?​
​А мой нет.​ String​ листа​
​regnus​
​If Selection.Count =​
​1​ в нашем примере:​
​НетПустых​ удаляем строки как​ пару кликов. Опять​
​ После этого в​ с помощью​
​ При желании массив,​ размерам диапазон пустых​
​ форматирования.​«Удалить…»​Serge_007​
​Вставляет 2 столбца​LBdr = 1​
​Dim arrK(1 To​
​, а "Нужно 2"​
​ 1 Then Exit​AndreTM​
​Выделите достаточный диапазон пустых​
​. Диапазоны должны быть​
​ обычную строку.​

​ же, нужно помнить​​ меню правого клика​Power Query​ который содержит формулу,​​ ячеек. Аналогично кликаем​​Можно также сделать немного​.​
​:​ в один.​RBdr = UBound(arr1,​ maxCln, 1 To​ в моём варианте​

​ Sub​​: Типа вот так?​ ячеек, например F3:F10.​ строго одного размера,​Получилось так.​ и том, что​ выбираете соответствующую операцию.​. В видео показано​ теперь можно удалить.​ правой кнопкой мыши​ по-другому. Кликаем по​Открывается маленькое окошко, в​

​regnus​​Не сортирует столбцы.​
​ 1)​
​ 2) As Integer​ (конечно, заменив в​
​Selection.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp​
​(Код надо поместить​

​Идем в меню​​ а расположены могут​​Второй вариант.​​ в некоторых ячейках​ Заметьте, если использовать​
​ окно​​Урок:​​ и, вызвав контекстное​
​ значку фильтрации. В​ котором нужно выбрать,​, Вы можете выложить​
​удалено администрацией​Do While 1​Dim arr2(1 To​ его вызове процедуру​End Subне подходит​ в общий модуль,​​Вставка - Функция (Insert​
​ быть где угодно​Так же устанавливаем​
​ может находиться скрытый​ клавишу Del, будет​
​редактора запросов​Как присвоить имя ячейке​
​ меню, переходим по​ появившемся меню снимаем​
​ что именно следует​ видео с экрана?​
​KSV​fOut = 1​ maxRow, 1 To​
​testRows00​
​ по причине, изложенной​
​ и вызывать, предварительно​
​ - Function)​ относительно друг друга.​
​ фильтр. Но в​
​ текст. А сами​
​ произведена только очистка​, которое отображается после​
​ в Excel​
​ пункту​
​ галочку с позиции​
​ удалить. Оставляем настройки​Udik​
​:​
​For i =​
​ maxCln)​
​на​
​ в комментариях...​
​ выделив область для​
​или жмем на кнопку​
​Теперь выделим первую ячейку​
​ диалоговом окне фильтра​ пустые ячейки могут​
​ содержимого, а не​
​ изменения запроса в​
​Существует несколько способов удаления​

​«Присвоить имя…»​​«Пустые»​ по умолчанию –​

​: Я на своём​​regnus​ 1 To RBdr​Dim arrOut(1 To​
​PackByRows​regnus​ обработки)​Вставить функцию​ второго диапазона (D3)​ ставим галочку только​
​ быть зависимыми при​ удаление целых строк.​ книге Excel. Чтобы​
​ пустых элементов в​.​. После этого щелкаем​
​«Ячейки, со сдвигом вверх»​ попробовал 3000х200 -​, что у вас​
​ — 1​ maxRow, 1 To​от KSV всё​
​:​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub testRows00()​(Insert Function)​

​ и введем в​​ у слова «Пустые».​​ ссылке на них​​ В прочем, для​ просмотреть​

​ Microsoft Excel. Вариант​​В открывшемся окне, как​ по кнопке​. Жмем на кнопку​

excelworld.ru

​ ок. 35с.​

Удаление пустых ячеек в Microsoft Excel

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

Алгоритмы удаления

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

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

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

Способ 1: выделение групп ячеек

Наиболее простой способ удалить пустые элементы – это воспользоваться инструментом выделения групп ячеек.

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

Запускается небольшое окошко, которое называется «Переход». Жмем в нем кнопку «Выделить…».

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

  • Открывается маленькое окошко, в котором нужно выбрать, что именно следует удалить. Оставляем настройки по умолчанию – «Ячейки, со сдвигом вверх». Жмем на кнопку «OK».
  • После этих манипуляций все пустые элементы внутри указанного диапазона будут удалены.

    Способ 2: условное форматирование и фильтрация

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

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

    Открывается окошко условного форматирования. В левое поле вписываем цифру «0». В правом поле выбираем любой цвет, но можно оставить настройки по умолчанию. Щелкаем по кнопке «OK».

    Как видим, все ячейки указанного диапазона, в которых находятся значения, были выделены в выбранный цвет, а пустые остались белыми. Опять выделяем наш диапазон. В этой же вкладке «Главная» щелкаем по кнопке «Сортировка и фильтр», расположенной в группе «Редактирование». В открывшемся меню жмем на кнопку «Фильтр».

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

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

    В любом из указанных в предыдущем пункте вариантов пустые элементы будут скрыты. Выделяем диапазон оставшихся ячеек. На вкладке «Главная» в блоке настроек «Буфер обмена» выполняем щелчок по кнопке «Копировать».

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

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

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

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

    Открывается окно присвоения наименования. В поле «Имя» даем любое удобное название. Главное условие – в нем не должно быть пробелов. Для примера мы присвоили диапазону наименование «С_пустыми». Больше никаких изменений в том окне вносить не нужно. Жмем на кнопку «OK».

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

    В открывшемся окне, как и в предыдущий раз, присваиваем любое наименование данной области. Мы решили дать ей название «Без_пустых».

    Выделяем двойным щелчком левой кнопки мышки первую ячейку условного диапазона «Без_пустых» (у вас он может назваться и по-другому). Вставляем в неё формулу следующего типа:

    Так как это формула массива, то для выведения расчета на экран нужно нажать комбинацию клавиш Ctrl+Shift+Enter, вместо обычного нажатия кнопки Enter.

    Но, как видим, заполнилась только одна ячейка. Для того, чтобы заполнились и остальные, нужно скопировать формулу на оставшуюся часть диапазона. Это можно сделать с помощью маркера заполнения. Устанавливаем курсор в нижний правый угол ячейки, содержащей комплексную функцию. Курсор должен преобразоваться в крестик. Зажимаем левую кнопку мыши и тянем его вниз до самого конца диапазона «Без_пустых».

    Как видим, после этого действия мы имеем диапазон, в котором подряд расположены заполненные ячейки. Но выполнять различные действия с этими данными мы не сможем, так как они связаны формулой массива. Выделяем весь диапазон «Без_пустых». Жмем на кнопку «Копировать», которая размещена во вкладке «Главная» в блоке инструментов «Буфер обмена».

    После этого выделяем первоначальный массив данных. Щелкаем правой кнопкой мыши. В открывшемся списке в группе «Параметры вставки» жмем на пиктограмму «Значения».

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

    Отблагодарите автора, поделитесь статьей в социальных сетях.

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

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

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

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

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

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

    Сортировка

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

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

    Фильтрация

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

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

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

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

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

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

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

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

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

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

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

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

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

    Макрос

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

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

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

    Как удалить пустые столбцы? Программное удаление пустых столбцов макросом VBA

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

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

    Удаление вручную

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

    Удаление при помощи сортировки

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

    Удаление при помощи выделения группы ячеек

    Для того чтобы удалить пустые столбцы в Excel 2007 и 2010 можно воспользоваться возможностью выделения группы ячеек. Для этого выделяем строку, содержащую пустые ячейки, после чего находим на ленте Excel вкладку «Главная», в группе «Редактирование» выбираем кнопку «Найти и выделить» и выбираем пункт «Выделение группы ячеек». В появившемся диалоговом окне «Выделение группы ячеек» включаем опцию «Пустые ячейки» и нажимаем кнопку ОК. В предварительно выделенной строке будут выделены все пустые ячейки. Остается кликнуть правой кнопкой мыши в любом месте выделенного поля и выбрать пункт «Удалить. » в контекстном меню, а в появившемся диалоговом окне «Удаление ячеек» выбрать пункт «Столбец» и нажать ОК. При этом, строго говоря, будут удалены не пустые столбцы, а столбцы, содержащие пустые ячейки в предварительно выделенной строке.

    Нестандартные методы удаления пустых столбцов

    Программное удаление макросом VBA

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

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

    Автоматическое удаление с использованием надстройки

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

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

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

    Удаление столбцов (Power Query)

    Примечание: Надстройка Power Query предлагается в Excel 2016 в виде группы команд Скачать и преобразовать. Информация в этой статье относится и к Power Query, и к новой группе. Дополнительные сведения см. в статье Функция «Скачать и преобразовать» в Excel 2016.

    Если запрос содержит ненужные столбцы, их можно удалить.

    Удаление столбцов

    С помощью ленты редактора запросов

    Выберите столбец, который вы хотите удалить. Чтобы выделить несколько столбцов, щелкните их, удерживая нажатой клавишу CTRL или SHIFT.

    На ленте редактора запросов нажмите кнопку Удалить столбцы и выберите команду Удалить столбцы. Можно также выбрать команду Удалить другие столбцы, чтобы удалить все столбцы, кроме выделенных.

    С помощью контекстного меню редактора запросов

    Выберите столбец, который вы хотите удалить. Чтобы выделить несколько столбцов, щелкните их, удерживая нажатой клавишу CTRL или SHIFT.

    Щелкните правой кнопкой мыши выделенные столбцы.

    В контекстном меню выберите команду Удалить, чтобы удалить выделенные столбцы, или Удалить другие столбцы, чтобы удалить все столбцы, кроме выделенных.

    Примечание: Редактор запросов отображается только при загрузке, редактировании или создании нового запроса с помощью Power Query. В видео показано окно редактора запросов, которое отображается после изменения запроса в книге Excel. Чтобы просмотреть редактор запросов, не загружая и не изменяя существующий запрос в книге, в разделе Получение внешних данных на вкладке ленты Power Query выберите Из других источников > Пустой запрос. В видео показан один из способов отображения редактора запросов.

    Удаление пустых ячеек из диапазона

    Постановка задачи

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

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

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

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

    Выделяются все пустые ячейки в диапазоне.

  • Даем в меню команду на удаление выделенных ячеек: правой кнопкой мыши Удалить ячейки (Delete Cells) со сдвигом вверх.
  • Способ 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. Выделите достаточный диапазон пустых ячеек, например F3:F10.
    2. Идем в меню Вставка — Функция (Insert — Function) или жмем на кнопку Вставить функцию(Insert Function) на вкладке Формулы (Formulas) в новых версиях Excel. В категории Определенные пользователем (User Defined) выберите нашу функцию NoBlanks.
    3. В качестве аргумента функции укажите исходный диапазон с пустотами (B3:B10) и нажмите Ctrl+Shift+Enter, чтобы ввести функцию как формулу массива.

    Понравилась статья? Поделить с друзьями:
  • Удаление всех пробелов в ячейке excel
  • Удаление всех пробелов в word
  • Удаление всех нолей в excel
  • Удаление всех листов в excel vba
  • Удаление всех картинок в excel