06.01.2015 Views

Введение в программирование на VBA - eDrive

Введение в программирование на VBA - eDrive

Введение в программирование на VBA - eDrive

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

49<br />

MsgBox "НОД= " & a<br />

End Sub<br />

Соста<strong>в</strong>ные типы данных<br />

Для группо<strong>в</strong>ого предста<strong>в</strong>ления и обработки однотипных данных<br />

используются соста<strong>в</strong>ные типы — масси<strong>в</strong>ы. В масси<strong>в</strong>е под одним именем<br />

хранятся пронумеро<strong>в</strong>анные однотипные данные. Их число определяется при<br />

объя<strong>в</strong>лении. Синтаксис объя<strong>в</strong>ления масси<strong>в</strong>а:<br />

[операторХранения] имяМасси<strong>в</strong>а ( Индекс1[To Индекс2][,…] ) [As Тип]<br />

За именем масси<strong>в</strong>а следует пер<strong>в</strong>ый, <strong>в</strong>торой, а иногда и более старший индекс<br />

<strong>в</strong> круглых скобках. Индексом <strong>в</strong> языке Visual Basic <strong>на</strong>зы<strong>в</strong>ается номер<br />

последнего чле<strong>на</strong> масси<strong>в</strong>а. Произ<strong>в</strong>едение у<strong>в</strong>еличенных <strong>на</strong> единицу индексо<strong>в</strong><br />

определяет размер, то есть число члено<strong>в</strong> масси<strong>в</strong>а, а число индексо<strong>в</strong><br />

соот<strong>в</strong>етст<strong>в</strong>ует его размерности.<br />

Если одномерный масси<strong>в</strong> передается <strong>в</strong> процедуру или функцию <strong>в</strong><br />

качест<strong>в</strong>е аргумента, з<strong>на</strong>чения его индекса не указы<strong>в</strong>аются. При этом<br />

объя<strong>в</strong>ление функции может <strong>в</strong>ыглядеть, <strong>на</strong>пример, так:<br />

[операторХранения] Function имяФункции (Масси<strong>в</strong> () [As Тип],…) [As Тип]<br />

с таким <strong>в</strong>ызо<strong>в</strong>ом:<br />

MsgBox "Среднее з<strong>на</strong>чение = " & имяФункции (x ()).<br />

Размер и размерность масси<strong>в</strong>а должны быть определены до того, как<br />

он будет использо<strong>в</strong>ан. Если размер масси<strong>в</strong>а заранее из<strong>в</strong>естен, его <strong>на</strong>зы<strong>в</strong>ают<br />

статическим масси<strong>в</strong>ом.<br />

Масси<strong>в</strong>ы индексируются с нуля.<br />

Имя каждого чле<strong>на</strong> масси<strong>в</strong>а состоит из имени масси<strong>в</strong>а и индексо<strong>в</strong> <strong>в</strong><br />

круглых скобках, <strong>на</strong>пример, размер (0) — нуле<strong>в</strong>ой член одномерного<br />

масси<strong>в</strong>а, spaceArray (2,3) — (2,3)-ий член д<strong>в</strong>ухмерного масси<strong>в</strong>а.<br />

Примеры<br />

Sub ДелениеПочтиПоро<strong>в</strong>ну ()<br />

‘ Способ деления целого числа <strong>на</strong> примерно ра<strong>в</strong>ные целые части<br />

‘ с использо<strong>в</strong>анием операторо<strong>в</strong> деления <strong>на</strong>цело и остатка<br />

Dim <strong>в</strong><strong>в</strong>едено, остаток, доля (2) As Integer<br />

<strong>в</strong><strong>в</strong>едено = InputBox ("В<strong>в</strong>едите число")<br />

доля (0) = <strong>в</strong><strong>в</strong>едено \ 3: доля (1) = доля (0): доля (2) = доля (0)<br />

остаток = <strong>в</strong><strong>в</strong>едено Mod 3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!