У меня есть лист Excel, и я хочу создать несколько макросов, используя VBA.

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

Первая проблема, с которой я сталкиваюсь, это то, что ... Я не знаю, как определить идентичность изображения, которое будет изменено в VBA! Я не вижу способа извлечь имя или какой-либо идентификатор изображения, чтобы использовать его в своем коде. Есть идеи?

1 ответ1

0

Есть 2 способа решения этой проблемы.

  1. Создайте форму со всеми элементами управления, включая изображение (это будет самый простой способ)

  2. Поместите элемент управления изображением непосредственно в таблицу исключений вместе с другими элементами управления (это подвержено пользователям, вызывающим удаление содержимого.

Если вы выберете вариант 1 «Из VBA», создайте новую форму и нарисуйте там элементы управления. Затем вам нужно создать небольшую общедоступную подпрограмму с надписью: Form1.show (где Form1 - это имя вашей формы). Если вы выберете вариант 2, вам сначала нужно включить соответствующую панель инструментов в Excel.

Доступны 2 панели инструментов формы. Хотя оба работают, с одним легче работать, потому что он выглядит и ощущается точно так же, как в форме VBA.

Как только вы поместите элемент управления изображения с помощью этой панели инструментов и перейдете в режим разработки, вы можете щелкнуть элемент управления изображением и в свойствах присвоить ему имя. Затем это имя можно использовать из макроса VBA с помощью: application.sheet(1). name of image .image = .... или что вы хотите с ним делать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .