Книга: Магия таблиц. 100+ приемов ускорения работы в Excel (и немного в Google Таблицах)
Назад: Power Map (3D-карты)
Дальше: Условное форматирование с формулами

Функция ИЗОБРАЖЕНИЕ / IMAGE

Файл с примером: ИЗОБРАЖЕНИЕ.xlsx
Функция IMAGE (в Excel на русском — ИЗОБРАЖЕНИЕ) позволяет вставлять в ячейки Google Таблиц и Excel изображения. Первый и единственный обязательный аргумент функции — ссылка на изображение.
В Excel функция появилась только в 2022 году в рамках пакета Microsoft 365, то есть в Excel 2021 ее нет.
Чтобы получить ссылку на изображение, находящееся в Сети, нужно в браузере щелкнуть правой кнопкой мыши на нем и нажать «Получить ссылку на изображение».
В следующем примере функция ИЗОБРАЖЕНИЕ отображает обложку книги, ссылка на которую находится в ячейке A1 (а функция ссылается на нее в своем единственном обязательном аргументе).

 

 

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

 

 

В Excel у функции есть второй аргумент — «Замещающий текст»: можно заменить изображение текстовым значением, если будут проблемы с соединением или загрузкой изображения. Далее — аргументы, определяющие режим отображения (они есть и в функции IMAGE в Google Таблицах, о них ниже).
В Google Таблицах функция называется IMAGE при любом языке формул.

 

 

И там, в Google Таблицах, также можно получить все ссылки на изображения на сайте с помощью функции IMPORTXML и запроса XPath «//img/@src». А это значит, что можно сформировать ссылку на поиск изображения по тексту с помощью формулы.
В ней мы подставляем название товара или что угодно еще, что нужно найти, в поисковый запрос, потом получаем список всех изображений на этой странице с поисковой выдачей (IMPORTXML), затем берем одно из значений из этого списка (можно второе — первое обычно пустое или там может быть логотип, а далее могут быть менее релевантные варианты) с помощью функции ИНДЕКС / INDEX и превращаем ссылку в изображение (функцией IMAGE).

Функция КОДИР.URL / ENCODEURL кодирует текст, чтобы он был пригоден для веб-запроса:
=IMAGE(INDEX(IMPORTXML("https://www.google.com/search?tbm=isch&q="&ENCODEURL(текст для поиска); "//img/@src");2))

Для Яндекс. Картинок все будет аналогично, только ссылка на поиск другая:
=IMAGE(INDEX(IMPORTXML
("https://yandex.ru/images/search?text="&ENCODEURL(текст для поиска);"//img/@src");2))

 

Google Таблица с примером: Вытаскиваем изображения из Яндекс. Картинок и Google Images.

 

Обратите внимание, что изображения ведут себя почти как текст, их можно выравнивать по высоте и ширине. Можно использовать заливку, если изображения имеют прозрачный фон.
Функция IMAGE никак не может повлиять на ширину и высоту ячеек. Изображения лишь вписываются в текущие размеры ячейки с сохранением исходных пропорций.
У IMAGE также есть второй (в Excel третий) аргумент — режим отображения. У него четыре возможных значения — от единицы до четырех.
Первый режим — это вариант по умолчанию (то есть если вы вообще опустите второй аргумент с номером режима, будет использоваться он). В нем сохраняются исходные пропорции, а картинка по высоте занимает всю ячейку. В большинстве случаев именно этот режим и подходит, а значит, можно ограничиваться только первым аргументом функции IMAGE.
Во втором режиме изображение занимает всю ячейку. Протянем функцию вниз и увидим, что картинка заняла всю ячейку. В таком режиме исходные пропорции не сохраняются.
В третьем режиме сохраняется исходный размер. Как видите, мы наблюдаем только фрагмент изображения, потому что оно существенно больше той ячейки, в которой находится функция IMAGE с третьим режимом.
В четвертом режиме появляются третий и четвертый (четвертый и пятый в Excel) аргументы функции — высота и ширина (в пикселях). Их можно как указывать внутри функции, так и брать из ячеек, ссылаясь на них.

 

 

Назад: Power Map (3D-карты)
Дальше: Условное форматирование с формулами