Сохранить изображения с листа Excel в файлы

Сохранить все изображения с листа в файлы

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

Доступен выбор типа создаваемых файлов (поддерживаются форматы JPG, GIF и PNG)

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

Если нужно сохранять картинки под именами из заданного столбца, либо производить другие действия с картинками (вставку на лист, вставку по ссылкам, поиск картинок в интернете), то воспользуйтесь универсальной надстройкой PastePictures.
Функция выгрузки изображений в файлы там присутствует в меню Изображения — Сохранить картинки с листа

В имени папки можно указать кодовое слово $filename - оно будет заменено на название текущего (обрабатываемого) файла Excel.

Для запуска экспорта картинок в файлы нажмите комбинацию клавиш Ctrl + Shift + P

 

На форме выберите формат сохраняемых изображений, и название папки для экспорта:

 

По завершении сохранения изображений макрос выдаст уведомление:

 

Результат экспорта изображений в созданной папке:

Ознакомьтесь также со способом сохранения в графические файлы
всех диаграмм на листе Excel

Комментарии

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".

Здравствуйте, Виталий
Выгрузить полноразмерные картинки легко очень (достаточно файл Excel сохранить как веб-страницу, и появится папка с картинками)
Гораздо сложнее разобраться, какая картинка к какой строке относилась, чтобы присвоить картинкам имена из столбца (в описанном выше способе, картинки получают произвольные имена)

Добрый день Игорь!
Тема уже поднималось по размеру картинки. Разве нельзя выгрузить картинку оригинального размера а не размера вставленного изображения! Просто когда я отправляю через почтовый клиент и данные вставляю в тело письма, получатель получает все фото в оригинальном размере без каких либо зажатий (во вложении).
Заранее Большое спасибо!

Спасибо за отличную программу. В 2016 версии экспортирует первые 23 изображения, остальные идут просто белым фоном. После первого экспорта удаляете уже готовые изображения из документа и повторяете заново))

Ох! Пардон, перечитал комментарии и нашёл ответ на свой вопрос.
Ещё раз спасибо за отличную программку! :)

Добрый день!
Спасибо за прекрасную программку. Возможно, вам нужна на сайте кнопка "Дать денег за просто так" :)
Если по делу, то вопрос такой:
Можно ли без изменения кода в название файлов передать данные из этой же строки, что и картинка. А вообще кроме названия файла что-то можно передать в имя файла?
Спасибо.

Попробуйте универсальную программу для сохранения картинок в файлы
http://excelvba.ru/programmes/PastePictures
Там другой механизм выгрузки, - он должен работать на любой версии.

Пытаюсь экспортировать картинки из документа. Всё работает, вот только вместо картинок в папке просто файлы с белым фоном и всё.Как поступить? У меня офис 2016. До этого на 2010 всё работало, а теперь на новом офисе получается такая ерунда.

Спасибо за программу. Просто и удобно.

vet, такая возможность есть.
Читайте мой предыдущий комментарий.

есть ли возможность присваивать файлам имена заданные в соседней с картинкой ячейке?
спасибо

не пойму почему, но не работает на 2010 excel

Здравствуйте, Александр
В расширенной версии этой надстройки есть возможность задать номер столбца
(и экспорт картинок там реализован качественнее)
http://excelvba.ru/programmes/PastePictures

В меню надстройки есть пункт «Изображения - Сохранить картинки в файлы...»

Спасибо большое! Работает! :)
Я так понял сам код VBA запаролен. Можно как то договориться на посмотреть, "что там внутри".
Работает все как надо. Задача была выгрузить картинку и присвоить ей имя <артикул>.jpg пришлось изменить прайслист и просто разместить имена артикулов слева. Все получилось. Но было бы удобнее указывать индекс столбца, где надо искать имя, что бы не править сам лист Excel.

Автору большое Спасибо!!!

