2012-05-07 38 views

Odpowiedz

12

Jeśli jest to wbudowana funkcja, spójrz na temat pomocy Access.

Jeśli jest to funkcja zdefiniowana przez użytkownika, sprawdź jej definicję.

Jeśli nie możesz wykonać żadnej z nich, użyj funkcji TypeName(), aby podać typ danych zwróconych przez YourFunction().

Debug.Print TypeName(YourFunction()) 

If YourFunction() powraca wariant, TypeName() powie wariant podtyp.

Heinzi zasugerował VarType() zamiast TypeName(). Zwykle sięgam po numer TypeName() po prostu dlatego, że jest dla mnie szybszy i rzadko jestem zaniepokojony jego ograniczeniami. Jednak zgadzam się z Heinzi; VarType() jest lepszy.

JP. zaproponował dwie inne przydatne sugestie. Najpierw można utworzyć prostą procedurę, która deklaruje zmienną Wariant i przypisać wartość zwracaną przez funkcję do zmiennej. Następnie dodaj tymczasowy punkt przerwania (z F9) na pierwszej linii Debug.Print, uruchom procedurę, użyj F8, aby przejść przez nią linia po linii i monitoruj wartość zmiennej w oknie Locals. (Otwórz to okno z głównego menu VB redaktora view -.> Locals okno)

Public Sub examine_YourFunction() 
    Dim varFoo As Variant 
    Debug.Print "start" 
    varFoo = YourFunction() 
    Debug.Print varFoo 
End Sub 

A po drugie, dla wbudowanych funkcji, które mają typ zwracany, można skorzystać z IntelliSense aby zobaczyć typ zwracany jako wpisujesz nazwę funkcji i/lub parametry.

+3

+1, bardzo dobra rada. Jeśli musisz wykonać sprawdzenie typu w czasie wykonywania, sugeruję zamiast tego użyć funkcji [funkcja VarType] (http://office.microsoft.com/en-us/access-help/vartype-function-HA001228932.aspx) (aby uniknąć magicznych ciągów). – Heinzi

+0

+ 1 Zgadzam się z Heinzi tutaj :) –

+1

Można również zadeklarować zmienną Wariant, uruchomić funkcję i przypisać jej wartość zwracaną do zmiennej, a następnie sprawdzić wartość zmiennej za pomocą okna Locals. W przypadku wbudowanych funkcji, które mają typ zwracany, można zobaczyć typ zwracany podczas wpisywania nazwy funkcji i/lub parametrów. – JimmyPena