Tablice VBA

Tablice Excel VBA

Generalnie jedna zmienna ma przechowywać pojedynczą wartość na raz, ale gdy chcemy przechowywać wiele wartości w jednej zmiennej to taki typ zmiennej jest znany jako zmienna tablicowa, aby użyć zmiennej tablicowej w VBA musimy zadeklarować zdefiniuj ją najpierw, możemy zdefiniować zmienną tablicową z jej długością lub bez jej długości.

Załóżmy, że mamy dane zawierające setki wierszy i wiele kolumn i musimy stworzyć kod, który będzie używał tych danych. Teraz w tym przypadku musimy stworzyć wielokrotności zmiennej, która pobierze wartość z komórek i przekaże programowi. Tworzenie tak dużej ilości zmiennych będzie bardzo męczące, dlatego w takich przypadkach używamy tablic w programie Excel.

Tablice przechowują zestaw danych w swojej pamięci i nie wymagają od nas deklarowania zmiennej dla każdej wartości, która ma zostać pobrana z danych. Potrzeba używania tablic wynika z faktu, że w programie Excel zmienne są przeznaczone do przechowywania jednej wartości na raz, jednak gdy wiele wartości jest przechowywanych przez zmienną, staje się tablicą.

  • Tworzenie tablicy przypomina tworzenie oddzielnej jednostki pamięci, która może przechowywać w niej dane. Aby utworzyć tablicę, dane muszą być tego samego typu.
  • Tablice, które przekazujemy do programu Excel, muszą odpowiadać rodzajowi danych, które posiadamy. Załóżmy, że jeśli mamy dane, które mają tylko wiersze, więc w tym przypadku użyjemy „tablicy jednowymiarowej”, a jeśli dane zawierają również kolumny, musimy użyć „tablic dwuwymiarowych”, ponieważ są one w stanie przechowywać tylko wartości z rzędów i kolumn.
  • Tablice muszą również działać jako tablice dynamiczne lub tablice statyczne. Ponieważ dajemy formule zakres dynamiczny, możemy również uczynić zmienną Arrays. Tablice dynamiczne będą miały funkcjonalność obejmującą nieskończoną liczbę wierszy i kolumn. W przypadku, gdy zdefiniowane przez nas tablice są typu statycznego, mogą zawierać tylko ograniczoną liczbę wierszy i kolumn, jak określono w momencie tworzenia tablicy.

Wyjaśnienie

Tablice działają na „matematycznej zasadzie macierzy”, czyli identyfikują dane tylko na podstawie ich lokalizacji. Załóżmy, że jeśli musimy sprawić, by VBA zrozumiał, że potrzebujemy „20” w komórce „B3”, to musimy zapisać kod lokalizacji jako (3, 2), gdzie pierwsza wartość oznacza położenie wiersza, a druga wartość oznacza numer kolumny. W świecie programu Excel ten kod lokalizacji nazywa się „górną granicą” i „dolną granicą”. Domyślnie lokalizacja w programie Excel zaczyna się od jedynki, a nie od zera, więc program Excel widzi „A1” jako wiersz numer 0, a nie wiersz numer 1.

Podobnie kolumny zaczynają się od zera, a nie od jedynki.

Te tablice można zdefiniować jako tablicę statyczną lub tablicę dynamiczną. Jeśli zdefiniujemy je jako tablice statyczne, oznacza to, że nie mogą one pomieścić więcej niż zmiennych zdefiniowanych podczas ich kodowania. Jeśli nie jesteśmy pewni, jaka wartość jest wymagana do zapamiętania przez tablice, tworzymy tablice dynamiczne iw takich przypadkach mogą one zawierać nieskończone liczby wartości.

Teraz, po wybraniu wymaganego typu tablicy, będziemy musieli wprowadzić dane w tych tablicach.

Te dane muszą być podawane jeden po drugim, aby wyróżniać się w poniższych sposobach.

