Tablice VBA w programie Excel: typy i sposób użycia z przykładem
⚡ Inteligentne podsumowanie
Tablice VBA w Excelu przechowują grupę powiązanych wartości tego samego typu danych pod jedną nazwą, do której dostęp uzyskuje się za pomocą indeksu. Ta strona wyjaśnia tablice statyczne i dynamiczne, tablice jedno-, dwu- i wielowymiarowe, składnię deklaracji oraz przykład ładowania napojów.

Co to jest tablica VBA?
Tablicę definiuje się jako miejsce w pamięci, w którym można przechowywać więcej niż jedną wartość. Wszystkie wartości muszą być tego samego typu danych. Powiedzmy, że chcesz przechowywać listę swoich ulubionych napojów w jednej zmiennej, możesz do tego użyć tablicy VBA.
Używając tablicy, możesz odwoływać się do powiązanych wartości o tej samej nazwie. Aby je rozróżnić, możesz użyć indeksu lub indeksu dolnego. Poszczególne wartości nazywane są elementami tablicy Excel VBA. Są one ciągłe od indeksu 0 do najwyższej wartości indeksu.
W tym samouczku założono, że używasz Microsoft przewyższać wersja 2013. Wiedza ta nadal dotyczy pozostałych wersji Microsoft Excela również.
Jakie są zalety tablic?
Zanim napiszesz kod tablicowy, warto zrozumieć, dlaczego warto z nich korzystać. Poniżej przedstawiono niektóre korzyści oferowane przez funkcję tablicową VBA.
- Grupuj logicznie powiązane dane — powiedzmy, że chcesz przechowywać listę uczniów. Możesz użyć pojedynczej zmiennej tablicowej, która ma osobne lokalizacje dla kategorii uczniów, np. przedszkole, szkoła podstawowa, średnia, średnia itp.
- Tablice ułatwiają pisanie łatwego w utrzymaniu kodu. Dla tych samych logicznie powiązanych danych pozwala zdefiniować jedną zmienną, zamiast definiować więcej niż jedną zmienną.
- Lepsza wydajność – po zdefiniowaniu tablicy można szybciej pobierać, sortować i modyfikować dane.
Rodzaje tablic w VBA
VBA obsługuje dwa typy tablic, a mianowicie;
- Statyczny – Tego typu tablice mają stałą, z góry określoną liczbę elementów, które można przechowywać. Nie można zmienić rozmiaru typu danych tablicy statycznej. Są one przydatne, gdy chcesz pracować ze znanymi jednostkami, takimi jak liczba dni w tygodniu, płeć itp.Na przykład: Dim ArrayMonth(12) jako ciąg znaków
- Dynamiczny – Tablice tego typu nie mają ustalonej, z góry określonej liczby elementów, które można przechowywać. Są one przydatne podczas pracy z elementami, których liczby nie można z góry określić.Na przykład: Dim ArrayMonth() jako wariant
Gdy już wiesz, który typ pasuje do Twoich danych, następnym krokiem jest składnia deklaracji dla każdego z nich.
Składnia deklarowania tablic
Tablice statyczne
Składnia deklarowania STATYCZNY tablice wygląda następująco:
Dim arrayName (n) as datatype
TUTAJ,
| Code | Działania |
|---|---|
| Dim arrayName (n) typ danych |
|
Tablice dynamiczne
Składnia deklarowania DYNAMICZNY tablice wygląda następująco:
Dim arrayName() as datatype ReDim arrayName(4)
TUTAJ,
| Code | Działania |
|---|---|
| Dim arrayName () typ danych |
|
| Nazwa tablicy ReDim(4) |
|
Wymiary tablicy
Tablica może być jednowymiarowa, dwuwymiarowa lub wielowymiarowa.
- Jeden wymiar: W tym wymiarze tablica używa tylko jednego indeksu. Na przykład pewna liczba osób w każdym wieku.
- Dwa wymiary: W tym wymiarze tablica używa dwóch indeksów. Na przykład liczba uczniów w każdej klasie. Wymagana jest liczba klas i liczba uczniów w każdej klasie
- Wielowymiarowy: W tym wymiarze tablica używa więcej niż dwóch indeksów. Na przykład temperatury w ciągu dnia. (30, 40, 20).
Jak korzystać z tablicy w Excel VBA
Po zapoznaniu się z teorią możemy wykorzystać tablicę w prawdziwym skoroszycie. Stworzymy prostą aplikację. Ta aplikacja wypełnia arkusz Excela danymi ze zmiennej tablicowej. W tym przykładzie z tablicą w VBA wykonamy następujące czynności.
- Stwórz nowy Microsoft Skoroszyt programu Excel i zapisz go jako skoroszyt programu Excel z obsługą makr (*.xlsm)
- Dodaj przycisk polecenia do skoroszytu
- Ustaw nazwę i właściwości podpisu przycisku polecenia
- Programowanie VBA wypełniającego arkusz Excela
Zróbmy to ćwiczenie krok po kroku,
Krok 1 – Utwórz nowy skoroszyt
- Otwarte Microsoft przewyższać
- Zapisz nowy skoroszyt jako VBA Arrays.xlsm
Krok 2 – Dodaj przycisk poleceń
Uwaga: W tej sekcji założono, że znasz proces tworzenia interfejsu w programie Excel. Jeśli nie jesteś zaznajomiony, przeczytaj tutorial Kontrola formularzy VBA Excel i kontrola ActiveX. Pokaże Ci jak stworzyć interfejs
- Dodaj przycisk polecenia do arkusza
- Ustaw właściwość name na cmdLoadBeverages
- Ustaw właściwość podpisu na Załaduj napoje
Twój GUI powinien teraz wyglądać następująco
Krok 3 – Zapisz plik
- Kliknij przycisk Zapisz jako
- Wybierz Skoroszyt programu Excel z obsługą makr (*.xlsm), jak pokazano na obrazku poniżej
Krok 4 – Napisz kod
Napiszemy teraz kod naszej aplikacji
- Kliknij prawym przyciskiem myszy przycisk Załaduj napoje i wybierz opcję Wyświetl kod
- Dodaj następujący kod do zdarzenia kliknięcia cmdLoadBeverages
Private Sub cmdLoadBeverages_Click() Dim Drinks(1 To 4) As String Drinks(1) = "Pepsi" Drinks(2) = "Coke" Drinks(3) = "Fanta" Drinks(4) = "Juice" Sheet1.Cells(1, 1).Value = "My Favorite Beverages" Sheet1.Cells(2, 1).Value = Drinks(1) Sheet1.Cells(3, 1).Value = Drinks(2) Sheet1.Cells(4, 1).Value = Drinks(3) Sheet1.Cells(5, 1).Value = Drinks(4) End Sub
TUTAJ,
| Code | Działania |
|---|---|
| Ciemne napoje (1 do 4) jako ciąg |
|
| Napoje(1) = „Pepsi” |
|
| Sheet1.Cells(1, 1).Value = „Moje ulubione napoje” |
|
| Arkusz1.Komórki(2, 1).Wartość = Napoje(1) |
|
Testowanie naszej aplikacji
Po wstawieniu kodu, ostatnim krokiem jest uruchomienie przycisku i potwierdzenie, że tablica wypełnia arkusz. Wybierz kartę Deweloper i upewnij się, że przycisk Tryb projektowania jest wyłączony. Wskaźnik wskazuje, że będzie miał białe tło, a nie kolorowe (zielonkawe). (Zobacz poniższy obrazek)
Kliknij przycisk Załaduj napoje
Otrzymasz następujące wyniki
Pobierz Excel zawierający powyższy kod
Pobierz powyższy plik Excel Code





