Arkusz aktywacji VBA - Przykłady VBA do aktywacji arkusza Excel

Arkusz aktywacyjny Excel VBA

Podczas pracy w VBA czasami odwołujemy się do innego arkusza lub używamy właściwości innego arkusza, przypuśćmy, że pracujemy w arkuszu 1, ale chcemy wartości z komórki A2 w arkuszu 2, jeśli odwołujemy się do wartości arkusza 2 bez uprzedniej aktywacji arkusza, będziemy nie możemy uzyskać dostępu do wartości, więc aby aktywować arkusz w VBA, używamy właściwości arkusza roboczego jako Arkusze robocze („Arkusz2”).

W programie Excel zawsze pracujemy z arkuszami roboczymi. Arkusze mają swoje własne nazwy, które ułatwiają identyfikację. W zwykłych arkuszach kalkulacyjnych bezpośrednio nawigujemy po dokładnych klawiszach skrótów lub bezpośrednio wybieramy arkusz, klikając je. Jednak w VBA nie jest to takie proste; musimy podać nazwę arkusza, do którego się odnosimy, a następnie możemy użyć metody „Wybierz”, aby wybrać arkusz.

Co to jest metoda aktywacji VBA?

Jak sama nazwa wskazuje, aktywuje określony arkusz. Aby aktywować arkusz, musimy podać dokładną nazwę arkusza za pomocą obiektu arkuszy roboczych. Na przykład, jeśli chcesz aktywować arkusz o nazwie „Sprzedaż”, możesz użyć poniższego kodu.

Arkusze robocze („Sprzedaż”). Aktywuj

Składnia

Tak więc składnia metody Activate jest następująca.

Arkusz roboczy („Nazwa arkusza”) Aktywuj

Tutaj arkusz roboczy jest obiektem, a aktywacja jest metodą.

Przykład 1 - Aktywuj arkusz według numeru indeksu

W programie Excel pracujemy z wieloma zestawami arkuszy i często musimy przechodzić między arkuszami, aby wykonać zadanie. W VBA możemy użyć metody Activate, aby aktywować określony arkusz Excela.

Na przykład utworzyłem trzy arkusze o nazwach „Sprzedaż 2015”, „Sprzedaż 2016” i „Sprzedaż 2017”.

Arkusze możemy aktywować na dwa sposoby. Jednym z nich jest użycie numerów indeksu arkuszy, a innym użycie samej nazwy arkusza.

Teraz, jeśli chcę, aby wybrać 2 nd arkusz, będę korzystać z obiektu Worksheet i podać numer indeksu arkusz jako 2.

Kod:

Sub Activate_Example1 () Worksheets (2) .Aktywuj End Sub

Uruchomienie kodu klawiszem F5 lub ręczne uruchomienie spowoduje aktywację drugiego arkusza, czyli „Sales 2016”.

Jeśli chcę aktywować trzeci arkusz, użyję 3 jako numeru indeksu arkusza.

Kod:

Sub Activate_Example1 () Worksheets (3) .Aktywuj End Sub

Spowoduje to aktywację trzeciego arkusza, tj. „Sprzedaż 2017”.

Teraz będę zamienić 2 nd i arkusze trzecich.

Technicznie rzecz biorąc, „Sprzedaż 2017” to mój trzeci arkusz, a „Sprzedaż 2016 to mój drugi arkusz. Teraz użyję numeru indeksu arkusza jako 3 i zobaczę, co się stanie.

Kod:

Sub Activate_Example1 () Worksheets (3) .Aktywuj End Sub

Moim zdaniem musi wybrać arkusz „Sprzedaż 2017”, ale wybierze arkusz „Sprzedaż 2016”, ponieważ w zamówieniu „Sprzedaż 2016” jest trzecim arkuszem.

Dlatego zawsze bezpieczną opcją jest aktywowanie arkusza według jego nazwy.

Przykład # 2 - Aktywuj arkusz według jego nazwy

Teraz zobaczymy, jak aktywować arkusze według jego nazwy. W miejscu numeru indeksu arkusza należy podać nazwę arkusza w cudzysłowie.

Kod:

Sub Activate_Example2 () Arkusze robocze („Sales 2016”). Aktywuj End Sub

Po ręcznym uruchomieniu kodu lub za pomocą klawisza skrótu F5 aktywowałoby to arkusz „Sprzedaż 2016” niezależnie od pozycji w skoroszycie.

Nie tylko obiekt Arkusze, ale możemy również użyć obiektu „Arkusze”, aby aktywować arkusz.

Poniżej znajduje się kod.

Kod:

Sub Activate_Example2 () Sheets („Sales 2016”). Activate End Sub

Arkusze robocze mają dostęp tylko do obiektu Worksheets i nie mają dostępu do arkuszy „Chart”. Jeśli używasz obiektu Arkusze , możemy uzyskać dostęp do wszystkich arkuszy w skoroszycie.

Przykład 3 - Aktywuj arkusz z innego skoroszytu

Tak jak musimy wspomnieć nazwę arkusza, aby aktywować dany arkusz, podobnie w przypadku aktywacji arkusza z innego skoroszytu wymaga również nazwy „Skoroszyt”.

Kod:

Sub Activate_Example3 () skoroszyty („Sales File.xlsx”). Arkusze („Sales 2016”). Activate End Sub

Spowoduje to aktywację arkusza „Sales 2016” ze skoroszytu „Sales File.xlsx”.

Aktywuj arkusz a wybierz metodę arkusza

Możemy użyć metod do wykonania tej samej akcji, czyli metod Activate i Select. Istnieje niewielka różnica między tymi dwiema metodami.

# 1 - Aktywuj metodę

Korzystając z metody Activate, możemy aktywować tylko określony arkusz.

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

Kod:

Sub Activate_Example () Worksheets („Sales 2016”). Activate End Sub

Jak wiemy, ten kod wybierze arkusz roboczy „Sprzedaż 2016”.

# 2 - Wybierz metodę

Korzystając z metody Select, możemy faktycznie wykonywać również inne zadania.

Teraz spójrz na poniższy kod.

Kod:

Ten kod nie tylko aktywuje arkusz „Sales 2016”, ale także wybiera zakres komórek od A1 do A10.

Interesujące artykuły...