Выбор фото из выпадающего списка

Выбор фото из выпадающего списка

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

Видео Шаг 1. Создаем каталог с фото и даем ему имя

Создаем на Листе 1 мы каталог с наименованиями и фотографиями товаров, состоящий из двух столбцов (Модель и Фото):

Теперь надо дать имя нашему каталогу, чтобы ссылаться на него в будущем. В Excel 2003 и старше для этого идем в меню Вставка - Имя - Присвоить (Insert - Name - Define), а в Excel 2007 и новее - жмем на кнопку Диспетчер имен (Name Manager) на вкладке Формулы (Formulas). Создаем диапазон - вводим имя (например Фотоальбом) и в качестве адреса указываем формулу:

Эта формула определяет последнюю занятую ячейку в столбце А и выдает на выходе диапазон с А2 до этой найденной ячейки. Такая относительно сложная конструкция нужна, чтобы впоследствии дописывать новые модели к нашему списку и не думать об исправлении диапазона. Если дописывать точно ничего не придется, то можете вместо ввода этой страшноватой формулы просто указать =A2:A5

Шаг 2. Выпадающий список для выбора модели

Перейдем на Лист 2 и создадим там ячейку с выпадающим списком для выбора пользователем модели телефона (пусть это будет A1). Выделяем ячейку и идем в меню Данные - Проверка (Data - Validation) или в новых версиях Excel - на вкладку Данные - Проверка данных (Data - Data Validation). Далее в поле Тип данных (Allow) выбираем Список (List), а в качестве Источника (Source) указываем наш Фотоальбом (не забудьте перед ним добавить знак равенства):

Кроме того этой ячейке удобно дать имя - снова меню Вставка - Имя - Присвоить и далее вводим имя (например Выбор) и ОК.

Шаг 3. Копируем фотографию

Перенесем первую фотографию из фотоальбома к выпадающему списку. Выделите ячейку с первой фотографией (не сам рисунок, а ячейку!) и

в Excel 2003 и старше - удерживая Shift, откройте меню Правка (Edit). Там должен появиться невидимый ранее пункт Копировать рисунок (Copy as Picture):

В Excel 2007 и новее можно просто развернуть выпадающий список под кнопкой Копировать (Copy) на Главной (Home) вкладке:

В Excel 2010 появится еще одно дополнительное окно с выбором типа создаваемого изображения:

В нем нужно выбрать варианты "как на экране" и "растровый".

Копируем, переходим на Лист 2 к выпадающему списку и в любую пустую ячейку недалеко от него вставляем наш мини-скриншот ячейки с фотографией (меню Правка - Вставить или обычное CTRL+V).

Шаг 4. Создаем динамическую ссылку на выбранную фотографию

Теперь необходимо сделать ссылку, которая будет указывать на ячейку с выбранной фотографией. Открываем меню Вставка - Имя - Присвоить (Insert - Name - Define) или Диспетчер имен (Name Manager) на вкладке Формулы (Formulas) и создаем еще один именованный диапазон:

Имя нашей ссылки, допустим, будет Фото, а формула

Технически, функция ПОИСКПОЗ (MATCH) находит ячейку с нужной моделью в каталоге по названию, а функция СМЕЩ (OFFSET) затем выдает ссылку на соседнюю справа от найденного названия ячейку, т.е. ячейку с фотографией товара.

Шаг 5. Привязываем фотографию к ссылке

Осталось выделить скопированную фотографию на Листе 2 и вписать в строку формул

Ссылки по теме Копируем, переходим на Лист 2 к выпадающему списку и в любую пустую ячейку недалеко от него вставляем (меню Правка - Вставить или обычное CTRL+V).

Осталось выделить скопированную фотографию на Листе 2 и вписать в строку формул

Статься интересная, спасибо! В случае если размеры картинок находящиеся в именованном диапазоне "Фото" отличаются*, а возможности привести их к одному размеру по "высоте-ширине" (чтобы логотип точно влезал в ячейку) нет, то при работе описанного алгоритма часть изображения логотипа режется под размер ячейки Как быть в этом случае?Спасибо!

* - есть логотипы с квадратной пропорцией сторон, а есть с пропорцией прямоугольной.

Друзья помогите! Посмотрел данный вариант - все круто, вот только одно НО. Мне необходимо что бы рисунок менялся не от значения выбранного в выпадающем списке, а от значения в ячейке, которое меняется автоматически от 1,2,3. до 27! т.е. если в ячейке значение 1, то рисунок такой-то, если в этой же ячейке значение 2, то рисунок другой.

Народ, я нашел в чем проблема!суть данной функции, которая представлена в примере, это создать рисунок, который будет полностью повторять то, что написано или нарисовано в конкретной ячейке, другими словами скриншот ячейки.Данную функцию (лично я в своем excel 2007) получил следующим путем:1) выбираем ячейку, которую хотим, чтобы наш рисунок повторял2) тисним CTRL+V или же просто копировать3) в меню "Главное => буфер обмена => вставить.." нажимаем на стрелочку, так чтобы выскочило дополнительное меню и выбираем "Как рисунок => вставить связь с рисунком".

Тем самым получаем рисунок, который ссылается на конкретную ячейку, у которого можно вбивать формулу (по идее формула должна ссылаться только на какую то ячейку (чтобы было с чего делать скриншот), то есть если вбить формулу итог вычисления которой будет 16 или 9999, то выдаст ошибку неверная ссылка. Именно по этой причине надо использовать формулу, которую использует автор данной статьи ( =смещь. ) а не, например =впр). Данный рисунок, как правило, получаем поверх копируемой ячейки.

Надеюсь довольно понятно разъяснил.

2) тисним CTRL+V или же просто копировать

Добрый день! Совсем недавно открыл для себя этот замечательный сайт и теперь восторгаюсь Посмотрел видео, сделал. Класс! Хочу сделать небольшой коммент: Выпадающий список в ячейке это хорошо, но порой гораздо интереснее, когда этот список реализован с помощью кнопки ( через вкладку разработчик). В этом случае, нам не удастся воспользоваться функцией ПОИСКПОЗ, поскольку у нас не будет ячейки, а будет объект - выпадающий список. Что же делать? Но все оказывается гораздо проще! Мы можно привязать объект выпадающий список к любой другой ячейке. В этом случае, в этой ячейке будет проставляться номер выбранной позиции относительно начала списка! А стало быть, можно ссылаться прямо на эту ячейку вместо использования не самой просто функции ПОИСКПОЗ. Надеюсь, кому-то будет полезно

И вопрос к аудитории: На финише мы выделяли вставленную как картинка ячейку и в командной строке прописывали = Фото (динамический массив). Массив Фото по сути, задан формулой Смещ и т.д Но если в командной строке прописать эту самую формулу, заместо короткого "Фото" Excel ругается. Т.о сделать так, чтобы "протянуть" картинку вниз, чтобы, к примеру, она изменялась при изменении значения в соседнем столбце, у нас не получится? Или все же как то можно это сделать? Своеобразный аналог ВПР, но для картинок

Очень полезная статья и прием.

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

Затык наступает на привязке динамического диапазона картинке. Выдает ошибку "НЕ ВЕРНАЯ ССЫЛКА". Пытался выше изложенными способами все сделать, но то ли руки кривые, то ли что, ошибка пока осталась.

Прошу у читателей форума и у Вас, Николай, помощи в решении вопроса.

К сведению, если вдруг у кого-нибудь встретится аналогичная ситуация.

Если на Листе2 (там где выпадающий список) имеется объединение ячеек (допустим объеденены А5иВ5 или более или А5,А6,В5,В6) то изображения из Листа1 (из фотоальбом) соответствующее этим строкам (в данном случае изображение в ячейке В5 фотоальбома), будут отображаться криво.

Лечится путем избавления от объединения ячеек, либо если не желательно избавляться от объединения, переносом изображений фотоальбома в другой столбец. В моем случае в нескольких строках были объединены ячейки от А до К. Перенес изображения в столбец L, и внес соответствующее изменение в именованный диапазон "фото":=СМЕЩ(Лист1! $L$2 ;ПОИСКПОЗ(Выбор;Фотоальбом;0)-1;0;1;1)и все заработало как надо.

P.S. Хочу сказать ОГРОМНЕЙШЕЕ СПАСИБО Автору сайта и форума за все эти приемы. Очень многое узнал из приемов, чего нет в приемах нашел или подсказали на форуме. Все это применил на практике в работе. Сэкономил сотни часов. То что раньше приходилось делать вручную часами, а то и днями, сейчас делается несколькими нажатиями мыши.

САКЕН. СПАСИБО ПРЕОГРОМНЕЙШЕЕ!! за подсказку в каком направлении смотреть )), нигде больше не попадалась эта информация.

- избавление от объединенных ячеек - ничего не дало, - перенос столбцов и строк фотоальбома - был неудобен;

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

P.S. Так же С БОЛЬШУЩЕЙ БЛАГОДАРНОСТЬЮ Автору сайта и всем пользователям сайта, кто НЕ ЖАЛЕЕТ ВРЕМЕНИ, ПОДЕЛИТЬСЯ СВОИМ ОПЫТОМ.

Добрый день. Отличный урок, да и не только этот. Спасибо большое, очень много узнал. Хотелось бы еще проконсультироваться: А как может быть решение у следующей задачи(приведу значения по примеру данной статьи):Имеется тот же список, что и в пункте шаг 1. Как можно сделать нижеприведенную таблицу?Рисунок Nokia 8800Рисунок Voxtel W420Рисунок Motorola RAZR V3iNokia 8800Voxtel W420Motorola RAZR V3iВсе наименования добавляются из выпадающего списка и могут меняться.При смене марки меняется и рисунок. Спасибо

Спасибо за статью.Ещё один хороший вариант - ТУТ .

Также можно просто вставить примечание к ячейке - формат примечания - заливка - способы заливки - рисунок.Но это уже не соответствует теме "Выбор фото из выпадающего списка".

3) в меню "Главное => буфер обмена => вставить.." нажимаем на стрелочку, так чтобы выскочило дополнительное меню и выбираем "Как рисунок => вставить связь с рисунком".

Если у кого то ругается на =фото, то внимательно смотрите видео про четвертый шага именно про написание вот этой строчки=СМЕЩ(Лист1!$B$2;ПОИСКПОЗ(Выбор;Фотоальбом;0)-1;0;1;1)и тогда все будет хорошо

Автору огромное спасибо за шикарные уроки.

Для того , чтобы строка формул была активная,нужно проделать следующую операцию: (для Excel -2007).

1)Выделяем ячейку с картинкой.(не картинку, а ячейку!) 2) Копируем ячейку с помощью команды "КОПИРОВАТЬ".3) Выделяем нужную ячейку. 4)Заходим во вкладку"ВСТАВИТЬ".5)В раскрывающемся списке выбираем "КАК РИСУНОК" и выбираем команду "ВСТАВИТЬ СВЯЗЬ С РИСУНКОМ" . Проверил все работает.

Здравствуйте, а можно ли как-то сделать, чтобы при фильтрации таблицы лишние картинки тоже фильтровались, а не накладывались кучей?

Здравствуйте, тема очень интересная. Но я считаю excel не лучшее место для хранения фото.Можно ли сделать, что-то подобное но с подтягиванием фото из каталога (папки) формата "C:\Users\Admin\Desktop\Фото"? Пускай и средствами VBA .Например: Имена файлов вытягиваются в массив, которые далее используются для выпадающего списка. Ну и в другой ячейке само фото.

Думаю это было бы очень интересно, как для изучения конкретной темы, так и для VBA в целом.

Урра, заработала. Исключительно замечательно:)

© Николай Павлов, Planetaexcel, 2006-2022 info@planetaexcel.ru

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

ИП Павлов Николай Владимирович ИНН 633015842586 ОГРН 310633031600071

📎📎📎📎📎📎📎📎📎📎