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

Вход

Регистрация

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

 

= Мир MS Excel/Изображение из папки в объекте Image - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Изображение из папки в объекте Image (Макросы/Sub)
Изображение из папки в объекте Image
damask_86ru Дата: Понедельник, 19.10.2015, 14:25 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Всем привет!
У меня стояла такая задача: при вводе каталожного номера в ячейке "D9" отображать в Image1 соответствующее изображение которое расположено в папке "изображение запчастей". Ниже приведен рабочий код модуля листа "wsCatalog".
[vba]
Код
wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
[/vba]
Но проблема в том, что вводимый номер в ячейку "D9" подставляется в код, так как имена изображений в папке соответствуют каталожным номерам, а когда изображение отсутствует вылетает ошибка.

Возможно ли прописать условие, например: если с данным именем изображение отсутствует открыть изображение с именем "пусто"?
 
Ответить
СообщениеВсем привет!
У меня стояла такая задача: при вводе каталожного номера в ячейке "D9" отображать в Image1 соответствующее изображение которое расположено в папке "изображение запчастей". Ниже приведен рабочий код модуля листа "wsCatalog".
[vba]
Код
wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
[/vba]
Но проблема в том, что вводимый номер в ячейку "D9" подставляется в код, так как имена изображений в папке соответствуют каталожным номерам, а когда изображение отсутствует вылетает ошибка.

Возможно ли прописать условие, например: если с данным именем изображение отсутствует открыть изображение с именем "пусто"?

Автор - damask_86ru
Дата добавления - 19.10.2015 в 14:25
SLAVICK Дата: Понедельник, 19.10.2015, 14:38 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Например так
[vba]
Код
If Dir("E:\изображения запчастей\" & [D9] & ".jpg") = "" Then wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
[/vba]


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеНапример так
[vba]
Код
If Dir("E:\изображения запчастей\" & [D9] & ".jpg") = "" Then wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
[/vba]

Автор - SLAVICK
Дата добавления - 19.10.2015 в 14:38
damask_86ru Дата: Понедельник, 19.10.2015, 15:26 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
SLAVICK, у меня не получается.
Пробовал, так:
[vba]
Код
wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
If Dir("E:\изображения запчастей\" & [D9] & ".jpg") = "" Then wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
[/vba]
 
Ответить
СообщениеSLAVICK, у меня не получается.
Пробовал, так:
[vba]
Код
wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
If Dir("E:\изображения запчастей\" & [D9] & ".jpg") = "" Then wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
[/vba]

Автор - damask_86ru
Дата добавления - 19.10.2015 в 15:26
Manyasha Дата: Понедельник, 19.10.2015, 15:44 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
damask_86ru, так Вы сначала проверьте, а потом загружайте картинку:
[vba]
Код
If Dir("E:\изображения запчастей\" & [D9] & ".jpg") = "" Then
    wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
Else
    wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
End If
[/vba]
или обработку ошибок поставьте, например так:
[vba]
Код
On Error GoTo loadEmpty
wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
loadEmpty:
If Dir("E:\изображения запчастей" & [D9] & ".jpg") = "" Then wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
[/vba]


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеdamask_86ru, так Вы сначала проверьте, а потом загружайте картинку:
[vba]
Код
If Dir("E:\изображения запчастей\" & [D9] & ".jpg") = "" Then
    wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
Else
    wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
End If
[/vba]
или обработку ошибок поставьте, например так:
[vba]
Код
On Error GoTo loadEmpty
wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\" & [D9] & ".jpg")
loadEmpty:
If Dir("E:\изображения запчастей" & [D9] & ".jpg") = "" Then wsCatalog.Image1.Picture = LoadPicture("E:\изображения запчастей\Пусто.jpg")
[/vba]

Автор - Manyasha
Дата добавления - 19.10.2015 в 15:44
damask_86ru Дата: Понедельник, 19.10.2015, 16:14 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Manyasha, SLAVICK, спасибо Вам, помогли!
 
Ответить
СообщениеManyasha, SLAVICK, спасибо Вам, помогли!

Автор - damask_86ru
Дата добавления - 19.10.2015 в 16:14
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Изображение из папки в объекте Image (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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