Как выделить все картинки в excel

Обновлено: 06.07.2024

Макрос позволяет увеличивать / уменьшать изображения на листе Excel по щелчку мыши.

Для использования макроса, скопируйте в свой файл модуль с кодом (просто перетащив его мышкой из прикреплённого файла),
выделите все картинки в своём файле Excel, и назначьте им макрос ZoomImage

Чтобы выделить все изображения, проделайте следующее:

  • нажмите Ctrl + G (для появления диалогового окна «Переход»)
  • нажмите кнопку «Выделить» в этом диалогом окне
  • в появившемся окне «Выделение группы ячеек» поставьте галочку «Объекты», и нажмите OK

После этого (как все картинки будут выделены), щелкните на одной из картинок правой кнопкой мыши,
в контекстном меню нажмите «Назначить макрос», выделите макрос ZoomImage, и нажмите OK

При щелчке на картинке, макрос плавно увеличивает картинку в 3 раза, попутно перемещая её в центр экрана
(коэффициент увеличения, скорость увеличения фото, и количество промежуточных шагов увеличения, можно задать в коде)

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

Код макроса ZoomImage:

Комментарии

Это надо заметно усложнять макрос.

А как сделать чтобы картинка в конце уплывала на своё место? а то когда увеличивается то то постепенно это делает со своего места, а когда уменьшается то делает это посередине экрана

Нет, макросы работают только в Excel. В ПДФ работать не будет

Игорь, добрый день!
Подскажите, будет ли работать этот функционал (увеличение фото по клику), если сохранить документ Exel в PDF или XPS?
Хотим в прайс добавить картинки, но прайс отправляем клиентам не в экселе, чтоб слуйчайно не редактировалось ничего.
Буду благодарен за ответ!

Мои макросы гарантированно работают только под windows. На маке - там многое по-другому делается.

Макрос не работает для MAC

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

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

После сохранения портится качество картинки до нечитаемого, что делать? Excel 2010

Причина в том, что Excel автоматически сжимает рисунки при сохранении. Чтобы этого избежать надо зайти: Файл -> Параметры -> Дополнительно и поставить галочку в пункте "Не сжимать изображения в файле". В зависимости от версии Excel данная функция может быть в другом разделе.

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

Это не от макроса зависит, а от того, в каком размере и с каким качеством вставлены картинки.
Если вставить картинку размером 40*50 пикселей, - конечно, она при увеличении до размеров 400*500 будет выглядеть ужасно.
А если вы вставите на лист фотографию размером 3000*2000, а потом уменьшите её до 30*20, - то при щелчке она будет увеличиваться без всякой потери качества (так как на листе она хоть и отображается маленькой, - Excel её хранит целиком).
Но, опять же, если в случае с этим большим фото, в Excel нажать кнопку СЖАТЬ ИЗОБРАЖЕНИЯ, - после сохранения файла и повторного его открытия, Excel обрежет ненужное, - и картинка 3000*2000 превратится в картинку 30*20 - и тогда увеличение опять даст плохой результат.
А чтобы и файл Excel много не весил, и картинки при увеличении сильно качество не теряли, - размеры вставляемых картинок должны быть порядка 200-500 пикселей (при этом, не имеет значения, на сколько они уменьшены в размерах при вставке на лист)

Добрый день!
Спасибо за Вашу работу, однако при использовании возникли проблемы. После сохранения файла и повторноv его открытиb качество увеличенной картинки ухудшается. В чем причина?

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

Антонина, по ценам здесь написано.
Если нет четкого техзадания, - я даже примерно цену не могу сказать.

ОГРОМНОЕ СПАСИБО. ЕЩЕ ВОПРОС, ВОЗМОЖНО НЕ ПО ТЕМЕ. СКОЛЬКО БУДЕТ СТОИТЬ НАПИСАНИЕ ПРОГРАММЫ ДЛЯ ФОРМИРОВАНИЯ ПРАЙС ЛИСТОВ ДЛЯ КЛИЕНТОВ.

У меня вопрос, а можно, как-нибудь уменьшить размер всего файла xls, а то с этим макросом он начал весить очень много. Или может картинок очень много. В общем как решить задачу: формирование прайс-листа с изображениями, но небольшого по весу. Спасибо за любой ответ.

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

Удалите все изображения на активном листе с помощью команды Перейти

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

1, Нажмите F5 , чтобы открыть Перейти к диалоговое окно в Excel.


2, Нажмите Особый кнопку и войдите в Перейти к специальному диалоговое окно , затем проверьте объект вариант. Смотрите скриншот:


3, Затем нажмите OK кнопку, все изображения выбраны на активном листе, нажмите Удалить ключ, чтобы удалить их все.

Ноты:

1. Этот метод выберет все объекты на активном листе, такие как изображения, диаграммы, формы и т. Д. Если вы не хотите удалять другие объекты, вы должны отменить выбор других объектов перед нажатием клавиши Delete.

2. Этот метод удалит только изображения на активном листе.

Удалите все изображения на активном листе с помощью VBA

Использование макроса VBA поможет вам быстро удалить все изображения на активном листе.

1. Удерживайте ALT + F11 ключи в Excel, и он открывает Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модульи вставьте следующий макрос в окно модуля.

3, нажмите F5 ключ для запуска этого макроса. И все изображения в активном листе удаляются сразу.

Удалите все изображения на активном листе или всю книгу с помощью Kutools for Excel

Kutools for Excel's Удалить иллюстрации и объект может удалить все изображения сразу, независимо от того, находятся ли они на активном листе или во всей книге.

1. Нажмите Kutools > Удалить> Удалить иллюстрации и объект . Смотрите скриншот:



2. В Удалить иллюстрации и объект диалоговое окно:

(1.) Проверьте Картинки или другой вариант объектов в Удалить .

(2.) Удалите все изображения во всей книге, проверьте Все листы вариант в Заглянуть раздел; при удалении всех изображений на активном листе отметьте Активный лист вариант; при удалении всех изображений на определенных листах проверьте Выбранные листы вариант. Смотрите скриншот:

3. Нажмите ОК. И все изображения были удалены с активного листа, выбранных листов и всей книги по мере необходимости.


Kutools for Excel's Удалить иллюстрации и объект может помочь нам удалить все диаграммы, линии, изображения, автофигуры, умные рисунки, текстовые поля, связанные объекты OLE и встроенные объекты OLE на активном листе, выбранном листе или на всех листах текущей книги.
Нажмите, чтобы узнать больше…

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

Имеется несколько способов решить данную проблему: средствами программы Excel и с помощью макроса VBA.

Удаление картинок и объектов в Excel средствами программы

В результате вставки данных со страницы Интернет-сайта скопировались ненужные картинки и элементы управления:


Чтобы удалить ненужные объекты, сначала необходимо выделить эти элементы, для этого перейдите в меню "Главная" -> "Редактирование" -> "Найти и выделить"-> "Выделение группы ячеек" (можно также кликнуть клавишу F5, а затем нажать кнопку "Выделить. ").


В открывшемся окне необходимо выбрать пункт "Объекты" и кликнуть "OK":


В результате Excel выделит все требуемые объекты (если необходимо какие то элементы оставить, то необходимо зажать клавишу Ctrl и левой кнопкой мыши кликнуть на необходимые элементы, для снятия выделения):


Теперь осталось только нажать клавишу Delete, чтобы удалить все выделенные объекты.


Удаление картинок и объектов в Excel с помощью макроса VBA

Указанную выше проблему можно решить, написав в редакторе Visual Basic следующий макрос:

Если же необходимо удалить только картинки, тогда макрос необходимо изменить на:

Можно дополнить макрос еще одной полезной функцией - удаление гиперссылок:

Объединив два действия в одну функцию DeleteObjects будут удалены все объекты и ссылки:

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

Читайте также: