czwartek, 13 czerwca 2013

Funkcje informacyjne, część 2/5- funkcje VBA

Kontynuując zagadnienia dot. funkcji informacyjnych dziś zaprezentowane zostaną dwie kolejne funkcje- IsArray() oraz IsObject().


1. Funkcja IsArray zwróci prawdę True gdy testowana zmienna będzie zmienną tablicową. Prześledźmy działanie funkcji na poniższym przykładzie analizując zwracane wyniki:
1Dim ZmiennaA
2Debug.Print IsArray(ZmiennaA)  >>wynik False
3 
4ZmiennaA = Array(1, 2, 3)
5Debug.Print IsArray(ZmiennaA)  >>wynik True
6 
7Dim ZmiennaB()
8Debug.Print IsArray(ZmiennaB)  >>wynik True

Pamiętając jednak o tym, że zakres komórek po przekazaniu do VBA zwraca tablicę także poniższe wywołanie zwróci wynik True:
1Debug.Print IsArray(Range("A1:A10"))

2. Funkcja IsObject zwróci wartość True zawsze wtedy gdy jako argument funkcji wskażemy odwołanie do obiektu. Poniższe przykłady obrazuję taką sytuację, wszystkie zapytania zwracają wartość True niezależnie od tego czy definicja obiektu następuje przez określenie typu zmiennej, przez przypisanie obiektu do zmiennej typu Variant, czy też przez bezpośrednie wskazanie obiektu w momencie wywołania:
1Dim ZmiennaA As Range
2Dim zmiennaB As Worksheet
3Dim zmiennaC As Variant
4Set zmiennaC = Range("A1:B1")
5    
6Debug.Print IsObject(ZmiennaA)        >>wynik True
7Debug.Print IsObject(zmiennaB)        >>wynik True
8Debug.Print IsObject(zmiennaC)        >>wynik True
9Debug.Print IsObject(Range("A1:b1"))  >>wynik True

Myślę, że powyższe funkcje będą dobrym początkiem w zakresie wyjaśniania działania funkcji informacyjnych. Pozostałe dwa posty dot. zagadnienia już wkrótce.

Brak komentarzy:

Prześlij komentarz