Typ danych VBA Int / Integer (zmienna dim)

Liczba całkowita (Int) Typ zmiennej

VBA Int typ danych służy do przechowywania liczb całkowitych (bez wartości dziesiętnych). Jednak, jak zobaczymy poniżej, wartości liczb całkowitych muszą mieścić się w zakresie od -32768 do 32768.

Aby zadeklarować zmienną Int, użyj instrukcji Dim (skrót od Dimension):

1 Dim intA jako liczba całkowita

Następnie, aby przypisać wartość do zmiennej, po prostu użyj znaku równości:

1 intA = 30000

Umieszczenie tego w procedurze wygląda tak:

12345678 SubIntPrzykład()'deklaruj liczbę całkowitą'Dim intA jako liczba całkowita'wypełnij liczbę całkowitąintA = 30000'pokaż okno wiadomościMsgBox intANapis końcowy

Jeśli uruchomisz powyższy kod, pojawi się następujący komunikat.

Typ długiej zmiennej

Jak wspomniano powyżej, zmienne Int mogą przechowywać tylko wartości z zakresu od -32768 do 32768. Jeśli spróbujesz przypisać wartość spoza tego zakresu do zmiennej Int, otrzymasz błąd:

Kiedy klikniesz na debugowanie, kod złamie się na „wypełnij wiersz liczb całkowitych” jako liczba całkowita nie może przechowywać liczby tak dużej jak 50000.

Zamiast tego możesz zadeklarować zmienną za pomocą Długie typ danych:

1 Dim longA jak Long

Długie zmienne mogą przechowywać bardzo długie typy danych (od 2 147 483 648 do 2 147 483 648).

<>

Dlaczego miałbyś używać zmiennych typu Int zamiast zmiennych typu Long?

Długie zmienne zajmują więcej pamięci. Wiele lat temu pamięć była dużym problemem podczas pisania kodu, jednak teraz technologia obliczeniowa jest znacznie ulepszona i wątpliwe jest, abyś napotkał problemy z pamięcią spowodowane długimi zmiennymi podczas pisania kodu VBA.

Zalecamy, aby zawsze używać zmiennych typu Long zamiast zmiennych typu Int. Będziemy kontynuować ten samouczek, omawiając zmienne Int, ale pamiętaj, że zamiast tego możesz użyć zmiennej typu Long.

Wartości dziesiętne i typy danych Int

Zmienne int nie mogą przechowywać wartości dziesiętnych. Jeśli przekażesz liczbę dziesiętną jako liczbę całkowitą, liczba dziesiętna zostanie zaokrąglona, ​​aby usunąć liczbę dziesiętną.

Dlatego, jeśli miałbyś uruchomić poniższą procedurę:

12345678 Sub IntPrzykładB()'deklaruj liczbę całkowitą'Dim intA jako liczba całkowita'wypełnij liczbę całkowitąintA = 3524,12'pokaż okno wiadomościMsgBox intANapis końcowy

Otrzymasz następujący wynik (zaokrąglając w dół):

Jednak ten kod poniżej:

12345678 Sub IntPrzykładB()'deklaruj liczbę całkowitą'Dim intA jako liczba całkowita'wypełnij liczbę całkowitąintA = 3524,52'pokaż okno wiadomościMsgBox intANapis końcowy

Zwróci następujący komunikat (zaokrąglając w górę):

Typ danych dziesiętny/podwójny

Jeśli chcesz przechowywać miejsce dziesiętne, musisz zadeklarować zmienną, która dopuszcza miejsca dziesiętne. Dostępne są 3 typy danych, których możesz użyć - Single, Double lub Currency.

1 Dim sngPrice jako Single
1 Dim dblCena jako podwójna
1 Dim curPrice jako waluta

Typ danych Pojedynczy zaokrągli kropkę dziesiętną nieco inaczej niż typ danych Podwójny i Walutowy, dlatego w celu zapewnienia dokładności preferowane jest użycie Podwójny do pojedynczego. Podwójna może mieć do 12 miejsc po przecinku, podczas gdy waluta i pojedyncza mogą mieć do 4 miejsc po przecinku.

Więcej informacji na temat tych typów danych można znaleźć tutaj.

Zadeklaruj zmienną Int na poziomie modułu lub globalnym

W poprzednich przykładach zadeklarowaliśmy zmienną Int w ramach procedury. Zmienne zadeklarowane za pomocą procedury mogą być używane tylko w ramach tej procedury.

Zamiast tego możesz zadeklarować zmienne Int na poziomie modułu lub globalnym.

Poziom modułu

Poziom modułu zmienne są deklarowane na górze modułów kodu z Ciemny oświadczenie.

Zmiennych tych można używać z dowolną procedurą w tym module kodu.

Poziom globalny

Poziom globalny zmienne są również deklarowane na górze modułów kodu. Jednak zamiast używać Ciemny oświadczenie, użyj Publiczny oświadczenie, aby wskazać, że zmienna całkowita jest dostępna do użycia w całym projekcie VBA.

1 Public IntA jako liczba całkowita

Jeśli miałbyś zadeklarować liczbę całkowitą na poziomie modułu, a następnie spróbować użyć jej w innym module, wystąpiłby błąd.

Jeśli jednak użyłeś słowa kluczowego Public do zadeklarowania liczby całkowitej, błąd nie wystąpiłby i procedura działałaby idealnie.

Konwertuj ciąg na Int

Może istnieć instancja lub instancje, w których będziesz musiał przekonwertować liczbę przechowywaną jako ciąg na wartość całkowitą.

Zauważysz w bezpośrednim oknie, że wartość całkowita idzie w prawo, wskazując liczbę, a wartość ciągu w lewo, wskazując tekst.

Konwertuj int na ciąg

I odwrotnie, możesz przekonwertować wartość całkowitą na ciąg.

Więcej informacji na temat tych typów danych można znaleźć tutaj.

Formatuj liczbę całkowitą przechowywaną jako ciąg

<>

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave