Как удалить скрытые объекты в excel
Вставив в Excel скопированную таблицу с сайта – расписание электричек, поездов, расписание уроков и тому подобное, зачастую видели различные элементы управления, которые засоряли таблицу (Рис.1). Избавиться от них очень хочется, но как это сделать быстро?

Рисунок 1. Лишние чекбоксы в таблице Excel
Для того, чтобы удалить «чекбоксы» (Рис.1) из таблицы Excel, нужно воспользоваться функцией «Выделить группу ячеек» из группы «Найти и выделить».

Рисунок 2. Выбор чекбоксов
В открывшемся окне нужно выбрать пункт «Объекты» и нажать ОК.

Рисунок 3. Выбор чекбоксов и других объектов
После этого нужно нажать кнопку «Delete» на клавиатуре для удаления. Кнопка «Удалить» в риббоне будет неактивна!
Как удалить скрытые объекты в excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Как удалить все скрытые элементы в Excel
Довольно часто люди скрывают какие-либо данные в табличках.
Это хороший вариант оставить видимыми только те данные, которые важны (например, в отчете), а остальные (например, вспомогательный столбик для расчетов) просто скрыть.
Но если вам эти данные больше не нужны — можно их удалить. В случае, если их очень много, это займет довольно много времени вручную.
В данной статье мы рассмотрим быстрые способы удаления скрытых столбиков и строк.
Удаляем скрытые столбики и строки с помощью встроенных функций Excel
Мы можем использовать встроенную функцию Excel чтобы сделать это.
Узнайте Excel как свои пять пальцев на курсе по таблицам от Skillbox
Но не забывайте, что с помощью этой функции мы удалим их сразу со всех листов. А не с какого-то отдельного.
- Щелкните «Главная»;

- Далее — «Сведения»;

- Далее — «Проверка книги»;

- Жмем «Проверить документ»;

- И просто нажимаем «Проверить»;

- Далее найдите Далее найдите «Скрытые строки и столбцы»;

- И просто удалите их.

Готово! Таким образом, все скрытые элементы будут удалены. Вот результат проверки после удаления:

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

