Если вы хотите избавиться от автоматических форм в Excel, вы можете найти простой способ быстро удалить все формы, а не удалять автоматические формы по одной. Следующий хитрый метод поможет вам удалить все автофигуры одним щелчком мыши.
- Удалите все автофигуры на активном листе с помощью функции Перейти в Excel
- Удалите все автофигуры на активном листе с помощью VBA
- Удалите все автофигуры на листе или в книге с помощью Kutools for Excel
Удалите все автофигуры на активном листе с помощью функции Перейти в Excel
Если есть только один вид объектов — автофигуры на листе, вы можете удалить все автофигуры с помощью Перейти к функции.
1. Нажмите F5 or Ctrl + G для отображения Перейти к диалоговое окно и щелкните Особый.., см. снимок экрана:
2. Проверьте Объекты, А затем нажмите Ok, он выберет все объекты, см. снимок экрана:
3. Затем нажмите Возврат на одну позицию кнопку, чтобы удалить все автофигуры.
Внимание: Объекты содержат автофигуры, изображения, картинки и т. Д. Применение этого метода приведет к удалению других объектов, кроме автофигур, если на листе есть не только объект автофигур.
Удалите все автофигуры на активном листе с помощью VBA
Использование макроса VBA может помочь вам быстро удалить все автоматические формы на активном листе.
Шаг 1: Удерживайте ALT + F11 ключи, и он открывает Microsoft Visual Basic для приложений окно.
Шаг 2: нажмите Вставить > Модули, и вставьте следующий макрос в Модули окно.
VBA: удалить все фигуры на активном листе.
Sub DeleteShapes ()
Дим Шп как форма
Для каждой детали в ActiveSheet.Shapes
Шп.Удалить
Следующая Шп
End Sub
Шаг 3: нажмите F5 ключ для запуска этого макроса.
Затем вы увидите, что все фигуры на активном листе быстро удаляются.
Заметки:
1. Этот макрос VBA может удалять только все фигуры на активном листе.
2. Этот макрос VBA может удалять все виды фигур на активном листе, включая изображения, клипы, фигуры, SmartArt, диаграммы, текстовые поля и т. Д.
Удалите все автофигуры на листе или в книге с помощью Kutools for Excel
Если вы хотите удалить только автоматические формы с листа, Kutools for Excel‘s Удалить иллюстрации и объект может помочь вам удалить определенные фигуры на активном листе, выбранных листах или всей книге одним щелчком мыши.
Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас.
Шаг 1: нажмите Кутулс > Удалить иллюстрации и объект.
Шаг 2: В Удалить инструменты диалоговое окно, пожалуйста, отметьте Авто формы вариант и отметьте один из вариантов в заглянуть раздел. См. Следующий снимок экрана:
- Если вы установите флажок Активный лист опция, он удалит все автоматические формы на активном листе;
- Если вы установите флажок Выбранные листы опция, он удалит все автоматические формы на выбранных листах;
- Если вы установите флажок Все листы вариант, он удалит все автоматические формы во всей книге.
Шаг 3: нажмите OK, он удалит все автоматические формы.
Kutools for Excel’s Удалить инструменты может помочь нам удалить все диаграммы, линии, изображения, автофигуры, умные рисунки, текстовые поля, связанные объекты OLE и встроенные объекты OLE на активном листе, выбранном листе или на всех листах текущей книги. Нажмите, чтобы узнать больше…
Относительные статьи:
- Легко удалить все изображения
- Удалить все диаграммы Рабочие книги
- Быстро удалить все текстовые поля
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Если вы хотите удалить все изображения из Microsoft Excel, может потребоваться много времени, чтобы выбрать каждое изображение и удалить их одно за другим. Следующие приемы могут упростить удаление всех изображений:
Удалите все изображения на активном листе с помощью команды Перейти
… Команда «Перейти» позволяет выбрать все изображения на активном листе. Работа будет проще, если мы сможем выделить все изображения перед их удалением.
1. Нажмите F5, чтобы открыть диалоговое окно «Перейти» в Excel.
2. Нажмите кнопку «Пользовательский» и войдите в диалоговое окно «Перейти к настройке» ,, затем выберите параметр «Объект». Смотрите скриншот:
3. Затем нажмите кнопку «ОК», все изображения будут выбраны на активном листе, нажмите кнопку «Удалить», чтобы удалить их все.
Примечания:
1. Этот метод выберет все объекты на активном листе, такие как изображения, диаграммы, фигуры и т.д. Если вы не хотите удалять другие объекты, вам необходимо отменить выбор других объектов перед нажатием клавиши Delete.
2. Этот метод удалит только изображения на активном листе.
Удалите все изображения на активном листе с помощью VBA
Использование макроса VBA поможет вам быстро удалить все изображения на активном листе.
1. Удерживая нажатыми клавиши ALT + F11 в Excel, откроется окно Microsoft Visual Basic для приложений.
2. Щелкните Вставить> Модуль и вставьте следующий макрос в окно модуля.
3, нажмите клавишу F5, чтобы запустить этот макрос. И все изображения в активном листе удаляются сразу.
Удалите все изображения на активном листе или всю книгу с помощью Kutools for Excel
Kutools for ExcelАвтора Удалить графику и объект может удалить все изображения сразу, независимо от того, находятся ли они на активном листе или во всей книге.
1. Нажмите Kutools> Удалить> Удалить искусство и объект. Смотрите скриншот:
2. В диалоговом окне «Удалить графику и объект:
(1.) Установите флажок «Изображения» или другие параметры объекта в меню «Удалить .
(2.) Удалите все изображения во всей книге, установите флажок «Все листы» в разделе «Осторожно»; при удалении всех изображений на активном листе выберите опцию Активный лист; при удалении всех изображений на определенных листах выберите параметр «Выбранные листы». Смотрите скриншот:
3. Щелкните ОК. И все изображения были удалены с активного листа, выбранных листов и всей книги, если это необходимо.
Kutools for ExcelАвтора Удалить иллюстрации и объекты могут помочь нам удалить все диаграммы, линии, изображения, автофигуры, умные рисунки, текстовые поля, связанные объекты OLE и встроенные объекты OLE на активном листе, выбранном листе или во всех листах текущей книги.
Работа с фигурами в VBA Excel: создание фигур методом Shapes.AddShape, типы фигур (MsoAutoShapeType), обращение к фигурам и изменение их свойств. Примеры.
Объекты для работы с фигурами
Фигуры в VBA Excel представлены тремя объектами:
Объект | Описание |
---|---|
Shapes | Коллекция всех фигур на рабочем листе. Используется для создания новых фигур, для обращения к одной фигуре по имени и для перебора фигур циклом. |
ShapeRange | Коллекция нескольких фигур, аргументом которой является массив имен выбранных объектов. Используется для редактирования сразу всех фигур, входящих в эту коллекцию. |
Shape | Объект, представляющий одну фигуру. Используется для редактирования одной этой фигуры. |
Фигуры в VBA Excel создаются методом Shapes.AddShape.
Синтаксис метода AddShape
Shapes.AddShape (Type, Left, Top, Width, Height) |
Shapes — выражение, возвращающее коллекцию фигур на рабочем листе, например: ActiveSheet.Shapes.
Параметры метода AddShape
Параметр | Описание |
---|---|
Type | Константа из коллекции MsoAutoShapeType, определяющая тип создаваемой фигуры. |
Left | Расстояние от левой границы фигуры до левой границы табличной части рабочего листа в пунктах.. Тип данных — Single. |
Top | Расстояние от верхней границы фигуры до верхней границы табличной части рабочего листа в пунктах.. Тип данных — Single. |
Width | Ширина фигуры по внешним границам в пунктах. |
Height | Высота фигуры по внешним границам в пунктах. |
Все параметры метода Shapes.AddShape являются обязательными.
Константы MsoAutoShapeType
Константы коллекции MsoAutoShapeType, определяющие основные типы создаваемых фигур:
Константа | Значение | Тип фигуры |
---|---|---|
msoShapeRectangle | 1 | Прямоугольник |
msoShapeParallelogram | 2 | Параллелограмм |
msoShapeTrapezoid | 3 | Трапеция |
msoShapeDiamond | 4 | Ромб |
msoShapeRoundedRectangle | 5 | Прямоугольник: скругленные углы |
msoShapeOctagon | 6 | Восьмиугольник (октаэдр) |
msoShapeIsoscelesTriangle | 7 | Равнобедренный треугольник |
msoShapeRightTriangle | 8 | Прямоугольный треугольник |
msoShapeOval | 9 | Овал |
msoShapeHexagon | 10 | Шестиугольник (гексаэдр) |
msoShapeCross | 11 | Крест |
msoShapeRegularPentagon | 12 | Пятиугольник (пентаэдр) |
msoShapeCan | 13 | Цилиндр |
msoShapeCube | 14 | Куб |
msoShapeDonut | 18 | Круг: прозрачная заливка (кольцо) |
msoShapeLightningBolt | 22 | Молния |
msoShapeSun | 23 | Солнце |
msoShapeMoon | 24 | Месяц (луна) |
msoShape5pointStar | 92 | Звезда: 5 точек (пятиконечная) |
msoShapeCloud | 179 | Облако |
Все доступные константы из коллекции MsoAutoShapeType смотрите на сайте разработчиков.
Создание объекта ShapeRange
Создание коллекции ShapeRange из выбранных фигур:
Dim myShapeRange As ShapeRange Set myShapeRange = ActiveSheet.Shapes.Range(Array(«Пятиугольник 140», «Солнце 141», «Облако 144»)) |
Объектная переменная myShapeRange не обязательна, можно обратиться непосредственно к возвращенной коллекции, например, присвоив всем ее элементам синий цвет:
ActiveSheet.Shapes.Range(Array(«Пятиугольник 140», «Солнце 141», «Облако 144»)).Fill.ForeColor.RGB = vbBlue |
Примеры работы с фигурами
Пример 1
Создание пяти разных фигур из кода VBA Excel методом Shapes.AddShape:
Sub Primer1() With ActiveSheet.Shapes ‘При создании фигуры без присвоения ее переменной скобки не нужны .AddShape msoShapeCube, 30, 40, 72, 72 .AddShape msoShapeIsoscelesTriangle, 130, 40, 72, 72 .AddShape msoShapeSun, 230, 40, 72, 72 .AddShape msoShapeLightningBolt, 330, 40, 72, 72 ‘Чтобы выбрать фигуру, параметры необходимо заключить в скобки .AddShape(msoShapeCloud, 430, 40, 72, 72).Select End With End Sub |
Результат работы кода:
Пример 2
Работа с одной фигурой:
Sub Primer2() Dim myShape As Shape ‘Создаем фигуру «Месяц» и присваивает ссылку на нее переменной myShape Set myShape = ActiveSheet.Shapes.AddShape(msoShapeMoon, 50, 50, 80, 80) With myShape ‘Меняем высоту и ширину фигуры .Height = 150 .Width = 100 ‘Меняем цвет фигуры .Fill.ForeColor.RGB = vbYellow ‘Поворачиваем фигуру влево на 40 градусов .Rotation = —40 End With End Sub |
Пример 3
Редактирование одновременно нескольких фигур с помощью коллекции ShapeRange:
Sub Primer3() With ActiveSheet.Shapes.Range(Array(«Овал 1», «Овал 2», «Овал 3»)) ‘Меняем цвет всех фигур из коллекции ShapeRange .Fill.ForeColor.RGB = vbBlue ‘Задаем высоту и ширину овалов .Height = 150 .Width = 50 ‘Поворачиваем фигуры вправо на 45 градусов .Rotation = 45 End With End Sub |
Пример 4
Редактирование одновременно всех фигур на рабочем листе с помощью коллекции ShapeRange:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Sub Primer4() Dim myShapeRange As ShapeRange, i As Integer, _ myShape As Shape, myArray() As String ‘Задаем массиву размерность от 1 до количества фигур на листе ReDim myArray(1 To ActiveSheet.Shapes.Count) ‘Проходим циклом по всем фигурам коллекции и записываем их имена в массив For Each myShape In ActiveSheet.Shapes i = i + 1 myArray(i) = myShape.Name Next ‘Создаем коллекцию ShapeRange и присваиваем ссылку на нее переменной myShapeRange Set myShapeRange = ActiveSheet.Shapes.Range(myArray) With myShapeRange ‘Изменяем цвет всех фигур на рабочем листе .Fill.ForeColor.RGB = RGB(100, 150, 200) ‘Поворачиваем все фигуры вокруг вертикальной оси .Flip msoFlipVertical End With End Sub |
Пример 5
Добавление надписи (текста) на фигуру:
Sub Primer5() Dim myShape As Shape Set myShape = ActiveSheet.Shapes.AddShape(msoShapeCloud, 50, 30, 300, 300) With myShape.TextFrame2 ‘Добавление текста на фигуру .TextRange.Characters.Text = «Объект TextFrame представляет текстовую рамку в объекте Shape. Содержит текст в текстовом кадре, а также свойства и методы, которые контролируют выравнивание и закрепление текстового кадра.» ‘Задаем курсивное начертание .TextRange.Characters.Font.Italic = True ‘Указываем размер шрифта .TextRange.Characters.Font.Size = 13 ‘Отступ левой границы текстового поля от левой внутренней границы фигуры .MarginLeft = 30 ‘Отступ верхней границы текстового поля от верхней внутренней границы фигуры .MarginTop = 20 End With End Sub |
Результат работы кода:
Изменить цвет текста, например на черный, можно двумя способами:
‘С помощью константы MsoThemeColorIndex myShape.TextFrame2.TextRange.Characters.Font.Fill.ForeColor.ObjectThemeColor = msoThemeColorDark1 ‘С помощью цветовой модели RGB myShape.TextFrame2.TextRange.Characters.Font.Fill.ForeColor.RGB = RGB(0, 0, 0) |
С константами из коллекции MsoThemeColorIndex вы можете ознакомиться на сайте разработчиков.
Пример 6
Удаление фигур с рабочего листа из кода VBA Excel с помощью метода Delete.
Удаление одной фигуры:
ActiveSheet.Shapes(«Ромб 5»).Delete |
Удаление нескольких фигур:
ActiveSheet.Shapes.Range(Array(«Овал 1», «Овал 2», «Овал 3»)).Delete |
Удаление всех фигур с рабочего листа с помощью цикла:
Sub Primer6() Dim myShape As Shape For Each myShape In ActiveSheet.Shapes myShape.Delete Next End Sub |
В 7 примере рассмотрено удаление всех фигур без цикла.
Пример 7
Выделение всех фигур на рабочем листе:
ActiveSheet.Shapes.SelectAll |
Выбор всех фигур и удаление выбранного (всех фигур):
Sub Primer7() ActiveSheet.Shapes.SelectAll Selection.Delete End Sub |
Продолжение темы в статье VBA Excel. Копирование, перемещение и поворот фигур.