MS Excel - obiekty VBA
Szanowni Państwo,
W poniższej prezentacji znajdą Państwo zagadnienia dotyczące obiektów i właściwości, z których korzystamy w trakcie programowania w języku VBA z wykorzystaniem programu Excel.
Zainteresowanych zagadnieniami związanymi z arkuszem kalkulacyjnym, zapraszamy na szkolenie Excel, które realizujemy w naszej firmie - na wszystkich poziomach zaawansowania.
W Strefie Wiedzy na stronie Cognity znajdą Państwo wiele informacji, ciekawostek, kursów i przykładów systematyzujących poznaną wcześniej wiedzę z zakresu MS Office.
Obiekty i zbiory w języku VBA
Obiekty w języku VBA pełnią rolę kontenerów
dla innych obiektów i uporządkowane są w
sposób hierarchiczny. Obiekt Application,
który reprezentuje całą aplikację Microsoft
Excel, posiada inne obiekty takie jak:
• AddIns (zbiór obiektów AddIn)
• Windows (zbiór obiektów Window)
• Workbooks (zbiór obiektów Workbooks)
Obiekty
Obiekt Workbook, może być kontenerem dla
obiektów takich jak:
• Charts (zbiór obiektów Chart)
• Names (zbiór obiektów Names)
• Styles (zbiór obiektów Style)
• Windows (zbiór obiektów Window skoroszytów)
• Worksheets (zbiór obiektów Worksheet)
Kurs VBA
Obiekty c.d.
Każdy z wymienionych na powyższych slajdach
obiektów zawiera w sobie kolejne obiekty. Np. obiekt
Worksheet może być kontenerem dla poszczególnych
obiektów:
• ChartObjects (zbiór wszystkich obiektów ChartObjects)
• PageSetup (obiekt, który przechowuje informacje dotyczące wydruków)
• PivotTables (zbiór wszystkich obiektów PivotTable)
Kurs VBA
Zbiory
Wszystkie obiekty, które są podobne do siebie
zawierają się w Zbiorze. Np. zbiór wszystkich
obiektów AddIn nazywa się AddIns. Aby odwołać
się do danego obiektu trzeba posłużyć się
wartością jego indeksu lub nazwą.
Kurs VBA
Zbiory c.d.
Przykładem może być skoroszyt składający się z
czterech arkuszy o nazwach: Arkusz I, Arkusz II,
Arkusz III. Arkusz IV, więc w celu odwołania się
do drugiego obiektu zbioru Worksheets należy
zastosować poniższą instrukcję:
Worksheets(2)
Worksheets(„Arkusz2”)
Kurs VBA
Właściwości obiektów
Właściwość to cecha obiektu, która jest ich
atrybutem. Każdy z obiektów posiada własny
zestaw właściwości.
1. Obiekt Range posiada właściwości takie jak:
• Column
• Row
• Width
• Value
Kurs VBA
Właściwości obiektów c.d.
2. Właściwości obiektu Charts:
• Legend
• ChartTitle
Właściwość ChartTitle także jest obiektem, który
posiada właściwości takie jak:
• Font
• Orientation
• Text
Kurs VBA
Właściwości obiektów c.d.
Aby napisać kod źródłowy należy wykonać
poszczególne operacje:
1. Sprawdzić aktualne wartości właściwości
obiektu, a następnie zrealizować wybraną
czynność w oparciu o nie
2. Zmienić wartości właściwości obiektu
Kurs VBA
Właściwości obiektów c.d.
Odwoływanie się do właściwości obiektu następuje
poprzez wstawienie w kodzie źródłowym w programie
Excel, po nazwie obiektu - kropki i nazwy właściwości.
Range(„freguency”).Value=20
Powyższa instrukcja oznacza, że właściwości Value
obiektu zakresu o nazwie frequency przypisuje
wartość 20, co doprowadzi do tego, że ta liczba
pojawi się w komórkach zakresu.
Kurs VBA
Właściwości obiektów c.d.
Istnieją właściwości obiektów, które są tylko do
odczytu, co oznacza, że można w nich sprawdzić
wartość
i sprawdzić lokalizację danej komórki (numer jej
wiersza
i kolumny) ale nie można w nich dokonać
modyfikacji w celu ustawienia innych wartości
właściwości.
Kurs VBA
Właściwości obiektów c.d.
Obiekt Range zajmuje obszar jednej komórki
Przykładem takich właściwości obiektu Range
tylko do odczytu są:
• Row
• Column
Obiekt Range posiada także właściwość Formula,
która może być zmieniana poprzez zmianę
wartości
Kurs VBA
Właściwości obiektów c.d.
Pierwsze miejsce w hierarchii obiektów zajmuje obiekt Application (będący programem Excel)
Właściwości obiektu Application:
• Application.ActiveCell. Zwraca aktywną komórkę (obiekt Range), która jest w otwartym oknie
• Application.ActiveWorkbook. Zwraca aktywny skoroszyt (obiekt Workbook), programu Excel
Kurs VBA
Właściwości obiektów c.d.
• Application.ActiveSheet. W otwartym skoroszycie Zwraca aktywny arkusz (obiekt Sheet)
• Application.Selection. Zwraca aktualnie zaznaczony obiekt, który jest w aktywnym oknie obiektu Application. Należą do niego takie obiekty, które można zaznaczyć:
- Chart
- Range
- Shape
Kurs VBA
Właściwości obiektów c.d.
Właściwości mogą również zwracać obiekty. Przykładem takiego zastosowania właściwości Application.ActiveCell będzie obiekt Range.
Instrukcja:
Application.ActiveCell.Font.Size=10
Kurs VBA
Właściwości obiektów c.d.
Powyższa instrukcja oznacza, że Font to obiekt a Size to właściwość obiektu i wartość czcionki w aktualnie oznaczonej komórce mająca rozmiar 10 punktów.
Cechą tego samego obiektu jest to że, można się do niego odwoływać na kilka różnych sposobów.
Kurs VBA
Właściwości obiektów c.d.
Gdy mamy otwarty jeden skoroszyt o nazwie np. Produkcja.xls, który zawiera tylko jeden arkusz np. o nazwie Podsumowanie, to aby odwołać się do tego arkusza należy posłużyć się jedną z poniższych instrukcji kodu źródłowego języka VBA:
1. Workbooks(1). Worksheets(1)
2. Workbooks(„Produkcja.xls”).Worksheet(„Podsumowanie”)
3. ActiveSheet
Kurs VBA
Właściwości obiektów c.d.
Zastosowanie powyższych instrukcji zależne jest od zakresu informacji na temat obszaru roboczego. Gdy otwarty jest więcej niż jeden skoroszyt to instrukcja pierwsza nie będzie działać odpowiednio.
Druga z wymienionych instrukcji daje pewność, że odwołanie zostało zrobione do wybranego arkusza konkretnego skoroszytu.
Cognity
Jesteśmy firmą szkoleniowo-doradczą specjalizującą się przede wszystkim w szkoleniach informatycznych, ze szczególnym uwzględnieniem programów z pakietu Ms Office.
Przeszkoliliśmy już setki przedstawicieli klientów korporacyjnych, biznesowych, pracowników instytucji publicznych oraz klientów indywidualnych (zachęcamy do zapoznania się z treścią zakładki referencje na naszej stronie internetowej).
Cognity
Proponując najwyższej jakości usługi edukacyjne, umożliwiamy naszym klientom odkrywanie nowych pokładów praktycznej wiedzy, która wpływa na realną poprawę ich wyników oraz podniesienie komfortu wykonywanej pracy.
OFERTA FIRMY COGNITY OBEJMUJE:
▶ Szkolenia otwarte▶ Szkolenia zamknięte (dedykowane dla firm)▶ Konsultacje▶ Opiekę poszkoleniową▶ Doradztwo informatyczne
Jeżeli jesteś zainteresowany udziałem w organizowanym przez nas szkoleniu, zapraszamy do kontaktu:
Cognity Szkoleniaul. Dietla 25/531-070 Kraków
Tel. +48 12 421 87 54e-mail: [email protected]
Aby być na bieżąco odwiedzaj nas również na portalu Facebook https://www.facebook.com/cognityszkolenia
Zapraszamy!