Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как вставить изображение, находящееся на листе, в UserForm - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как вставить изображение, находящееся на листе, в UserForm (Макросы/Sub)
Как вставить изображение, находящееся на листе, в UserForm
ZetMenChavo Дата: Пятница, 13.05.2022, 19:29 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 159
Репутация: 7 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте. Суть в следующем, на Userform создается бокс Image где в процессе использования картинка должна будет меняться в зависимости от вводных данных.
Первый способ который я нашёл это загрузка картинки из указанной папки каждый раз когда используется форма
[vba]
Код
Me.Image1.Picture = LoadPicture("Адрес к файлу")
[/vba]
Минус такого способа в том, что папка с файлами должны оставаться в одном месте, а при переносе на другой ПК её вовсе можно забыть скопировать.

Второй вариант, вставить все картинки в Image через окно Properties, команду Picture, и спрятать за границей формы.
Ссылка удалена администрацией. Причина: Нарушение правил форума п.3
Картинки тогда сохраняются в форме и надобность во внешних файлах отпадает, можно просто прописать макросом копировать картинки из спрятанных Image в рабочие.
Но когда картинок много, то выходит нужно с начала каждую отдельно загрузить в Image, затем переименовать его чтоб упрастить поиск нужной картинки, что вылевается в очень долгий процесс.

И вот тут возникает вопрос: есть ли способ загружать в форму картинки, сохранённые на листах?
Ссылка удалена администрацией. Причина: Нарушение правил форума п.3


Сообщение отредактировал ZetMenChavo - Пятница, 13.05.2022, 19:30
 
Ответить
СообщениеЗдравствуйте. Суть в следующем, на Userform создается бокс Image где в процессе использования картинка должна будет меняться в зависимости от вводных данных.
Первый способ который я нашёл это загрузка картинки из указанной папки каждый раз когда используется форма
[vba]
Код
Me.Image1.Picture = LoadPicture("Адрес к файлу")
[/vba]
Минус такого способа в том, что папка с файлами должны оставаться в одном месте, а при переносе на другой ПК её вовсе можно забыть скопировать.

Второй вариант, вставить все картинки в Image через окно Properties, команду Picture, и спрятать за границей формы.
Ссылка удалена администрацией. Причина: Нарушение правил форума п.3
Картинки тогда сохраняются в форме и надобность во внешних файлах отпадает, можно просто прописать макросом копировать картинки из спрятанных Image в рабочие.
Но когда картинок много, то выходит нужно с начала каждую отдельно загрузить в Image, затем переименовать его чтоб упрастить поиск нужной картинки, что вылевается в очень долгий процесс.

И вот тут возникает вопрос: есть ли способ загружать в форму картинки, сохранённые на листах?
Ссылка удалена администрацией. Причина: Нарушение правил форума п.3

Автор - ZetMenChavo
Дата добавления - 13.05.2022 в 19:29
Nic70y Дата: Суббота, 14.05.2022, 08:32 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 8702
Репутация: 2258 ±
Замечаний: 0% ±

Excel 2010


ЮMoney 41001841029809
 
Ответить
Сообщениеhttp://www.excelworld.ru/forum/12-48119-322998-16-1644049656

Автор - Nic70y
Дата добавления - 14.05.2022 в 08:32
ZetMenChavo Дата: Суббота, 14.05.2022, 17:18 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 159
Репутация: 7 ±
Замечаний: 0% ±

Excel 2010
Nic70y, Спасибо работает) Один вопрос по тому макросу. Какой тип данных у переменной "u"? Я у себя Variant выставил чтоб работала, но хотелось бы точно знать что ей присваивать.
 
Ответить
СообщениеNic70y, Спасибо работает) Один вопрос по тому макросу. Какой тип данных у переменной "u"? Я у себя Variant выставил чтоб работала, но хотелось бы точно знать что ей присваивать.

Автор - ZetMenChavo
Дата добавления - 14.05.2022 в 17:18
Nic70y Дата: Суббота, 14.05.2022, 18:39 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 8702
Репутация: 2258 ±
Замечаний: 0% ±

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


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

Автор - Nic70y
Дата добавления - 14.05.2022 в 18:39
ZetMenChavo Дата: Суббота, 14.05.2022, 19:15 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 159
Репутация: 7 ±
Замечаний: 0% ±

Excel 2010
Цитата
если конечно для вас это важно

Nic70y, Я ещё только в начале освоения возможностей VBA, названия и свойства конкретных операторов узнавал через инет, по мере того как возникала необходимость в них для конкретных задач Так что я много чего ещё не знаю.
Знание того как правильно объявлять разные переменные, если не в этом коде то в будущих, может пригодиться. А пока попробую разобраться как ваш код реализовать для нескольких картинок.
Если получиться, и не забуду про эту тему что я создал, то скину сюда код, чтоб другим интересующимся людям тоже пригодился)
 
Ответить
Сообщение
Цитата
если конечно для вас это важно

Nic70y, Я ещё только в начале освоения возможностей VBA, названия и свойства конкретных операторов узнавал через инет, по мере того как возникала необходимость в них для конкретных задач Так что я много чего ещё не знаю.
Знание того как правильно объявлять разные переменные, если не в этом коде то в будущих, может пригодиться. А пока попробую разобраться как ваш код реализовать для нескольких картинок.
Если получиться, и не забуду про эту тему что я создал, то скину сюда код, чтоб другим интересующимся людям тоже пригодился)

Автор - ZetMenChavo
Дата добавления - 14.05.2022 в 19:15
Апострофф Дата: Воскресенье, 15.05.2022, 21:24 | Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 444
Репутация: 122 ±
Замечаний: 0% ±

Excel 1997
Какой тип данных у переменной "u"?

Пишите[vba]
Код
Dim u As Worksheet
[/vba]
 
Ответить
Сообщение
Какой тип данных у переменной "u"?

Пишите[vba]
Код
Dim u As Worksheet
[/vba]

Автор - Апострофф
Дата добавления - 15.05.2022 в 21:24
ZetMenChavo Дата: Воскресенье, 15.05.2022, 22:21 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 159
Репутация: 7 ±
Замечаний: 0% ±

Excel 2010
Апострофф, Спасиб)
 
Ответить
СообщениеАпострофф, Спасиб)

Автор - ZetMenChavo
Дата добавления - 15.05.2022 в 22:21
Nic70y Дата: Понедельник, 16.05.2022, 07:48 | Сообщение № 8
Группа: Друзья
Ранг: Экселист
Сообщений: 8702
Репутация: 2258 ±
Замечаний: 0% ±

Excel 2010
для нескольких картинок
[vba]
Код
Sheets("Ëèñò2").Pictures("Picture 3").Copy
[/vba]при изменении условия(ий) изменить Picture 3 на нужное.
если б был прикреплен файл с формой, было бы проще понять.
ну не настаиваю, возможно вам интересно решить самому:
Если получиться, и не забуду про эту тему что я создал, то скину сюда код


ЮMoney 41001841029809
 
Ответить
Сообщение
для нескольких картинок
[vba]
Код
Sheets("Ëèñò2").Pictures("Picture 3").Copy
[/vba]при изменении условия(ий) изменить Picture 3 на нужное.
если б был прикреплен файл с формой, было бы проще понять.
ну не настаиваю, возможно вам интересно решить самому:
Если получиться, и не забуду про эту тему что я создал, то скину сюда код

Автор - Nic70y
Дата добавления - 16.05.2022 в 07:48
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как вставить изображение, находящееся на листе, в UserForm (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!