PoprzedniaWyżejGłównaSpis treściIndex hasełZnajdźBokGora
BokGora

Google
 

Rozkaz ReDim

Instrukcja służy do określania rozmiaru tablicy dynamicznej lub do ponownego przedefiniowania jej wymiarów.

Składnia instrukcji ReDim

ReDim [Preserve] Nazwa (Wymiary) [As Typ] [, Nazwa (Wymiary) [As Typ]]...


Składnia rozkazu ReDim składa się z następujących części:
Preserve opcjonalne słowo kluczowe używane do zachowania danych w istniejącej tablicy, podczas zmiany jej rozmiarów
Nazwa nazwa zmiennej; obowiązuje standardowa konwencja nazywania zmiennych
Wymiary (wymagany) wymiary tablicy, może być zadeklarowanych do 60 różnych wymiarów. Agrument Wymiary składa się z następujących części:
[Dół To] Góra [, [ Dół To ] Góra ] ...
Jeżeli argument Dół jest równy 0, to można go pominąć, jeżeli nie użyto instrukcji Option Base
Typ Argument określający typ zmiennych. Mogą być użyte: Byte, Boolean, Integer, Long, Currency, Single, Double, Decimal, Date, String(dla łańcuchów zmiennej długości) , String*Długość (dla łańcuchów stałej długości), Object, Variant, typy zdefiniowane przez użytkownika, lub typy obiektów. Do odseparowania każdej defniowanej zmiennej używamy wyrażenia As Typ


Można używać instrukcji ReDim wielokrotnie, do zmiany liczby elementów i wymiarów w tablicy. Nie można jednak zadeklarować tablicy z jednym typem danych, a później użyć instrukcji ReDim do zmiany na inny typ danych tablicy, chyba że tablica zawiera typ danych Variant. Jeżeli tablica zawiera dane typu Variant, typ danych elementów tablicy może być zmieniany przy pomocy wyrażenia As Typ, chyba że użyte zostało słowo Preserve, wtedy nie jest dozwolona zmiana typu danych.

Jeżeli użyte zostało słowo Preserve, można zmienić tylko ostatni wymiar tablicy i nie można zmieniać liczby wymiarów tablicy. Na przykład, jeżeli tablica ma tylko jeden wymiar, można zmieniać jego rozmiar, gdyż jest to ostatni i jednocześnie jedyny wymiar. Jeżeli tablica ma dwa lub więcej wymiarów, można zmieniać rozmiar tylko ostatniego wymiaru i zachować zawartość tablicy.
Przykład pokazuje jak można zwiększyć rozmiar ostatniego wymiaru tablicy dynamicznej bez kasowania jakiejkolwiek istniejącej danej zawartej w tablicy.

ReDim X (10, 10, 10)
. . .
ReDim Preserve X (10, 10, 15)

Gdy użyte jest słowo Preserve można zmieniać rozmiar tablicy tylko w górę, zmiana dolnej granicy spowoduje wystąpienie błędu.

Jeżeli stworzona zostanie tablica mniejsza niż była, dane w usuniętych elementach zostaną stracone. Jeżeli tablica zostanie przypisana do procedury przez refernecję, nie można zmieniać jej wymiarów wewnątrz procedury.

Gdy zmienne są incjowane, numeryczne zmienne są ustawiane na 0, łańcuchy zmiennej długości są ustawiane na łańcuch zerowej długości (""), łańcuchy stałej długości są wypełniane zerami. Zmienne Variant są ustawiane na Empty. Każdy element zmiennej typu zdefiniowanego przez użytkownika jest traktowany jakby był osobną zmienną. Zmienne referujące obiekt, muszą być przypisane do istniejącego obiektu przy użyciu instrukcji Set, zanim może być on użyty. Dopóki nie są one przypisane do obiektu, zadeklarowane zmienne obiektu mają wartość Nothing, która oznacza, że nie referują one żadnej konkretnej części obiektu.


na górę strony...


Google
 
Poprzednia | Wyżej | Strona główna | Spis Treści | Index haseł | Opis VB

BokDol
PoprzedniaWyżejGłównaSpis treściIndex hasełZnajdźBokGora
BokGora