Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Обявить массив видимый из другой формы / 17 сообщений из 17, страница 1 из 1
20.11.2003, 19:14
    #32330707
artemov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Хочу объявть массив видимый из другой формы
Public num(10) - не прокатывает
Private num(10)- проходит
А надо public. Вчем нюанс?
...
Рейтинг: 0 / 0
20.11.2003, 19:20
    #32330715
sasha_1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
глобальные переменные объявляются в модулях!
global num(10)
будет видно отовсюду.
...
Рейтинг: 0 / 0
20.11.2003, 19:20
    #32330716
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Надеюсь, это не внутри процедуры?
...
Рейтинг: 0 / 0
20.11.2003, 20:28
    #32330764
artemov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
нет
...
Рейтинг: 0 / 0
20.11.2003, 20:33
    #32330766
Нуф-нуф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
... , а если надо чтобы массив был именно в форме, и чтобы видно его было из других форм, то объявить его надо так:
Public num(10)
а "видеть" так:
Forms("ИмяФормыСМассивом").num(Index)
кажется... Да! При этом форма с массивом должна быть открыта! :)
//Драсте!...
...
Рейтинг: 0 / 0
20.11.2003, 20:34
    #32330767
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Да, и у меня кричит. Но кричит, надо отдать должное, подробно и обстоятельно. Значит, надо этот запрет обходить. Например, так:

Private num_(10)

Public Property Get num(i As Integer) As Variant
num = num_(i)
End Property

Public Property Let num(i As Integer, ByVal vNewValue As Variant)
num_(i) = vNewValue
End Property
...
Рейтинг: 0 / 0
20.11.2003, 20:35
    #32330769
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Нуф, привет тебе. Все, что ты сказал, правильно, но публичный (или глобальный) массив в форме - такого Аксесс, как оказалось, не ест.
...
Рейтинг: 0 / 0
20.11.2003, 20:46
    #32330779
Нуф-нуф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Привет, Володь. Ну подстава тогда :) Написал по общим правилам без реальной проверки...
...
Рейтинг: 0 / 0
21.11.2003, 01:53
    #32330831
SiriusB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
никаких проблем

в модуле обьявляете массив

Public MV(0 To 100) As Variant

Public Function MVR(i As Integer) As Variant
MVR = MV(i)
End Function

дальше работать не с елементами массива а с функцией MVR(i)

я уже об етом раз писал
...
Рейтинг: 0 / 0
21.11.2003, 01:58
    #32330832
SiriusB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
такая функция (массив) будет видна не только в форме, но даже внутри SQL

изменились параметры запроса

а Вы, рр-р-ас и переприсвоили переменным массива новые значения, даже не надо в SQL лазать и что-то там редактировать

и вообще, у всех моих прогах на SQL-ли создана таблица

IDsql SQL

1 select
2 select
3 insert into
и т. д.

и т. д.

только переводи в тектовую строку DlookUр- ом и используй где угодно :-)
...
Рейтинг: 0 / 0
21.11.2003, 22:40
    #32331992
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
2 SiriusB:

Если массив уже Public, то нет никакого проку от функции.
...
Рейтинг: 0 / 0
22.11.2003, 00:20
    #32332015
SiriusB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
КАК ЕТО НЕТ !!!

как же Вы, уважаемый, будете "втыкать" глобальные переменные в SQL-выражение ???

ну конечно, будете рассекать строку

"Select "& MV(1)& " as B1"& MV(2) & ....

мягко скажу, непрактично, все равно что правой рукой чесать левое ухо.

А функция - она и в африке функция

можете в поле формы написать =MVR(12) и будет выдано соотвествующее значение, да и не только в форме - везде !!!
...
Рейтинг: 0 / 0
22.11.2003, 00:24
    #32332017
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Про SQL - да, согласен. Но тогда как-то неэстетично. И функция, и массив оба Public, и получается, что они дублируют друг друга. Эстетичнее было бы так, как я предложил в посте от 20 ноя 03, 20:34.
...
Рейтинг: 0 / 0
22.11.2003, 00:45
    #32332022
SiriusB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Ну и что, что больше ста !!!
лишь бы кровь была густа,
говорят, любви покорны,
ВСЕ буквално возраста !!!


зато можно смело копировать SQL-выражение, хоть в строку, хоть в источник данных для формы или списка, хоть тупо вставить в запрос


ПРИ ЕТОМ НЕ НАДО ДУМАТЬ, ЧТО ПОЛЕЗУТ КАКИЕ-НИБУДЬ ГЛЮКИ

короче - автоматизация РАЗРАБОТКИ приложений
...
Рейтинг: 0 / 0
22.11.2003, 11:04
    #32332076
artemov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
Private num_(10)

Public Property Get num(i As Integer) As Variant
num = num_(i)
End Property

Public Property Let num(i As Integer, ByVal vNewValue As Variant)
num_(i) = vNewValue
End Property

Ура работает!

такая функция (массив) будет видна не только в форме, но даже внутри SQL

Полагаю верно для БД а не для АDP(работаю в ADP)

и
Public MV(0 To 100) As Variant
обявлю в модуле все равно не видно
может надо както обратится по особому?
...
Рейтинг: 0 / 0
22.11.2003, 16:03
    #32332167
SiriusB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
послал Вам живой пример

чего не сделаешь для хорошнго человека :?)
...
Рейтинг: 0 / 0
22.11.2003, 17:05
    #32332186
SiriusB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обявить массив видимый из другой формы
сервак прислал ответ о том что такого "мыла" не существует

так что будете без живого примера

но все равно описанный мною метод работает уже много лет и очень успешно
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Обявить массив видимый из другой формы / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]