Страницы: 1
RSS
Загрузка изображения в форму
 
Доброго времени суток товарищи!

До последнего боролся с этой на мой взгляд простой проблемой
Файл загружать не вижу смысла потому что и так будет ясно суть проблемы
Вообщем создал кнопку на листе , вызывается форма , на форме Окно Image  ,кнопка , текстбокс , при нажатии на кнопку  открывается окно выбора файла (проводник) , выбираем файл, жмем ок , путь файла выписывается в текстбокс , далее процедура LoadPicture должна забирать этот путь из текстбокса и загружать картинку в окно Image
Код
Private Sub CommandButton2_Click()
    UserForm1.TextBox3.Value = Chr$(34) & Application.GetOpenFilename & Chr$(34)
    UserForm1.Image1.Picture = LoadPicture("TextBox3.Value")
End Sub

Как только не извращался с этим кодом , выдает разные ошибки , если напрямую вписывать путь который вставляется в текстбокс то картинка грузится , а как начинаю пытаться забрать путь из бокса так всё , крах, Runtime Error такой сякой

Подскажите пожалуйста как корректно забрать путь из бокса чтобы загрузилась картинка всё таки
Спасибо  
 
я так подозреваю, что "косяк" - вот тут:
Код
UserForm1.Image1.Picture = LoadPicture("TextBox3.Value") 

(приготовьтесь, сейчас будем карму улучшать)
Повторяйте за мной: "В программе, все то, что в кавычках - является СТРОКОВЫМ ЗНАЧЕНИЕМ" :)
Еще повторяйте: "Программа - тупая, если ей пальцем не показать, она не понимает, где расположен элемент"
Достигаем просветления и пробуем такое:
Код
UserForm1.Image1.Picture = LoadPicture(UserForm1.TextBox3.Value)


Получилось?
Кому решение нужно - тот пример и рисует.
 
Я уж обрадовался и вспомнил тонкости Vba , но нет , вставил , пишет Runtime Error 75 Path file access error ( Ети её мать !!!  
 
Всё получилось !!! Премного благодарен за напутствие ! Стёр  Chr$(34) & в первой строке  
 
агх.....
А picture с таким Path - есть ваще? И он эта, того... full?

Ибо написано в справке, коя есть опора и надежда наша в дни затыка:
Код
Specifies the bitmap to display on an object.

Syntax

object.Picture = LoadPicture( pathname )

The Picture property syntax has these parts:

Part Description 
object Required. A valid object. 
pathname Required. The full path to a picture file. 


З.ы.
Податься в гуры, что ли... :)
Удачи!
Изменено: Пытливый - 25.04.2016 17:47:58
Кому решение нужно - тот пример и рисует.
 
А как задать динамический адрес на картинку , если например книга находится в той же папке где и рисунки , я например скидываю эту папку на флешку и если ссылки на картинки останутся такими,  то на другом компьютере они не откроются , необходимо чтоб открылись , как в таком случае получить ссылку на картинку и установить папку с файлом эксель корневой ?

Спасибо    
 
Посмотрите такой вариант:
http://excelvba.ru/programmes/ShowPictures

PS: к сведению модераторов, это ссылка на бесплатное решение с моего сайта
не надо снова жаловаться на меня владельцу сайта
 
Код
UserForm1.TextBox1.Value = Application.GetOpenFilename
UserForm1.Image1.Picture = LoadPicture((TextBox1.Text))

Chr$(34) Это ставить ковычки
они не нужны
Изменено: Максим Иванов - 02.05.2017 14:52:16
Страницы: 1
Читают тему
Наверх