• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Определение Имени Картинки В Макросе

  • Автор темы ЧИА
  • Дата начала
Ч

ЧИА

На листе имеется несколько картинок. Всем назначен один Макрос.
Как в Макросе определить - какая картинка его запустила. Т.е. узнать ее (картинки) индекс или имя?
 
A

alex77755

На листе имеется несколько картинок. Всем назначен один Макрос.
Как в Макросе определить - какая картинка его запустила. Т.е. узнать ее (картинки) индекс или имя?
Загнать их всех в массив.
И макрос будет один и индекс появится
 
Ч

ЧИА

Не понял идею с массивом.
Когда я нажимаю на картинку, запускается назначенный ему макрос.
И уже управление внутри макроса. Для меня основная проблема - это,
как определить, что макрос запустился картинкой №5 или "Picture 5".
Возможно, есть какие-то параметры, определяющие индекс или имя картинки, которые могут быть доступны внутри макроса
 
A

alex77755

Пример массива картинок на листе. Разбирайся

Добавлено: Архив прицепил, но что-то не видно его?

Добавлено:
Пример массива картинок на листе. Разбирайся

Добавлено: Архив прицепил, но что-то не видно его?


Добавлено: если на листе есть не только картинки, то во избежании ошибок, добавить проверку:

Код:
Sub Add_Massiv()
t = 1
For Each S In Лист1.OLEObjects
If TypeName(S.Object) = "Image" Then
ReDim Preserve P(1 To t)
Set P(t).PC = S.Object
t = t + 1
End If
Next
End Sub
 

Вложения

  • массив_картинок.rar
    587,7 КБ · Просмотры: 147
Ч

ЧИА

Совершенно замечательное решение!
И подбор картинок в КОН.
Боюсь показаться неблагодарным, но когда я писал "картинки", то имел ввиду не элементы управления, а рисунки, вставленные из файлов, например, в формате .JPG. И им назначается ОДИН Макрос через контекстное меню - Назначить макрос...
EXCEL-файл формируется программно с большим количеством картинок (рисунков).
И позвольте еще раз задать вопрос:
как определить, что макрос запустился картинкой №5 или "Picture 5" (не Image)? И уже анализируя индекс или имя делать какие-то выводы.
 
Ч

ЧИА

Большое спасибо!
Именно это мне и надо было
 
Мы в соцсетях:

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