Преобразование ссылок на изображения в картинки в файле Excel является простой задачей, которую можно решить без использования платных модулей и настроек, а лишь выполнив простую инструкцию ниже.
- Скачивание;
- Возврат к таблице Microsoft.
Видеоинструкция
Преобразование ссылок на изображения в картинки в таблице Excel
Среди базовых возможностей MS Excel нет такой функции, однако, можно легко скопировать всю таблицу в Google таблицу, после чего выполнить данную работу. Для этого создаем Google аккаунт и переходим на сайт:
https://www.google.ru/sheets/about/
Создаем новый документ.
Даем название файлу и копируем туда таблицу из обычного Экселя.
Далее используем формулу:
=IMAGE([ссылка]; [тип], [высота], [ширина])
Где
- [ссылка] — ссылка, которая может быть просто прописана или же взята из ячейки;
- [высота] – ширина изображения в пикселях (не обязательное);
- [ширина] – высота изображения в пикселях (не обязательное);
- [тип] – модификация, может принимать, значения от 1 до 4.
В случае с модификацией каждое число будет обозначать:
- Изображение будет растягивать до размеров ячейки с сохранением пропорций сторон;
- Растягивание будет происходить без сохранения пропорций сторон;
- Загрузка картинки с оригинальным размером;
- Требуется самостоятельно указать размер при помощи [высота] и [ширина]
Пример можно посмотреть здесь:
https://docs.google.com/spreadsheets/d/1yIW7LOghVldP3TcMLyD_HY_bnhCPDIfeLHftZA-AIZA/edit#gid=0
Далее можно переходить к превращению файла обратно в стандартную версию.
Преобразование ссылок на изображения в картинки в таблице обратно в МС Эксель
Выполнить эту задачу можно скопировав, выделив нужный диапазон и кликнув правой клавишей мыши (сочетание клавиш CTRL+C).
После вставляем данные в стандартную таблицу.
Все готово.
В дальнейшем можно скачать данные изображения при помощи инструкции.
Пример можно скачать ниже.
Уже несколько лет в Google Sheets существует функция IMAGE, позволяющая вставлять в ячейки листа картинки по ссылке из интернета. Что, впрочем, вполне естественно, поскольку Google-таблицы изначально заточены под работу онлайн — им сам бог велел такую возможность использовать.
У Excel же ничего подобного долго не было. И вот, наконец, осенью 2022 года Microsoft начала среди добровольцев-тестировщиков из программы Office Insider обкатку своего аналога — новой функции ИЗОБРАЖЕНИЕ (IMAGE), также позволяющей вставлять по веб-ссылке картинки из интернета прямо в ячейки листа Microsoft Excel. В начале 2023 года эту функцию уже стали потихонечку разливать с обновлениями подписчикам Office 365 и недавно она, наконец, добралась и до меня. А значит я могу вам о ней рассказать на нескольких практических примерах.
Если же последней версии Office у вас пока (или уже) не предвидится, то не расстраивайтесь — в конце этой статьи я покажу как при помощи короткого макроса можно сделать упрощённый аналог этой функции уже сегодня.
Синтаксис функции ИЗОБРАЖЕНИЕ (IMAGE)
Тут всё предельно просто:
=ИЗОБРАЖЕНИЕ(источник; [замещающий_текст]; [изменение_размера]; [высота]; [ширина])
Первым и единственным обязательным аргументом новой функции должна быть текстовая ссылка на файл изображения из интернета. Причем это должна быть именно веб, а не локальная ссылка на файл на жестком или сетевом диске. Если доступа в интернет сейчас нет, то вместо картинки будет ошибка #СОЕДИНЕНИЕ! (если нет интернета) или #ЗАБЛОКИР! (если ваши настройки безопасности не дают загрузить картинку). Если вы хотите подстраховаться на такой случай, то вторым аргументом как раз можно ввести замещающий текст, который будет отображен вместо отсутствующей картинки.
Третий аргумент отвечает за размеры и пропорции изображения и может принимать значения:
- 0 — вписать изображение в ячейку с сохранением пропорций
- 1 — заполнить всю площадь ячейки не сохраняя пропорции картинки
- 2 — сохранить исходный размер изображения (тут оно запросто может вылезти за пределы ячейки)
- 3 — задать высоту и ширину изображения принудительно (тогда их надо обязательно прописать в четвертом и пятом аргументе функции)
Большим преимуществом новой функции является то, что картинка будет не просто вставлена на лист, а именно вписана в конкретную ячейку, т.е. будет вместе с ней двигаться, сжиматься и растягиваться. Это принципиально отличается от классической вставки картинок командой Вставка — Рисунки (Insert — Pictures), когда изображение и лист находились, по сути, в разных слоях и вы могли запросто случайно сдвинуть или даже удалить картинку после вставки. Здесь же всё чётко.
Также если щёлкнуть по вставленному функцией изображению правой кнопкой мыши и выбрать команду Показать сведения об изображении (Show image properties), то во всплывающем окне можно будет увидеть картинку в оригинальном разрешении.
Теперь давайте рассмотрим несколько вкусных примеров использования новой функции ИЗОБРАЖЕНИЕ на практике.
Пример 1. Создание штрих-кодов и QR-кодов
Этикетки для маркировки товаров, ценники, бланки, наклейки — всё это требует формирования штрих-кодов различного типа. Теперь для этого можно не использовать специальные программы, а реализовать всё в Excel.
Идём на сайт австрийской компании TEC-IT, где можно легко создать штрих-код любого стандарта с заданным содержимым:
Ссылка, по которой формируется изображение штрих-кода висит на кнопке Download и выглядит так:
_ttps://barcode.tec-it.com/en/Тип_штрихкода?data=Наше_содержимое_кода
Например, для распространенного типа Code-128, который кодирует строку «ABC-abc-1234» ссылка будет выглядеть как:
_ttps://barcode.tec-it.com/en/Code128?data=ABC-abc-1234
Так что просто подклеиваем справа от последнего знака «равно» наши артикулы, заворачиваем всё в функцию ИЗОБРАЖЕНИЕ и получаем автоматизированное создание штрих-кодов для любого количества товаров:
Красота.
Если нужен не линейный, а квадратный QR-код, то можно использовать другой бесплатный сайт — QR Code Generator:
Здесь ссылка для формирования QR-кода выглядит следующим образом:
ttps://api.qrserver.com/v1/create-qr-code/?data=Наши_данные&size=100×100
Опять же, подставляем туда адреса ячеек с исходными данными и получаем возможность массово клепать QR-коды в любом количестве:
Пример 2. Логотипы компаний
Ещё одна любопытная возможность — это автоматизированная загрузка логотипов известных компаний с помощью веб-сервиса https://logo.clearbit.com. Идея та же — подклеиваем адрес сайта нужной нам компании в конец ссылки — и получаем от сервиса изображение логотипа заданной компании, которое выводит на лист наша функция ИЗОБРАЖЕНИЕ:
Можно использовать в дашбордах по анализу рынка, для визуализации инвестиционного портфеля, в прайс-листах и т.д. — у кого на сколько фантазии хватит.
Пример 3. Нестандартные диаграммы
На сайте QuickChart.io можно в режиме онлайн-конструктора создавать разнообразные диаграммы по вашим данным и использовать их затем в ваших проектах. Нюанс в том, что помимо стандартных диаграмм (которые Excel и сам неплохо умеет строить), здесь есть несколько весьма симпатичных нестандартных, например, спидометры и прогресс-бары, диаграммы Санкей для визуализации связей и т.д.
Для получения, например, круговой диаграммы-шкалы прогресса, нам потребуется сформировать вот такую веб-ссылку:
ttps://quickchart.io/chart?c={type:’radialGauge’,data:{datasets:[{data:[Значение_параметра],backgroundColor:’green’}]}}
И визуализировать её затем с помощью нашей новой функции ИЗОБРАЖЕНИЕ (IMAGE):
Или можно, например, сформировать и вывести изображение вот такого нарядного спидометра со стрелкой:
Здесь ссылка чуть похитрее, т.к. в неё уже зашиты размеры трёх диапазонов шкалы и их цвета, а также положение стрелки:
ttps://quickchart.io/chart?c={ type: ‘gauge’, data: { datasets: [ { data: [10, 40, 60], value: Позиция_стрелки, backgroundColor: [‘green’, ‘gold’, ‘lightcoral’] } ] } }
Названия цветов для заливки сегментов диаграммы можно взять из справочника.
Пример 4. Скриншоты сайтов
Если вы работаете с интернет-ресурсами или в области SEO-SMM, то вам пригодится возможность быстро формировать скриншоты заданных веб-страниц и вставлять их на лист Excel в виде изображений. Это можно сделать с помощью веб-сервиса https://mini.s-shot.ru, добавив к его адресу ссылку на интересующую страницу.
Подставляем её в нашу функцию ИЗОБРАЖЕНИЕ и получаем:
При большом количестве ссылок и скриншотов вся эта история может первый раз ощутимо подтормаживать — не пугайтесь.
Пример 5. Географические карты
Опять же, вставлять на лист интерактивные географические карты Excel уже давно умеет (через Вставка — Карты Bing, например), но можно это сделать и с помощью новой функции ИЗОБРАЖЕНИЕ, если найти веб-сервис, который по заданным координатам или названию населенного пункта будет формировать для нас скриншот карты в нужном месте. Обычно такие сервисы платные и используют API — специальный механизм запросов для общения с ними.
Например, на одном из таких сайтов Geoapify.com ссылка для получения нужного фрагмента карты случае формируется из:
- долготы (longtitude)
- широты (latitude)
- коэффициента масштаба (zoom)
- ключа API — длинного буквенно-цифрового кода, который вы получаете в личном кабинете в качестве вашего личного идентификатора:
Обратите внимание, что в качестве разделителя между целой и дробной частью должна быть использована точка, поэтому дополнительно придётся использовать функцию ПОДСТАВИТЬ (SUBSTITUTE), чтобы её подменить.
Аналог функции IMAGE на VBA
Если приведенные выше примеры вас заинтриговали, но последней версии Excel у вас пока нет, то можно относительно легко склепать на коленке упрощенный аналог этой функции на Visual Basic. Только вставлять картинки он будет не по ссылке из интернета, а по пути к файлу с жесткого диска вашего ПК (что в некоторых случаях может быть даже предпочтительнее — интернет у нас не везде бывает).
Откройте редактор макросов сочетанием клавиш Alt+F11 или кнопкой Visual Basic на вкладке Разработчик (Developer). Вставьте новый пустой модуль командой меню Insert — Module и скопируйте туда текст следующего макроса:
Sub InsertPictures() Dim pic As Shape Dim cell as Range, imageCell as Range 'проходим по выделенным непустым ячейкам For Each cell In Selection If Not IsEmpty(cell) Then Set imageCell = cell.Offset(0, 1) 'определяем ячейку справа для вставки картинки 'вставляем картинку Set pic = ActiveSheet.Shapes.AddPicture(cell.Value, False, True, imageCell.Left, imageCell.Top, -1, -1) pic.LockAspectRatio = True 'фиксируем соотношение сторон pic.Height = imageCell.Height 'подгоняем по высоте под ячейку End If Next cell End Sub
Теперь останется ввести в ячейки листа пути к файлам картинок, а затем выделить эти ячейки и запустить наш макрос командой Разработчик — Макросы (Developer — Macros) или сочетанием клавиш Alt+F8. Макрос пробежит по всем выделенным ячейкам и вставит в каждую картинку из указанного файла, вписав её в по размерам в каждую ячейку.
Картинки, правда, будут не внутри ячеек, как в случае с функцией IMAGE, а — как обычно — в отдельном слое, так что изменение высоты строк не приведёт к автоматической подгонке размеров изображений.
Если нужно будет подгонять размер картинок не по высоте, а по ширине ячеек, то замените в коде свойство Height на Width.
Ссылки по теме
- Выпадающий список с показом изображений
- Картинка в примечании к ячейке
- Создание печатной подложки в Excel
Одна из основных возможностей надстройки PastePictures — загрузка изображений по ссылкам, со вставкой скачанных картинок на лист Excel.
Для вставки картинок по ссылкам из таблицы Excel сделайте следующее:
- откройте в Excel файл, содержащий в одном из столбцов ссылки на изображения в интернете
- в настройках на вкладке «Вставка на лист» укажите ячейку, с которой в вашем файле начинаются ссылки,
а также в какой столбец листа нужно вставлять фотографии - (необязательно) в настройках на вкладке «Загрузка по ссылкам» укажите, в какую папку сохранять загружаемые картинки, и под какими именами.
- нажмите в меню программы —
Вставлять изображения можно как на лист (в ячейки), так и в примечания к ячейкам.
Как и куда вставлять, — задаётся в настройках на вкладке «Вставка на лист»:
Вставка рисунка на свой компьютер — это простой способ показать информацию или сделать ее более интересной. Добавить рисунок в Excel для Интернета можно тремя Excel для Интернета.
Совет: Чтобы добавить изображения в Excel в Интернете, может потребоваться сначала перейти в режим правки, нажав кнопку Редактировать книгу > Изменить в браузере.
Вставка рисунка с компьютера
Чтобы вставить рисунок, сохраненный в расположении, к нему можно получить доступ, с помощью указанных здесь действий.
-
Щелкните на том месте на компьютере, куда вы хотите вставить рисунок.
-
На ленте Вставка нажмите кнопку Рисунки.
-
Выберите это устройство…
-
Найдите рисунок, который нужно вставить, выделите его и нажмите кнопку Вставить.
Изображение будет вставлено на ваш компьютер.
Вставка рисунка из стокных изображений
Чтобы вставить рисунок из коллекции стоковые изображения, выполните указанные ниже действия.
-
Щелкните на том месте на компьютере, куда вы хотите вставить рисунок.
-
На ленте Вставка нажмите кнопку Рисунки.
-
Выберите Стокические изображения…
-
Найдите рисунок, который нужно вставить, выделите его и нажмите кнопку Вставить.
Изображение будет вставлено на ваш компьютер.
Вставка рисунка из Bing рисунков
Чтобы вставить рисунок из Bing изображений, выполните следующие действия:
-
Щелкните на том месте на компьютере, куда вы хотите вставить рисунок.
-
На ленте Вставка нажмите кнопку Рисунки.
-
Выберите Bing Рисунки…
-
Найдите рисунок, который вы хотите вставить, выберите его и нажмите кнопку Открыть.
Изображение будет вставлено на ваш компьютер.
Вставка рисунка с использованием Bing не поддерживается в Excel для Интернета. Изображения можно считать невежными по одной из следующих причин:
-
Веб-сайт, на который размещен рисунок, не использует ПРОТОКОЛ HTTPS. Это можно рассматривать как потенциальную уязвимость для системы безопасности.
-
URL-адрес веб-сайта изображения не является допустимым адресом.
Если вы хотите использовать изображение, найденное с помощью Bing в поиске изображений на Excel для Интернета, что не поддерживается, рекомендуем использовать следующие действия:
-
Щелкните на том месте на компьютере, куда вы хотите вставить рисунок.
-
На ленте Вставка нажмите кнопку Рисунки.
-
Выберите Bing Рисунки…
-
Найщите рисунок, который вы хотите вставить.
-
На изображении, которое вы хотите вставить, щелкните много много нажатием (…) и перейдите по ссылке на изображение. Изображение откроется на новой вкладке браузера.
-
Сохраните изображение на компьютере.
-
Выполните действия выше, чтобы вставить рисунок с компьютера, используя только что сохраненное изображение.
Совет: Вы также можете скопировать и вставить изображение из Интернета или приложения в Excel для Интернета без сохранения без использования меню Вставка.
После того как изображение будет добавлено на ваш таблицу, вы можете его сместить, переместить, а также добавить заметимый текст для улучшения качества работы с ним.
Нужна дополнительная помощь?
Парсинг картинок и ссылок по URL
Парсинг картинок и ссылок по URL – инструмент сбора ссылок на картинки и другие ссылки с веб страницы и выгрузки их в лист Excel
Инструкция по использованию:
- Выбор URL – ссылка на веб-страницу. Должна содержать протокол (например,
http://
). - Выгрузить в – ссылка на ячейку в листе Excel, с которой начнется выгрузка данных.
- Парсинг – кнопка запуска сбора данных с веб ресурса
Группа: Пользователи Ранг: Новичок Сообщений: 29
Замечаний: |
Здравствуйте!
Никак не могу найти решение задачи:
— в ячейках есть ссылки на конкретные фото с сайта (http://sofme.ru/UploadedFiles/Image_ROWIQFABCCHOUTJ.jpg)
— можно ли как-то быстро загрузить изображения по этим ссылкам в соседние ячейки?
Заранее благодарен за ответы.
К сообщению приложен файл:
0927723.xlsx
(45.2 Kb)
Обычно для вставки изображений на основе связанных URL-адресов или путей к файлам вам может помочь только код VBA. Здесь, с Вставить изображения из пути (URL) полезности Kutools for Excel, вы можете быстро вставлять изображения с заданных URL-адресов или путей к файлам в Excel всего несколькими щелчками мыши.
Вставка / отображение изображений из URL-адресов в Excel
Вставка / отображение изображений из путей к файлам в Excel
Нажмите Kutools> Вставить> Вставить изображения из пути (URL)…, чтобы включить эту функцию.
Вставка / отображение изображений из URL-адресов в Excel
Для вставки изображений из URL-адресов выполните следующие действия.
1. Включите функцию, нажав Кутулс > Вставить > Вставить изображения из пути (URL).
2. в Вставить изображения из пути (URL) диалог, пожалуйста:
- 1) Выберите диапазон ячеек с URL-адресами, на основе которых вы хотите вставить изображения в Путь (URL) Диапазон раздел;
- 2) Выберите пустую ячейку, в которую вы будете выводить изображения в Вставить диапазон (одна ячейка) раздел;
- 3) Укажите нужный размер изображения в Размер изображения (пиксель) раздел;
- 4) Нажмите OK кнопка. Смотрите скриншот:
Затем все изображения отображаются на основе заданных URL-адресов, как показано ниже.
Вставка / отображение изображений из путей к файлам в Excel
Если вы хотите отображать изображения из файловых путей, попробуйте следующее.
1. Включите функцию, нажав Кутулс > Вставить > Вставить изображения из пути (URL).
2. в Вставить изображения из пути (URL) диалоговое окно, выполните следующие настройки:
- 1). Путь (URL) Диапазон в разделе выберите ячейки, содержащие пути к файлам, по которым будут отображаться изображения;
- 2). Вставить диапазон (одна ячейка) раздел выберите ячейку, в которую вы будете выводить изображения;
- 3) Укажите нужный размер изображения в Размер изображения (пиксель) раздел;
- 4) Нажмите OK кнопка. Смотрите скриншот:
Теперь изображения вставляются в определенные ячейки на основе заданных путей. Смотрите скриншот:
Внимание:
1. Если вы проверите Добавить исходное изображение в качестве комментария в этом диалоговом окне изображения будут вставлены в комментарии с исходными размерами одновременно.
2. Согласно спецификациям и ограничениям Excel (https://support.office.com/en-us/article/excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3), ширина вставленных изображений должна быть меньше 2045 пикселей, а фиксированная высота должна быть меньше 547 пикселей.
3. Если указанный размер превышает ограниченный размер, вставляемые изображения будут автоматически скорректированы.
Демонстрация: вставка изображений из путей или URL-адресов с помощью Kutools for Excel
Kutools for Excel: более 300 функций, которые вы должны иметь в Excel, 30-дневная бесплатная пробная версия отсюда
Рекомендуемые инструменты для повышения производительности
Следующие ниже инструменты могут значительно сэкономить ваше время и деньги. Какой из них вам подходит?
Office Tab: Использование удобных вкладок в вашем офисе, как и в случае Chrome, Firefox и New Internet Explorer.
Kutools for Excel: Более 300 дополнительных функций для Excel 2021, 2019, 2016, 2013, 2010, 2007 и Office 365.
Kutools for Excel
Описанный выше функционал — лишь одна из 300 мощных функций Kutools for Excel.
Предназначен для Excel(Office) 2021, 2019, 2016, 2013, 2010, 2007 и Office 365. Бесплатно скачать и использовать в течение 60 дней.
Комментарии (8)
Оценок пока нет. Оцените первым!
Это моя модифицированная версия ответа, которую поделился с tomelin5. Он работает в Excel 2016 и, вероятно, (намного) в более ранних версиях.
В моем случае я создал приложение Microsoft PowerApps для сбора и хранения подписей с помощью ручки ввода.
В стороне: Если вы читаете это, потому что пытаетесь создать PowerApp: волшебным соусом для сохранения содержимого ваших элементов управления в электронную таблицу является функция Patch
.
Это работает так, что перьевой элемент управления сохраняет изображения в виде файлов PNG в каталоге и сохраняет относительные адреса к файлам PNG в виде URL-адресов в ячейках электронной таблицы: URL, например .MyAppName_imagesx829ca33re2d6114588e59ca45829d21.png
Я хотел отобразить эти подписи в этой электронной таблице Excel, чтобы их можно было отсортировать, используя другие данные, введенные через приложение. Решение tomelin5 работало так хорошо, как основа для моего решения, и я решил, что должен поделиться своим ремиксом.
Мое решение сохраняет URL-адреса в столбце «A» (1) и помещает сами изображения в столбец «I» (9). Он также регулирует высоту строк в соответствии с шириной столбца 9-го столбца, хотя вы, вероятно, захотите изменить / устранить это поведение.
Все URL-адреса обрабатываются, начиная с A2, и простираются до последней заполненной ячейки в столбце A. Обратите внимание, что мое решение не обрабатывает никаких исключений, и вам понадобится это в случае, если изображения были недоступны.
Sub Button1_Click()
' https://msdn.microsoft.com/en-us/library/office/aa221353(v=office.11).aspx
' http://www.excelhowto.com/macros/loop-range-cells/
' https://www.excelcampus.com/vba/find-last-row-column-cell/
' https://superuser.com/questions/52760/embed-pictures-from-web-by-url-in-excel-spreadsheet-or-oo-calc#
Dim Pic As Picture
Dim SrcRange As Range
Dim LastRowA As Long
LastRowA = Cells.Find(What:="*", _
After:=Range("A1"), _
LookAt:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
Set SrcRange = ActiveSheet.Range(Cells(2, 1), Cells(LastRowA, 1))
SrcRange.Rows().RowHeight = ActiveSheet.Columns(9).Width
For Each Cell In SrcRange.Cells
With Cell
Set Pic = .Parent.Pictures.Insert(.Value)
With .Offset(, 8)
Pic.Top = .Top
Pic.Left = .Left
Pic.Height = .Height
Pic.Width = .Width
Pic.Border.Color = vbRed
End With
End With
Next
End Sub