Click here to load reader

Kurs VBA - Procedury VBA w Excelu cz.III

  • View
    102

  • Download
    4

Embed Size (px)

Text of Kurs VBA - Procedury VBA w Excelu cz.III

Analiza statystyczna w Excelu

Poradnik VBA: Procedury VBA W Excelu 1

Poradnik VBA: Procedury

Szanowni Pastwo,

Jeeli chcecie pozna procedury jakie s stosowane w VBA w Excelu zapraszamy do lektury naszej prezentacji.

Wicej informacji o VBA dostpnych na stronie www.cognity.plPoradnik VBA: Procedura typu Function

Kurs VBAProcedura typu Function

Procedura typu Function, zwana rwnie funkcj, wykonuje okrelone obliczenia oraz zwraca pojedyncz warto lub tablic. Mog by stosowane w moduach i formuach arkuszy.Poradnik VBA: Procedura typu Function

Kurs VBAProcedura typu Function c.d.Skadnia deklaracji:

[Private | Public| Friend] [Static] Function NazwaFunkcji ([lista_argumentw])[As typ][instrukcje procedury]Poradnik VBA: Procedura typu Function

Kurs ExcelProcedura typu Function c.d.Skadnia deklaracji:

[NazwaFunkcji=wyraenie][Exit Function] natychmiastowe wyjcie z funkcji [instrukcje procedury][NazwaFunkcji=wyraenie]End Function koniec proceduryPoradnik VBA: Zasig procedury typu Function

Kurs VBAZasig procedury typu Function

Domylnie wszystkie procedury typu Function sa publiczne, tzn. s dostpne dla innych procedur z innych moduw.Poradnik VBA: Poradnik VBA: Zasig procedury typu Function

Kurs VBAZasig procedury typu Function c.d.

Dostpno procedury okrelona jest przez sowa kluczowe:[Private|Public|Friend]-Private oznacza, ze procedura dostpna jest tylko dla procedur z tego samego moduu.Poradnik VBA: Zasig procedury typu Function

Kurs ExcelZasig procedury typu Function c.d.

Ponadto nie jest widoczna w oknie dialogowym Wstawianie funkcji, Public (warto domylna) dostpna dla procedur z innych moduw Friend (tylko w modulach klasy)Poradnik VBA: Zasig procedury typu Function

Kurs VBAZasig procedury typu Function c.d.

Wskazuje, e procedura jest widoczna w projekcie, a nie jest widoczna dla kontrolera instalacji obiektu. Poradnik VBA: Wartoci zwracane

Kurs VBAWartoci zwracane

Warto zwracana przez funkcj naley przypisa nazwie funkcji (w trakcie procedury mona wielokrotnie dokonywa takiej operacji). Domylnym typem zwracanym przez funkcj jest typ Variant. Poradnik VBA: Przekazywanie argumentw

Kurs ExcelPrzekazywanie argumentw

Argumentami mog by zmienne, stae literay lub wyraenia. Argumenty przekazywane do procedury zawarte s w czci [Lista_argumentw]. Poszczeglne oddzielaj od siebie przecinki.

Poradnik VBA: Przekazywanie argumentw

Kurs VBAPrzekazywanie argumentw c.d.Skadnia argumentu lista_argumentw oraz jej czci: [Optional][ByVal|ByRef][ParamArray] nazwa_zmiennej [()][As typ][=warto domylna]Poradnik VBA: Przekazywanie argumentw

Kurs VBAPrzekazywanie argumentw c.d.Gdzie:[Optional]

[ByVal]

Wskazuje, argument nie jest wymagany

Wskazuje, ze argument jest przekazywany przez warto

Poradnik VBA: Przekazywanie argumentwKurs ExcelPrzekazywanie argumentw c.d.[ByRef]

[ParamaArray]

Wskazuje, e argument jest przekazywany przez referencj (domylny sposb)

Uywany jako ostatni argument w lista_argumentw, ktry wskazuje, e jest to opcjonalna tablica elementw typu Variant.

Poradnik VBA: Przekazywanie argumentwKurs VBAPrzekazywanie argumentw c.d.[ParamaArray]

Pozwala na przekazywanie dowolnej liczby argumentw. Nie moe by uywana z ByVal, ByRef lub Optional.

Poradnik VBA: Przekazywanie argumentwKurs VBAPrzekazywanie argumentw c.d.Przykady:

Function funkcja() bez argumentwEnd function

Function funkcja2(liczba1, liczba2) As Long staa okrelona liczba argumentw (maksymalnie do 60)End Function Poradnik VBA: Przekazywanie argumentw Kurs ExcelPrzekazywanie argumentw c.d.Przykady:

Function funkcja3(tablica) As Double End Function

Function funkcja4(ParamaArray lista() As Variant) As Double nieokrelona liczba argumentw End Function

Poradnik VBA: Przekazywanie argumentwKurs VBAPrzekazywanie argumentw c.d.Przykady:

Fubction funkcja59zakres As Variant, Optional komorka AsVariant=False) As Double argumenty wymagane i opcjonalne End Function

Poradnik VBA: Przekazywanie argumentwKurs VBAPrzekazywanie argumentw c.d.

Domylny typ argumentu to Variant. Tylko dla argumentw Optional mona okreli sta jako warto domyln.Do sprawdzenia czy argument Optional zosta przekazany do procedury, mona wykorzysta funkcje IsMissing. Poradnik VBA: Przekazywanie argumentwKurs ExcelPrzekazywanie argumentw c.d.

Jeeli argument jest typu Object, to warto domylna nie moe mie wartoci Nothing. Poradnik VBA: Wywoywanie procedury typu FunctionKurs VBAWywoywanie procedury typu Function Procedury typu Function mona wywoa w formule arkuszy, z poziomu okna Immediate oraz innych procedur.Poradnik VBA: Wywoywanie procedury typu FunctionKurs VBAWywoywanie procedury w tym samym module Przykad: Wynik=nazwa_procedury (argument1, argument2,argument-n)Wynik=Application.Run(nazwa_procedury, argument1, argument2, argument-n)Poradnik VBA: Wywoywanie procedury typu FunctionKurs ExcelWywoywanie procedury w tym samym module c.d.Przykad: Wynik=ObliczV(1)Wynik=Application.Run (ObliczV,2)Poradnik VBA: Wywoywanie procedury umieszczonej w innym module Kurs VBAWywoywanie procedury umieszczonej w innym module Przykad: Wynik=nazwa_modulu.nazwa_procedury (argument1, argument2, argument-n)

Poradnik VBA: Wywoywanie procedury umieszczonej w innym moduleKurs VBAWywoywanie procedury umieszczonej w innym module c.d.Przykad: Wynik=Application.Run (nazwa_modulu.nazwa_procedury, argument1, argument2,argument-n) Poradnik VBA: Wywoywanie procedury umieszczonej w innym moduleKurs ExcelWywoywanie procedury umieszczonej w innym module c.d. Przykad: Wynik=Module.ObliczV(10)Wynik=Application.Run (Module.ObliczV, 20)Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs VBAWywoywanie procedury umieszczonej w innym skoroszyciePrzykad: Wynik=nazwa_projektu.nazwa_modulu.nazwa procedury (argument1, argument2, argument-n)Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs VBAWywoywanie procedury umieszczonej w innym skoroszycie c.d.Przykad: Wynik=Application.Run(nazwa_projektu.nazwa_modulu, nazwa_procedury, argument1, argument2,...argument-n)Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs ExcelWywoywanie procedury umieszczonej w innym skoroszycie c.d.Przykad: Wynik=Projekt.Module1.ObliczV(100) konieczno utworzenia odwoania do Projektu (edytor VBE-menu Tools-polecenie References)Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs VBAWywoywanie procedury umieszczonej w innym skoroszycie c.d.Przykad: Wynik=Application.Run ( D:\test.xls! Module1.ObliczV, 200) brak koniecznoci tworzenia odwoania do Projektu1(menu Tools-polecenie References)Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs VBAProcedury (funkcje) bibliotek DLL Korzystanie z procedur i funkcji zadeklarowanych w zewntrznych bibliotekach moliwe jest po uprzedniej deklaracji za pomoc instrukcji Declare. Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs ExcelProcedury (funkcje) bibliotek DLL c.d.

Skadnia1:

Instrukcja musi by umieszczona w czci deklaracji kadego moduu.

[Private|Public] Declare Sub NazwaProcedury Lib NazwaBiblioteki[Alias NazwaAlias][([lista argumentw])][As typ]Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs VBAProcedury (funkcje) bibliotek DLL c.d.Skadnia2:

[Private|Public] Declare Function NazwaFunkcji Lib Nazwabiblioteki [Alias NazwAlias][([lista argumentw])] [As typ]Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs ExcelProcedury (funkcje) bibliotek DLL c.d.Skadnia argumentu lista_argumentu oraz jej czi:

[Optional][ByVal] | ByRef][ParamArray] nazwa_zmiennej [()] [As typ]Poradnik VBA: Wywoywanie procedury umieszczonej w innym skoroszycieKurs ExcelProcedury (funkcje) bibliotek DLL c.d.Przykad:

Private Declare Sub MessagBeep Lib User32 (ByVa1 N As Integer)Call MessageBeep(0) wygenerowanie dwiku. Zainteresowanych poszerzaniem wiedzy z VBA zapraszamy na:Kurs VBA PodstawowyKurs VBA ZaawansowanyKurs VBA PrzekrojowyKurs VBAKurs VBAKurs VBATematyka VBA w Excelu poruszana jest rwnie na Bloga Strefa Wiedzy Cognity.Kurs VBA

Search related