Да, выгружаются без белых полос, но все очень маленькие. НЕ смотря на то что я их предварительно увеличила:-( Почему в 2003 Exsel фотки вытаскиваются без изменения свойств в реальном размере, а из моего, только такие как они вставлены в лист? Уже просто не знаю что делать...

Здравствуйте, Елена.
C белой полосой, - да, есть такая проблема.
Дело в том, в 3 разных версиях Excel (2003, 2007, 2010) этот макрос работает по-разному (в одной версии - без полос, в других - есть полосы, причем с разных сторон)
Это недостаток используемого способа экспорта изображений (через вставку в диаграмму, у которой, в Excel 2007-2010, края закруглены, - из-за этого картинку не удается поместить точно в угол диаграммы, и получаются белые полосы)

Используйте для экспорта картинок в файлы эту надстройку:
http://excelvba.ru/programmes/PastePictures
Там используется другой, более сложный, алгоритм экспорта, - и картинки выгружаются нормально (без белых полос)

Фото смогла все увеличить до исходного размера, но после использования макроса, почему то внизу фото появляется белая полоса, качество хорошее, но изображение как будто не все...

Добрый день. Работает все отлично, быстро, проблем с переименованием нет. НО есть другая проблема. У каждого фото в эксель файле есть свой определенный размер (когда заходишь в свойства рисунка есть исходные размеры), а при скачивании через макрос они становятся все одинаковымми, маленькими по размеру. Если в свойствах рисунка нажать сброс (размеры станут исходные), то при вытаскивании через макрос размер остается такой какой нужен. Только заходить в каждое фото, это очень тяжко, по другому никак этого не сделать?

Нет, для этого надо другой макрос делать.

Здравствуйте! Может ли данная надстройка помочь в том случае, если я хочу ячейку (пустую или с текстовыми данными)сделать изображением?

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

Вот в ту программу можно будет добавить опцию выбора масштаба.

Подскажите всё таки, если можно, как увеличивать картинки, а то приходится их сначала руками все увеличивать. А вообще было бы не плохо в форму добавить поле, для введения масштаба увеличения (по умолчанию =1). И каждый мог бы увеличить во столько, во сколько ему нужно, в 2 или в 5 или в 3,748 раза.

С уважением.

Очень помогло, большое спасибо автору.

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

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

попробую

Здравствуйте, Дмитрий.
Дело в том, что Excel не знает, каких размеров та картинка была изначально, и не может оценить её качество.
Потому я даже не знаю, как картинки выгрузить увеличенными, - увеличить-то их перед выгрузкой несложно (и то не всегда, - если картинка огромная, - то это проблематично), - вот только как определить, во сколько раз её увеличивать...
Некоторые картинки надо увеличить в 2 раза, некоторые - в 5 раз, а есть и такие картинки, в которых при увеличении в несколько раз заметно потеряют в качестве.
К тому же, заранее неизвестно, было ли применено к этим картинкам (или некоторым из них) сжатие.
Потому получить заведомо корректный результат проблематично.

PS: Сейчас картинки выгружаются в том размере, в каком они отображаются в Excel.

Добрый день!

Столкнулся с тем, что выгружаемые файлы меньше по размеру и хуже по качеству, чем картинки к экселе. Например, если картинка хорошего качества ужата по размеру в экселе, но при этом ее можно всегда развернуть, то она такая маленькая (в ужатом виде) и выгружается. Можно это как-то побороть? Заранее спасибо!

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

Добрый вечер. Пишит после запуска программа не отвечает и выдает что загружено 0 файлов. Вы не могли бы, пожалуйста помочь? Заранее спасибо

Если при нажатии комбинации клавиш, макрос не запускается, - на то могут быть 2 причины:
1) файл надстройки не запущен
2) не включены макросы в Excel

Как запустить? По комбинации Ctrl + Shift + P открывается окно Формат ячеек.

Очень своевременно помогло сохранить большое количество картинок из файла.
Спасибо!

Дмитрий, а какая разница, сохранять картинки из XLSX, или из другого формата файлов Excel (XLS и т.д.)
Для программы (макроса) разницы нет...

Спасибо за программу, если-бы она еще сохраняла оригиналы из xlsx, было-бы совсем отлично.

Здравствуйте, Сергей.
Возможно, в вашем файле картинки вставлены как-то по-особенному,
или вы задали название папки, содержащее недопустимые символы для имени папки.

В файле-примере ведь всё работает...
Можете выслать мне на почту свой файл Excel с картинками - тогда я подскажу, в чем проблема.

После нажатия "экспортировать изображения в файлы"
выдает
"экспортированно 0 из ... ( кол-во найденных ) изображений"

Спасибо!

Ранета, так а в чем проблема?

Видите кнопочку «Оформить заказ»?
Нажмите её, - и вы получите эту услугу

МНЕ НУЖНА УСЛУГА ПРОГРАММИСТА -EXCEL . СРОЧНО !

Для этого есть специальные программы - типа Jshot или Jet Screenshot

Есть и надстройки Excel, реализующие данную функциональность.
Пример такой надстройки я выкладывал на форуме программистов

Была и аналогичная надстройка для создания скриншотов в формате JPG (я её где-то на форумах выкладывал - вроде на ПланетеExcel, сейчас найти не могу)
Не найдёте самостоятельно - за небольшую сумму я могу сделать такую надстройку под ваши нужды.

Как сделать захват листа Excel и сохранить изображение в формате типа xxx.jpg ?

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

Именование файлов в надстройке идет 3 способами:
1) по умолчанию - имя из ячейки слева
2) если имя не содержит расширения - оно добавляется
3) если имя некорректное, или файл с таким именем уже существует, - в имя файла добавляется название листа

Точно уже не помню, - но как-то так...

Можно присваивать имя как угодно. Заказывайте доработку - сделаю.
(я и так бесплатно сделал готовую рабочую программу - а уж если хочется ещё и дополнительных функций, то уже имеет смысл заплатить за доработку)

Добрый день. Работает со скоростью ветра)))) Одна заковыка - именование извлеченных граф.файлов идет по имени листа и имени извлекаемой картинки. Можно ли присваивать имя по содержанию ячейки выбиранного столбца в той же строке, что и картинка - т.е. что бы имя граф.файла содержало индентификатор.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
CAPTCHA
Подтвердите, пожалуйста, что вы - человек:
  ____    ____          _  __     __  _   _ 
|___ \ | ___| ___ / | \ \ / / | | | |
__) | |___ \ / __| | | \ \ / / | | | |
/ __/ ___) | \__ \ | | \ V / | |_| |
|_____| |____/ |___/ |_| \_/ \___/
Введите код, изображенный в стиле ASCII-арт.

Не получается применить макрос? Не удаётся изменить код под свои нужды?

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