powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Передача массива в процедуру
6 сообщений из 6, страница 1 из 1
Передача массива в процедуру
    #32268670
bav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, не подскажите ,как передать массив в процедуру.
...
Рейтинг: 0 / 0
Передача массива в процедуру
    #32269191
Shkurenko Alexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
90% вопросов отпадают, если читая HELP еще и немного думать

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Sub Test()
    Dim ai%( 3 )
    Call TestArray(ai)
    Call TestArray(Array( "1 - 1 ",  "1 - 2 ",  "1 - 3 ",  "2 - 1 "))
End Sub

Sub TestArray(ByVal a As Variant)
    Dim i&, qty&
' здесь должна быть проверка а - массив?  инициализирован?
    qty = UBound(a)
    For i =  0  To qty
        Debug.Print a(i)
    Next
End Sub
...
Рейтинг: 0 / 0
Передача массива в процедуру
    #32269287
bav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо
...
Рейтинг: 0 / 0
Передача массива в процедуру
    #32269875
Фотография mahoune
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А не расскажете что означеают выделенные символы:
Sub Test()
Dim ai%(3)
Call TestArray(ai)
Call TestArray(Array("1-1", "1-2", "1-3", "2-1"))
End Sub

Sub TestArray(ByVal a As Variant)
Dim i&, qty&
' здесь должна быть проверка а - массив? инициализирован?
qty = UBound(a)
For i = 0 To qty
Debug.Print a(i)
Next
End Sub


И как сделать проверку, что массив инициализирован. Потому как что это массив понятно. Использовать TypeName()

mahoune
...
Рейтинг: 0 / 0
Передача массива в процедуру
    #32270912
Shkurenko Alexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А не расскажете что означеают выделенные символы:
Dim ai%(3)
эквивалентно
Dim ai(3) As Integer
т.е. % - явлвяется символом декларации типа Intger, & - типа Long ...
Подробнее можно посмотреть в HELP'е раздел "Data Types"

И как сделать проверку, что массив инициализирован.
К сожалению, как сделать проверку штатными средствами я не знаю, а пока пользуюсь объектом Err.:-(
пример:
Код: plaintext
1.
2.
3.
4.
    On Error Resume Next
    qty = UBound(a)
    If Err <>  0  Then Debug.Print  "Error. Array isn't initialized." 
    Err.Clear
    On Error GoTo  0 

Но когда-нибудь, соберусь с силами и расковыряю этот тип Variant
...
Рейтинг: 0 / 0
Передача массива в процедуру
    #32271429
Фотография mahoune
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сенкс!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Передача массива в процедуру
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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