Выдается ошибка функцией LoadPicture (VBA ACCESS)

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
Islan
Сообщения: 3
Зарегистрирован: 20 мар 2018, 09:54

Пожалуйста, помогите разобраться.
В программе на VBA ACCESS в следующем коде:

Dim ImLst As ImageList
ImLst.ListImages.Add 1, 1, StdFunctions.LoadPicture("D:\ГРАНУЛятор\FlagRed.bmp")

выдается ошибка Object variable or With block variable not set.

(Та же ошибка выдается и при опускании StdFunctions). Файл рисунка D:\ГРАНУЛятор\FlagRed.bmp присутствует и другими программами открывается.
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

Напишите так и протестируйте эту функцию отдельно, т.е.

Код: Выделить всё

Set p = LoadPicture("D:\ГРАНУЛятор\FlagRed.bmp")
Если прокатит, значит проблема не в ней.
Islan
Сообщения: 3
Зарегистрирован: 20 мар 2018, 09:54

pashulka писал(а):Напишите так и протестируйте эту функцию отдельно, т.е.

Код: Выделить всё

Set p = LoadPicture("D:\ГРАНУЛятор\FlagRed.bmp")
Если прокатит, значит проблема не в ней.

Да, так сработало. Но тогда не понимаю, что вызывает ошибку.
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

Вольный перевод ошибки гласит, что Вы обращаетесь к несуществующему об'екту. И это правда :)

Код: Выделить всё

Dim ImLst As ImageList
Set ImLst = ИмяФормы.ИмяОбъекта

ImLst.ListImages.Add 1, "key1", StdFunctions.LoadPicture("D:\ГРАНУЛятор\ FlagRed.bmp")
Вторая строка - есть псевдокод, просто не помню :( как в Access идёт обращение к элементам управления.
Islan
Сообщения: 3
Зарегистрирован: 20 мар 2018, 09:54

pashulka писал(а):Вольный перевод ошибки гласит, что Вы обращаетесь к несуществующему об'екту. И это правда :)

Код: Выделить всё

Dim ImLst As ImageList
Set ImLst = ИмяФормы.ИмяОбъекта

ImLst.ListImages.Add 1, "key1", StdFunctions.LoadPicture("D:\ГРАНУЛятор\ FlagRed.bmp")
Вторая строка - есть псевдокод, просто не помню :( как в Access идёт обращение к элементам управления.
Болльшое спасибо, разобрался.
Ответить