Работа с графическими элементами в Microsoft Excel часто превращается в головную боль, когда на листе десятки фигур, а нужно изменить их все сразу. Вы детально проработали отчёт, добавили стрелочки, блок-схемы, текстовые поля — и вдруг требуется поменять цвет всех объектов или переместить их на другой лист. Выделять каждый вручную? Это займёт часы! К счастью, в Excel есть скрытые инструменты для группового управления фигурами, о которых знают лишь опытные пользователи.
Сегодня мы разберём 5 способов выделения всех фигур на листе — от стандартных функций до макросов VBA. Вы узнаете, как обойти ограничения программы, избежать ошибок при работе с большими файлами и даже автоматизировать процесс для регулярных задач. А в конце статьи вас ждёт бонус: скрипт для выделения фигур по типу (например, только прямоугольники или только стрелочки).
Перед тем как перейти к инструкциям, давайте уточним, что именно подразумевается под "фигурами" в Excel. Это:
- 🔹 Автофигуры: прямоугольники, овалы, стрелочки, звёзды и т.д. (вкладка
Вставка → Фигуры); - 📝 Текстовые поля (
Вставка → Текстовое поле); - 📊 Объекты WordArt;
- 🖼️ Вставленные изображения (если они не в ячейках, а поверх листа).
Важно: диаграммы, элементы управления (кнопки, флажки) и комментарии к этому списку не относятся — для них нужны другие методы.
Способ 1: Панель выбора объектов — стандартный инструмент Excel
Самый простой метод, который работает во всех версиях Excel (начиная с 2007 года). Панель выбора объектов позволяет увидеть все скрытые или перекрытые фигуры и выделить их за один клик.
Как открыть панель:
- Перейдите на вкладку
Главная; - В группе
РедактированиенажмитеНайти и выделить→Выбор объектов(или используйте горячие клавишиAlt + H + FD + O); - Откроется боковая панель со списком всех объектов на листе.
Чтобы выделить все фигуры:
- 🖱️ Удерживайте клавишу
Ctrlи кликайте по каждому объекту в списке; - 🔄 Или нажмите
Ctrl + A, чтобы выделить всё сразу (работает не во всех версиях Excel!).
⚠️ Внимание: Если на листе есть скрытые объекты (например, фигуры без заливки или с прозрачностью 100%), они тоже отобразятся в панели. Их легко пропустить визуально, но они будут мешать при групповом редактировании.
Преимущества метода:
| Плюсы | Минусы |
|---|---|
| Работает без макросов и дополнительных надстроек | Нельзя отфильтровать объекты по типу (например, только стрелочки) |
| Показывает даже перекрытые фигуры | При большом количестве объектов панель становится неудобной |
| Подходит для Excel 2007–2023 и Office 365 | Не сохраняет порядок наложения объектов при выделении |
Способ 2: Горячие клавиши для быстрого выделения
Если вам нужно выделить все видимые фигуры на листе (без скрытых или перекрытых), используйте комбинацию клавиш. Этот метод сэкономит время, но имеет ограничения.
Инструкция:
- Нажмите
Ctrl + G(илиF5), чтобы открыть диалогПереход; - Внизу окна нажмите кнопку
Выделить...; - В появившемся меню выберите
Объектыи нажмитеOK.
Все фигуры на активном листе будут выделены. Обратите внимание:
- 🔍 Метод не работает с объектами на других листах книги;
- 🖼️ Если фигура спрятана под другим объектом, она всё равно будет выделена;
- 📌 Комбинация
Ctrl + A(выделить всё) в Excel выделяет только ячейки, а не объекты!
⚠️ Внимание: В Excel 2016 и новее при использовании этого метода могут выделяться также вставленные изображения. Если вам нужны только фигуры, придётся удалять лишние объекты вручную.
Для ускорения процесса создайте собственную комбинацию клавиш:
- Откройте
Файл → Параметры → Настройка ленты; - Внизу нажмите
Сочетания клавиш: Настройка...; - В категории
Вкладка "Главная"найдите командуВыделить объектыи назначьте ей удобное сочетание (например,Ctrl + Alt + O).
Способ 3: Макрос VBA для выделения всех фигур
Для пользователей, готовых автоматизировать рутинные задачи, VBA (Visual Basic for Applications) предлагает гибкие решения. С помощью макроса можно выделить:
- 🔹 Все фигуры на активном листе;
- 📊 Фигуры определённого типа (например, только прямоугольники);
- 📄 Объекты на всех листах книги.
Базовый код для выделения всех фигур на активном листе:
Sub SelectAllShapes()
Dim shp As Shape
For Each shp In ActiveSheet.Shapes
shp.Select False ' Добавляем объект к выделению
Next shp
End Sub
Как использовать:
- Нажмите
Alt + F11, чтобы открыть редактор VBA; - Вставьте код в новый модуль (
Insert → Module); - Закройте редактор и запустите макрос через
Alt + F8(или назначьте ему кнопку на панели быстрого доступа).
Расширенный вариант — выделение фигур по типу (например, только стрелочки):
Sub SelectShapesByType()
Dim shp As Shape
For Each shp In ActiveSheet.Shapes
If shp.Type = msoLine Then ' msoLine — это стрелочки/линии
shp.Select False
End If
Next shp
End Sub
Типы фигур (mso...) для фильтрации:
| Тип объекта | Код для VBA |
|---|---|
| Прямоугольник | msoRectangle |
| Овал | msoOval |
| Линия/стрелочка | msoLine |
| Текстовое поле | msoTextBox |
⚠️ Внимание: Макросы VBA могут быть отключены по умолчанию в настройках безопасности Excel. Чтобы их запустить, перейдите вФайл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Параметры макросови выберитеВключить все макросы(не рекомендуется для файлов из ненадёжных источников!).
Включить макросы в настройках Excel|Создать резервную копию файла|Проверить код на наличие ошибок|Назначить макросу горячие клавиши-->
Способ 4: Выделение фигур через "Формат по образцу"
Малоизвестный лайфхак: инструмент Формат по образцу (Главная → Формат по образцу или Ctrl + Shift + C) можно использовать не только для копирования стилей ячеек, но и для группового выделения фигур.
Алгоритм действий:
- Выделите одну фигуру на листе;
- Дважды кликните по инструменту
Формат по образцу(кисть в группеБуфер обмена); - Кликайте по другим фигурам — они будут добавляться к выделению.
Преимущества метода:
- 🎨 Позволяет визуально контролировать, какие объекты выделяются;
- 🔄 Работает даже с перекрытыми фигурами;
- 📌 Не требует знания VBA или горячих клавиш.
Ограничения:
- ❌ Невозможно выделить все фигуры одним кликом — приходится кликать по каждой;
- ❌ Не работает с объектами на других листах.
Как отменить режим "Формат по образцу"?
Нажмите Esc или кликните по инструменту Формат по образцу ещё раз. Если вы случайно применили формат к ячейкам, используйте Ctrl + Z для отмены.
Способ 5: Надстройка "Shape Tools" для расширенного управления
Если вы регулярно работаете с большим количеством фигур, стоит рассмотреть специализированные надстройки. Одна из самых популярных — Shape Tools (бесплатная версия доступна на сайте Microsoft AppSource). Она добавляет в Excel дополнительные функции:
- 🔍 Фильтрация фигур по типу, цвету, размеру;
- 📊 Групповое изменение свойств (например, сделать все стрелочки красными);
- 📄 Экспорт/импорт фигур между файлами;
- 🔄 Выравнивание и распределение объектов по сетке.
Как установить:
- Перейдите в
Вставка → Надстройки; - В поле поиска введите
Shape Tools; - Нажмите
Добавитьи следуйте инструкциям.
После установки надстройка добавит новую вкладку в ленту Excel. Чтобы выделить все фигуры:
- Откройте вкладку
Shape Tools; - Нажмите
Select All Shapes; - Готово! Теперь можно редактировать объекты группой.
⚠️ Внимание: Надстройки могут конфликтовать с другими расширениями или замедлять работу Excel при большом количестве объектов (1000+). Перед установкой проверьте отзывы и рейтинг в AppSource.
Типичные ошибки и как их избежать
При групповом выделении фигур пользователи часто сталкиваются с неожиданными проблемами. Вот самые распространённые из них и способы их решения:
1. Не выделяются некоторые объекты
Причина: фигуры могут находиться на другом слое (например, внутри группы или на другом листе). Решение:
- 🔍 Проверьте панель выбора объектов (
Главная → Найди и выдели → Выбор объектов); - 📄 Переключитесь на другие листы книги — возможно, объекты распределены по ним;
- 🔄 Если фигуры сгруппированы, сначала разгруппируйте их (
Формат → Группировка → Разгруппировать).
2. При выделении сбивается порядок наложения
Excel автоматически поднимает выделенные объекты на передний план. Чтобы сохранить исходный порядок:
- 📌 Используйте макрос VBA с параметром
shp.Select False(как в примере выше); - 🔄 После редактирования вручную верните объекты на место через
Формат фигуры → Положение и размер → Порядок.
3. Макрос не работает с некоторыми фигурами
В Excel есть два типа графических объектов:
- Shapes — стандартные фигуры (прямоугольники, овалы и т.д.);
- OLEObjects — встроенные объекты (например, диаграммы или элементы управления).
Если ваш макрос не видит часть фигур, добавьте в код обработку OLEObjects:
Sub SelectAllObjects()
Dim shp As Shape, ole As OLEObject
For Each shp In ActiveSheet.Shapes: shp.Select False: Next
For Each ole In ActiveSheet.OLEObjects: ole.Select False: Next
End Sub
Практические примеры: когда нужно выделять все фигуры
Давайте рассмотрим реальные сценарии, в которых групповой выбор фигур становится необходимостью:
1. Изменение корпоративного стиля
Ваша компания обновила фирменные цвета, и теперь все стрелочки в отчётах должны быть синими (RGB: 0, 112, 192), а текстовые поля — с серой облицовкой. Вместо того чтобы править каждый объект вручную:
- Выделите все фигуры одним из описанных методов;
- На вкладке
Форматустановите новые цвета заливки и контура; - Сохраните как шаблон для будущих отчётов.
2. Перенос фигур на другой лист
Вы создали сложную блок-схему на листе "Черновик", а теперь нужно перенести её на лист "Итог":
- Выделите все фигуры;
- Нажмите
Ctrl + X(вырезать); - Перейдите на целевой лист и вставьте (
Ctrl + V).
⚠️ Важно: Если фигуры привязаны к ячейкам (например, через Формат фигуры → Свойства → Перемещать и изменять размер вместе с ячейками), их положение может сбиться после вставки.
3. Удаление всех ненужных объектов
Вы получили файл от коллеги, заполненный сотнями стрелочек и текстовых полей, которые мешают анализу данных. Чтобы очистить лист:
- Выделите все фигуры;
- Нажмите
Delete; - Готово! Теперь лист чист, а данные доступны для редактирования.
4. Экспорт фигур в PowerPoint
Нужно перенести схему из Excel в презентацию? Сгруппируйте все фигуры:
- Выделите объекты;
- Нажмите
Ctrl + G(группировать); - Скопируйте группу (
Ctrl + C) и вставьте в PowerPoint (Ctrl + V).
Как сохранить прозрачность фигур при копировании в Word/PowerPoint?
Перед копированием выделите фигуры и на вкладке Формат проверьте параметр Прозрачность. В некоторых версиях Office прозрачность сбрасывается при вставке — в этом случае экспортируйте схему как картинку (Копировать как рисунок).
FAQ: Частые вопросы о работе с фигурами в Excel
Можно ли выделить фигуры на всех листах книги одновременно?
Стандартными средствами Excel — нет. Но вы можете использовать макрос VBA, который обходит все листы:
Sub SelectShapesInAllSheets()
Dim ws As Worksheet, shp As Shape
For Each ws In ThisWorkbook.Worksheets
ws.Activate
For Each shp In ws.Shapes
shp.Select False
Next shp
Next ws
End Sub
⚠️ Обратите внимание: при большом количестве листов макрос может работать медленно.
Почему некоторые фигуры не выделяются макросом?
Вероятные причины:
- 🔹 Фигуры находятся в скрытых листах;
- 🔹 Объекты являются элементами управления (кнопки, флажки) — для них нужен отдельный код;
- 🔹 Фигуры вставлены как объекты WordArt (используйте
ActiveSheet.ShapesиActiveSheet.OLEObjectsв макросе).
Как выделить фигуры только определённого цвета?
Стандартными средствами это невозможно, но с помощью VBA можно отфильтровать объекты по цвету заливки. Пример кода для выделения всех красных фигур (RGB(255, 0, 0)):
Sub SelectShapesByColor()
Dim shp As Shape
For Each shp In ActiveSheet.Shapes
If shp.Fill.ForeColor.RGB = RGB(255, 0, 0) Then
shp.Select False
End If
Next shp
End Sub
Для других цветов замените RGB(255, 0, 0) на нужный код.
Можно ли отменить выделение всех фигур, если я случайно нажал не на ту кнопку?
Да, просто:
- Кликните по любой ячейке на листе;
- Или нажмите
Esc; - Или используйте
Ctrl + Z, если выделение привело к нежелательным изменениям.
Как сохранить выделенные фигуры как шаблон для будущих файлов?
Создайте шаблон Excel (.xltx):
- Выделите и отформатируйте все фигуры;
- Удалите ненужные данные с листа;
- Сохраните файл как шаблон:
Файл → Сохранить как → Шаблон Excel (*.xltx); - При создании нового файла выберите ваш шаблон — все фигуры будут уже готовы к использованию.