• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

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

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

ЧИА

На листе имеется несколько картинок. Всем назначен один Макрос.
Как в Макросе определить - какая картинка его запустила. Т.е. узнать ее (картинки) индекс или имя?
 
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 КБ · Просмотры: 145
Ч

ЧИА

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

ЧИА

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

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