Кроме того, что мы рассматриваем в этой статье, с помощью этой проверки можно определить кучу других полезных вещей.
Обязательно сделайте резервную копию файла перед тем, как будете использовать этот способ. Так как изменения, которые вы сделаете — невозможно откатить.
Однако, этот способ не подойдет вам, если нужно удалить скрытые элементы только с одного листа. А другие не трогать.
В таком случае мы можем создать свою функцию с помощью Visual Basic.
С помощью Visual Basic
В этом разделе статьи мы создадим несколько функций (для разных целей) с помощью Visual Basic.
Удаляем скрытые элементы из выделенного диапазона ячеек
Мы можем создать функцию которая удалит скрытые элементы со всего листа, но я считаю что это глупая затея.
Самый приемлемый вариант — сделать так, чтобы функция удаляла скрытые элементы из выделенного диапазона. А там уже можно выделить и весь лист (CTRL + A), если это необходимо.
Код для удаления скрытых строк Visual Basic:
Sub DeleteHiddenRows() Dim sht As Worksheet Dim LastRow Set sht = ActiveSheet LastRow = sht.UsedRange.Rows(sht.UsedRange.Rows.Count).Row For i = LastRow To 1 Step -1 If Rows(i).Hidden = True Then Rows(i).EntireRow.Delete Next End Sub
Lastrow — этой переменной присваивается номер последней строки в выделенном диапазоне.
Далее он проверяет скрыта или нет эта строка и так далее.
Рекомендуем курс Excel по анализу данных от Skypro — очень глубокое и яркое погружение в Эксель.
Если скрыта — удаляется.
Код для удаления скрытых столбиков Visual Basic:
Sub DeleteHiddenColumns() Dim sht As Worksheet Dim LastCol as Integer Set sht = ActiveSheet LastCol = sht.UsedRange.Columns(sht.UsedRange.Columns.Count).Column For i = LastCol To 1 Step -1 If Columns(i).Hidden = True Then Columns(i).EntireColumn.Delete Next End Sub
Работает точно так же, только для столбиков.
А этот код работает сразу для столбиков и строк:
Sub DeleteHiddenRowsColumns() Dim sht As Worksheet Dim LastRow as Integer Dim LastCol as Integer Set sht = ActiveSheet LastRow = sht.UsedRange.Rows(sht.UsedRange.Rows.Count).Row LastCol = sht.UsedRange.Columns(sht.UsedRange.Columns.Count).Column For i = LastRow To 1 Step -1 If Rows(i).Hidden = True Then Rows(i).EntireRow.Delete Next For i = LastCol To 1 Step -1 If Columns(i).Hidden = True Then Columns(i).EntireColumn.Delete Next End Sub
Это, по сути, объединенные коды, которые мы уже рассмотрели.
Тут работает 2 цикла — сначала проверяются и удаляются скрытые строки, а потом столбики.
Код нужно вставить в Visual Basic -> правой кнопкой на любой лист -> «Insert» -> «Module».
Удаляем скрытые элементы из определенного диапазона ячеек
Бывает и такое, что нужно часто удалять скрытые элементы из конкретного диапазона ячеек.
В таком случае, мы можем указать, в каком диапазоне удалять скрытые элементы и сделать это прямо в функции!
Пример такого кода:
Sub DeleteHiddenRowsColumns() Dim sht As Worksheet Dim Rng As Range Dim LastRow As Integer Dim RowCount As Integer Set sht = ActiveSheet Set Rng = Range("A2:B300") RowCount = Rng.Rows.Count LastRow = Rng.Rows(Rng.Rows.Count).Row ColCount = Rng.Columns.Count LastCol = Rng.Columns(Rng.Columns.Count).Column For i = LastRow To LastRow - RowCount Step -1 If Rows(i).Hidden = True Then Rows(i).EntireRow.Delete Next For j = LastCol To LastCol - ColCount Step -1 If Columns(j).Hidden = True Then Columns(j).EntireColumn.Delete Next End Sub
Эта функция удалит все скрытые элементы из A2:B300.
Сам код такой же, как и те, что мы рассмотрели ранее, но в нем указан конкретный диапазон.
Вот и все! Рекомендую использовать встроенную функцию проверки документа, если вам нужно удалить скрытые элементы со всех листов. А в других случаях — используйте любой из кодов для Visual Basic.
Надеюсь, эта статья оказалась полезной для вас!
Узнайте Excel как свои пять пальцев на курсе по таблицам от Skillbox
Отображаем невидимые объекты на листе EXCEL
При импорте содержимого web-страниц на лист EXCEL может попасть множество ненужных объектов: картинок, элементов управления, таблиц, форм. Часть из этих объектов может быть скрыта. Научимся отображать эти объекты, а затем удалять их.
Для примера можно скопировать содержимое любой web-страницы на лист, например, www.mail.ru .
Для отображения скрытых объектов необходимо вызвать в меню Главная/ Редактирование/ Найти и выделить команду Область выделения .

Нажимая на название объекта ( Picture 1 ) можно выделить объект, затем клавишей DEL – удалить его если нужно.
Совет : чтобы удалить элемент управления (см. Control 13 на рисунке выше) необходимо перейти на вкладке Разработчик в режим Конструктора ( Разработчик/ Элементы управления ). Чтобы открыть вкладку Разработчик зайдите в меню Кнопка офис/ Параметры Excel/ Основные/ Показывать вкладку Разработчик на ленте .
Выделить ВСЕ объекты можно с помощью инструмента Выделение группы ячеек ( Главная/ Найти и выделить ). Переключатель установить на Объекты .

На первом рисунке (окно Область выделения . ) видно, все объекты разделены на 2 группы (группы отделены горизонтальной линией). Инструмент Выделение группы ячеек выделяет сначала объекты из нижней группы (наподобие выделения нижнего слоя). После их выделения, а затем удаления с помощью клавиши DEL , можно приниматься за вторую группу объектов. Заново вызовите Инструмент Выделение группы ячеек, который выделит теперь оставшиеся элементы (верхнюю группу).
Аналогичный подход может быть использован и для объектов, созданных самостоятельно.

СОВЕТ: Другим способом удаления картинок, объектов (элементов формы), гиперссылок является вставка содержимого web-страницы не прямо в EXCEL, а в стандартное приложение Windows Блокнот (Notepad.exe). После вставки содержимого web-страницы из Буфера обмена в новый документ Блокнота в нем будет содержаться только текст с web-страницы. Затем остается этот текст скопировать в EXCEL.
