Найти в Дзене

📌 Событие листа Worksheet.SelectionChange: отображение картинки в комментариях

Оглавление

А вы задумывались о возможности добавления картинки в комментариях?

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

Событие листа Worksheet.SelectionChange: отображение картинки в комментариях
Событие листа Worksheet.SelectionChange: отображение картинки в комментариях

📢 Скачать исходник с примером вы можете в конце статьи 🔽

-3

▶️ Способ 1. Автоматическое добавление с помощью макроса

Исходные данные

Столбец с указанием ссылки в дальнейшем можно скрыть!
Столбец с указанием ссылки в дальнейшем можно скрыть!

🔔 Обратите внимание! В столбце (В) указываем ссылку на изображение которое требуется добавить в комментарий (D:\Путь\Имя файла.расширение)

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

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

Макрос предназначен для добавления путей к изображениям
Макрос предназначен для добавления путей к изображениям

🔔 Важно!

  • Правильно указать имя листа, на который нужно добавить путь к изображениям. Здесь мы используем имя "Лист1", которое нужно заменить на имя вашего листа
  • Правильно указать путь к папке, содержащей изображения. Например: "D:\win.old\ДЗЕН\ДЗЕН_EXCEL\примеры для сайта\Рисунки".
  • В примере задана переменная LastRow со значением 6, т.к. начинаем заполнение с ячейки B6.

Пример макроса для отображение картинки в комментариях

Данный код представляет собой макрос для листа, который обрабатывает событие Worksheet_SelectionChange
Данный код представляет собой макрос для листа, который обрабатывает событие Worksheet_SelectionChange

Когда происходит клик на ячейку в листе, макрос проверяет, находится ли клик в диапазоне "товар":

-7
  • Если клик был внутри диапазона, то вызывается макрос PicturesInComments, который отвечает за вставку примечаний с картинками в ячейки.
  • Если клик был вне диапазона, то макрос скрывает все примечания, установив параметр Application.DisplayCommentIndicator = xlCommentIndicatorOnly.

Таким образом, при клике на ячейку внутри диапазона "товар" появляются примечания с картинками, а при клике вне этого диапазона примечания скрываются.

🔔 Обратите внимание! Для работы этого кода также потребуется макрос PicturesInComments, который отвечает за вставку примечаний с картинками в ячейки диапазона "товар":

Этот макрос можно определить отдельно в вашем модуле или листе.
Этот макрос можно определить отдельно в вашем модуле или листе.

🔘 Логика макроса:

  • Аргумент product представляет собой диапазон ячеек (Me.Range("товар") - рассмотрено выше), в котором необходимо добавить примечания с изображениями.
  • Из диапазона "ссылка" считывает пути к файлам изображений:
-9
  • Очищаем все существующие примечания в диапазоне "товар", чтобы удалить старые изображения.
  • В цикле проходим по каждой ячейке диапазона "ссылка" и добавляем примечания с соответствующими изображениями в ячейки диапазона "товар".
  • При добавлении примечания макрос проверяет, существует ли уже примечание для данной ячейки. Если примечание существует, оно будет использовано, иначе будет создано новое.
  • Устанавливаем видимость примечания в False, чтобы примечания с изображениями не отображались все разом но оставались доступны для просмотра при необходимости:
-10
  • Добавляем в примечание изображение и корректируем его размеры, чтобы изображение выглядело правильно.

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

📝 Результат

Соответствующее примечание будет отображаться только для активной ячейки:

Пример: отображение картинки в комментариях
Пример: отображение картинки в комментариях

⏩ Добавляем улучшения

Аналогично ранее рассмотренным способам:

--->> Событие листа Worksheet.SelectionChange: отображение картинки по наименованию. Часть 2

Воспользуемся сводной таблицей и срезами. И добавим макрос:

-12

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

Пример: отображение картинки в комментариях
Пример: отображение картинки в комментариях

▶️ Способ 2. "Ручная" вставка

Кроме возможности вставки картинки в примечание посредством макроса можно решить данную задачу "вручную". Для этого:

🎯 Готово!

Картинка в примечании
Картинка в примечании
-16
Наша команда очень заинтересована в создании качественного и полезного контента. Поэтому, если Вам понравился этот урок, не забудьте поблагодарить автора лайком 👍. Если у Вас есть вопросы или своё решение, не стесняйтесь оставить комментарий 💬. Нужно решение для другой проблемы? Пожалуйста, напишите свой вопрос в комментариях 💬, и мы обязательно рассмотрим его в ближайшей теме обзора. Мы ценим Вашу обратную связь 💝, так как это помогает нам оценить, насколько данный материал был полезен для Вас
Наша команда очень заинтересована в создании качественного и полезного контента. Поэтому, если Вам понравился этот урок, не забудьте поблагодарить автора лайком 👍. Если у Вас есть вопросы или своё решение, не стесняйтесь оставить комментарий 💬. Нужно решение для другой проблемы? Пожалуйста, напишите свой вопрос в комментариях 💬, и мы обязательно рассмотрим его в ближайшей теме обзора. Мы ценим Вашу обратную связь 💝, так как это помогает нам оценить, насколько данный материал был полезен для Вас

СКАЧАТЬ ПРИМЕР