Заполнение массива элементами можно производить следующими способами

Заполнение массива элементами можно производить следующими способами

Массив есть множество однотипных элементов, имеющих одинаковое имя и отличающихся своим положением.

Положение элемента в масиве задаётся идексом.

Статические массивы.

Dim Имя(N) As <тип элементов >    ,где N     -максимальное значение индекса

Dim Имя(N,M) As <тип данных >    ,где N –максималььное количество строк,

M – максимальное количество столбцов

 

 

Dim A(12) As Integer

или   Static A(12) As Integer

определяет элементы A(0), A(1), A(2)……..A(12)

Dim B(3,3) As Integer

определяет элементы B(0,0), B(0,1), B(0,2), B(0,3),B(1,0), B(1,1) …. B(3,3)

Dim C(1 To 10)

определяет элементы C(0), C (1), C (2)…….. C (12)

 

Dim D(1 To 3, 1 To 3)

определяет элементы D(1,1), B(1,2), B(1,3), B(2,1),B(2,2), …. B(3,3)

 

 

Заполнение массива элементами можно производить следующими способами

 

1 Оператором присваивания

 

Dim Фрукты(3) As String

‘ Здесь 3 – максимальный номер элемента

Фрукты(0)=“Яблоки”

Фрукты(1)=“Груши”

Фрукты(2)=“Ананасы”

Фрукты(3)=“Персики”

 

 

2 В цикле

 

Dim I As Integer

Dim N(3) As Integer

Randomize

 

For I= 0 To 3

 

N(I)=Int(Rnd*10+1)

Next I

 

 

Динамические массивы.

Бывает так, что заранее точный размер массива неизвестен, и необходимо иметь возможность изменять его размер во время исполнения программы. Чтобы изменить размер массива динамически, используется оператор  Redim

По умолчанию, когда изменяется размер массива, все его элементы удаляются. Если необходимо оставить текущие значения элементов массива, то нужно использовать ключевое слово  Preserve  с оператором  Redim, что и сделано в этом примере.

 

Dim Фрукты () As String

Redim Фрукты (3)

Фрукты(0)=“Яблоки”

Фрукты(1)=“Груши”

Фрукты(2)=“Ананасы”

Фрукты(3)=“Персики”

Redim  Preserve Фрукты (4)

Фрукты (4)=“Сливы”

Для освобождения памяти, занимаемой динамическим массивом, можно использовать инструкцию  Erase

 

Заполнение динамического массива с помощью функции Array:

 

Dim Фрукты(3) As String

 

‘ Здесь 3 – максимальный номер элемента

Фрукты=Array(“Яблоки”, “Груши”, “Сливы”, “Ананасы”)


Задание

 

Создайте в Excel форму

 

 

Private Sub CmdButton2_Click()

With LstBox1

‘Заполнение списка прм помощи массива

.List = Array(1, 5, 6, 3, 13, 14, 8, 7, 2, 9, 4, 10, 15, 11, 12)

‘Ширина колонки

.ColumnWidths = 1

‘Режим выбора нескольких элементов из списка

.MultiSelect = fmMultiSelectMulti

End With

End Sub

 

‘поиск максимума

Private Sub CmdButton3_Click()

Dim I As Integer, Max As Integer

‘свойство List(Index)возвращает или задаёт

‘элемент списка с указанным индексом

‘первый элемент имеет индеск 0

Max = LstBox1.List(0)

‘свойство ListCount

‘возвращает число элементов списка ListBox

For I = 1 To LstBox1.ListCount – 1

If Max < LstBox1.List(I) Then Max = LstBox1.List(I)

Next I

TxtBox1.Value = Max

End Sub

 

‘сумма элементов списка

Private Sub CmdButton4_Click()

Dim I As Integer, Sum As Integer

Sum = 0

For I = 0 To LstBox1.ListCount –

Комментарии к записи Заполнение массива элементами можно производить следующими способами отключены

Рубрика: Программирование

Обсуждение закрыто.