Wariant VBA

Typ danych wariantu Excel VBA

Variant Data Type w VBA to uniwersalny typ danych, który może zawierać dowolny typ danych, ale przy przypisywaniu typu danych musimy użyć słowa „Variant”.

Wszyscy wiemy, jak ważne są zmienne w projektach VBA. Po zadeklarowaniu zmiennej musimy przypisać typ danych do zadeklarowanych zmiennych. Przypisanie typu danych w VBA zależy od tego, jakie dane musimy przypisać do zadeklarowanych zmiennych.

Na przykład spójrz na poniższy kod.

W powyższym kodzie zadeklarowałem zmienną jako „IntegerNumber” i przypisałem typ danych jako „Integer” .

Przed przypisaniem typu danych do zmiennej powinienem zdawać sobie sprawę z ograniczeń tej zmiennej. Ponieważ przypisałem typ danych jako Integer, moja zmienna może przechowywać liczby od -32768 do 32767.

Cokolwiek więcej niż limit typu danych spowoduje błąd. Więc jeśli chcemy przechowywać więcej niż 32767 wartości, musimy przypisać inny typ danych, który może pomieścić więcej niż 32767.

Aby przezwyciężyć to ograniczenie, mamy uniwersalny typ danych „Wariant”. W tym artykule przedstawiono kompletny przewodnik po typie danych Variant.

Jak zadeklarować wariant danych typu?

Możemy zadeklarować wariantowy typ danych jako zwykły typ danych, ale przypisując typ danych musimy użyć słowa „Variant”.

Kod:

 Sub Variant_Example1 () Dim MyNumber As Variant End Sub 

To sprawia, że ​​zmienna działa teraz z każdym rodzajem danych. Możemy przypisać dowolne liczby, ciągi znaków, daty i wiele innych rzeczy.

Poniżej znajduje się demonstracja tego samego.

Kod:

 Sub Variant_Example1 () Dim MonthName As Variant Dim MyDate As Variant Dim MyNumber As Variant Dim MyName As Variant MonthName = "styczeń" MyDate = "24-04-2019" MyNumber = 4563 MyName = "Nazywam się Excel VBA" End Sub 

W powyższym przypisałem zmiennej datę, numer zmiennej, ciąg znaków zmiennej. Tak więc typ danych Variant pozwala nam nie martwić się o to, jakie dane będziemy przechowywać lub przypisywać do nich.

Gdy tylko zadeklarujemy zmienną jako wariant, nie musimy martwić się o nasz typ danych gdzieś w środku projektu podczas kodowania. To sprawia, że ​​zmienna działa elastycznie na nasze potrzeby. Prawdopodobnie jedną zmienną możemy przeprowadzić w całym projekcie.

Wariant VBA nie wymaga wyraźnego sposobu

Ogólna procedura deklarowania zmiennej VBA polega na nadaniu nazwy zmiennej, a następnie przypisaniu jej typu danych. Poniżej znajduje się przykład tego samego.

To jest jawny sposób deklarowania zmiennej. Jednak kiedy deklarujemy typ danych Variant, nie musimy ich jawnie deklarować, a raczej możemy po prostu nazwać zmienną i pominąć część typu danych.

Kod:

 Sub Variant_Example1 () Dim MyNumber End Sub 

W powyższym kodzie nazwałem zmienną jako „MyNumber”, ale po nadaniu nazwy zmiennej nie przypisałem jej żadnego typu danych.

Pominąłem część As [Nazwa typu danych], ponieważ w momencie, w którym zignorujemy część przypisania typu danych, niezmiennie zmienną staje się Variant.

Rzeczy do zapamiętania

Mimo że typ danych „Variant” jest elastyczny w przypadku danych, które zamierzamy przechowywać, nie jest to popularny typ danych. Wygląda dziwnie, ale absolutnie PRAWDA. Chyba że istnieje jakiś konkretny powód, dla którego ludzie powinni unikać używania tego typu danych. Poniżej przedstawiamy kilka powodów, dla których należy unikać korzystania z wersji Variant.

  • Ignoruje wszystkie błędy niezgodności danych.
  • Odmiana typu danych ogranicza nam dostęp do listy IntelliSense.
  • VBA zawsze odgaduje najlepszy możliwy typ danych i odpowiednio je przypisuje.
  • W przypadku limitu typu danych Integer typ danych Variant nie informuje nas o przekroczeniu 32767 granic.