Po zapisaniu danych w tych tablicach są one gotowe do użycia jako zmienna w kodowaniu VBA.

Lista 5 najpopularniejszych typów tablic

  1. Tablice statyczne
  2. Dynamiczna tablica
  3. Jednowymiarowa tablica
  4. Dwuwymiarowa tablica
  5. Tablica wielowymiarowa

Przyjrzyjmy się szczegółowo każdemu z nich.

# 1 - Tablice statyczne

Tablica zawierająca wstępnie zdefiniowaną liczbę wartości, które można w niej przechowywać.

# 2 - Tablica dynamiczna

Tablica z nieokreśloną liczbą wartości, którą może obsłużyć.

# 3 - Jednowymiarowa tablica

Tablica, która może przechowywać tylko dane z wierszy lub kolumn.

# 4 - dwuwymiarowa tablica

Tablica, która może przechowywać wartość z wierszy i kolumn.

# 5 - Wielowymiarowa tablica

Jak korzystać z tablic w VBA (z przykładami)?

Możesz pobrać te tablice w szablonie VBA Excel tutaj - Tablice w szablonie VBA Excel

Tablice mogą być używane w wielu sytuacjach, ale muszą być używane, gdy liczba zmiennych, które mają być zadeklarowane, jest duża i nie jest możliwe ich zadeklarowanie.

Poniżej znajduje się kilka przykładów, ale zanim przejdziemy do przykładów, nauczymy się otwierać edytor VBA za pomocą klawisza skrótu

Otworzy się edytor VBA, stamtąd musimy wprowadzić kod w „tym arkuszu”.

Przykład 1

Wybierz żądany typ tablicy, czy powinna to być tablica dynamiczna czy statyczna?

Jeśli potrzebujemy tablicy dynamicznej, zdefiniujemy wymiar jako „wariant”.

Jeśli potrzebujemy tablicy statycznej, zdefiniujemy wymiar jako „Statyczny”.

Przykład nr 2

Zdefiniuj kolumny i wiersze, które chcesz przechowywać w tablicy.

Jeżeli w nawiasie wpisaliśmy „1”, oznacza to, że tablica może pomieścić 2 wiersze, ponieważ liczenie w programie Excel zaczyna się od zera.

Jeśli potrzebujemy również kolumn i wierszy, musimy zdefiniować oba z nich.

Tutaj „1 do 2” oznacza dwa wiersze, a „1 do 3” oznacza trzy kolumny.

Tutaj zmieniliśmy zasadę liczenia wierszy w programie Excel i poprosiliśmy, aby liczył od „1”, a nie od zera.

Przykład nr 3

Wprowadzenie danych do tablicy.

Dane muszą być wprowadzane do komórek mądrze. Tutaj dane należy wprowadzić w postaci (I, j), gdzie „I” oznacza wiersz, a „J” oznacza kolumnę.

Zatem „a (1,1”) oznacza, że ​​komórka „A1”

Przykład 4

Zamknięcie kodu.

Po wprowadzeniu danych do tablicy ostatnim krokiem będzie zamknięcie kodu.

Rzeczy do zapamiętania

  • Domyślnie program Excel policzy wiersze zaczynając od zera. Oznacza to, że „2” zamiast „I” będzie oznaczać 3 rzędy, a nie 2 rzędy. To samo dotyczy „J”.
  • Dane, które należy wprowadzić do tablicy, muszą zaczynać się od (0, 0), czyli z pierwszego wiersza i pierwszej kolumny.
  • W przypadku, gdy używamy tablic dynamicznych, będzie to wymagało funkcji „VBA REDIM”, aby określić liczbę wierszy i kolumn, które mają być zapamiętane.
  • W przypadku tworzenia dwuwymiarowej tablicy musimy użyć „Integer” jako wymiaru.
  • Plik Excela należy zapisać w wersji „kompatybilnej z makrami”, w przeciwnym razie kodowanie, które zrobiliśmy w VBA, zniknie i nie będzie działać następnym razem.