340 likes | 464 Views
Przypisanie makra do przycisku na pasku narzędzi. Wybieramy z menu Widok Paski narzędzi Dostosuj… 2. W oknie Dostosowywanie wybieramy kartę Polecenia i szukamy kategorii Makra. Metodą przeciągnij i upuść przenosimy Przycisk niestandardowy w wybrane miejsce paska narzędzi.
E N D
Przypisanie makra do przycisku na pasku narzędzi • Wybieramy z menu WidokPaski narzędziDostosuj… • 2. W oknie Dostosowywanie wybieramy kartę Polecenia i szukamy kategorii Makra • Metodą przeciągnij i upuść przenosimy Przycisk niestandardowy w wybrane miejsce paska narzędzi. • Przypisujemy do przycisku nasze makro • Zamykamy okno Dostosowywania. Makro uruchamiamy jednym kliknięciem przycisku Elementy programowania
Bezpieczeństwo makr Program Excel zapewnia ochronę przed wirusami, które mogą być przenoszone w makrach. Makra udostępniane innym użytkownikom można podpisywać za pomocą podpisu cyfrowego, aby mogli oni sprawdzić, że makra pochodzą z wiarygodnego źródła. Za każdym razem podczas otwierania skoroszytu zawierającego makra można zweryfikować źródło pochodzenia makr przed ich uaktywnieniem. Elementy programowania
Bezpieczeństwo makr poziom zabezpieczeń definiujemy na karcie Poziom zabezpieczeń w oknie dialogowym Zabezpieczenia (Narzędzia MakroZabezpieczenia) Elementy programowania
wybranie tej opcji spowoduje, że przy otwieraniu pliku z makrami pojawi się okno dialogowe: po wybraniu niskiego poziomu zabezpieczeń dokument otwierany jest bez ostrzeżenia Zabezpieczanie makr Uwaga! Po zmianie poziomu należy zamknąć plik (nie program!) i otworzyć ponownie
Kod źródłowy makra Przejście do Edytora VBA (sposoby) Analiza makroprocedury: • makroprocedury zaczynają się od słowa kluczowego Sub i kończą słowem kluczowym End Sub, • po słowie Sub znajduje się nazwa makra i para nawiasów (), • pomiędzy słowami Sub i End Sub znajduje się ciąg instrukcji czytanych przez VB od góry do dołu, • linie rozpoczynające się znakiem apostrofu (’) i wyświetlane w kolorze zielonym to linie komentarza, • zbyt długie linie kodu, które chcemy kontynuować w następnej linii poprzedzamy spacją i dolną kreską ( _). Elementy programowania
Komentarz • kolor komentarza można zmienić wybierając polecenia: ToolsOptions…, na karcie Editor Format poszukać kodu Comment Text i zmienić kolor na inny, • komentarz można dodać w dowolnym miejscu kodu, również na końcu linii kodu, np. .GridlineColorIndex = 4 ' zmienia kolor siatki • linie komentarza nie wykonują żadnego zadania poza informacyjnym, Elementy programowania
Zmienne Programy manipulują danymi, które są przechowywane w zmiennych. Zmienne mają różne atrybuty i mogą przechowywać różne typy danych (liczby, tekst, datę itd.). W Visual Basicu wszystkie zmienne są tworzone jednakowo: na przykład zmienna, która jest przechowywana w pamięci jako sekwencja bitów 01001111, reprezentuje literę O - jeżeli zmienna jest znakiem, lub liczbę 79 - jeżeli zmienna jest liczbą całkowitą. Przez zadeklarowanie zmiennej jako określonego typu danych określa się dla Visual Basic typ danych przechowywanych przez zmienną (sposób interpretacji danej przechowywanej w pamięci). Z punktu widzenia programisty zmienna jest elementem, którego wartość może ulegać zmianie podczas wykonywania programu. Z punktu widzenia komputera zmienna jest jednym obszarem w pamięci, którego zawartość może zmieniać się podczas wykonywania programu.
Zmienne - nazewnictwo • nazwa zmiennej może składać się z liter, cyfr i niektórych znaków przestankowych z wyjątkiem: , # $ % & @ ! • musi mieć od 1 do 40 znaków, • nie może zaczynać się od cyfry i nie może zawierać odstępów (spacji), • VB nie rozróżnia małych i wielkich liter, • nie wolno używać jako nazwy zmiennej słów kluczowych języka, • nazwa powinna kojarzyć się z jej rolą. Elementy programowania
Typy danych • Termin „typ danych” określa sposób przechowywania danych w pamięci (w postaci cyfr, napisów, dat, obiektów itd.). • Typ zmiennej nadaje się podczas tzw. „deklaracji zmiennej”. • Jeżeli nie nadamy zmiennej typu to VB przypisze typ o nazwie Variant. Elementy programowania
Deklarowanie zmiennych Sposób deklaracji zmiennej: DimzmiennaAstyp gdzie zmienna jest nazwą zmiennej, a typ określa typ danych przechowywanych przez zmienną. Uwaga! Pominięcie słowa kluczowego As i typu zmiennej spowoduje, że zmienna będzie typu Variant. Przykład: DimNazwaPlikuAs String DimliczbaPiAs Double DimkosztAs Integer Elementy programowania
Deklarowanie zmiennych • nie jest konieczne ale zalecane, • nie jest obowiązkowe na początku procedury, • oszczędza pamięć, zapobiega błędom, przyspiesza wykonanie procedury. Elementy programowania
Przyrostki Używane są w deklaracji zmiennych skracając zapis tej deklaracji: DimWiek % - oznacza, że zmienna Wiek jest typu Integer Elementy programowania
Inicjowanie zmiennych Jeżeli zmienna nie zostanie zainicjowana wartością, to: • zmiennej numerycznej nadawana jest wartość 0, • zmiennej łańcuchowej o stałej długości przypisywany jest łańcuch o zerowej długości (""), • zmienna łańcuchowa o stałej długości zostanie wypełniona zerami, • zmienna typu Variant jest inicjowana jako Empty, • każdy element typu użytkownika jest inicjowany jak pojedyncza zmienna określonego typu. Elementy programowania
Stałe • wartości zadeklarowane na stałe, nie zmieniają się w programie, • przykładem może być liczba π = 3,1416… - nie ulega zmianie i można ją zdeklarować jako stałą, • dobrym nawykiem jest deklarowanie stałych dla wartości, które nie zmieniają się (zapobiega to przypadkowym zmianom tej wartości), • stałej przypisujemy nazwę, dzięki której mamy do niej dostęp (zamiast za każdym razem pisać 3,1416 piszemy nazwę stałej mającej tę wartość, np. pi), • stała może być określona jako liczba lub łańcuch, • reguły nazewnictwa dla stałych są identyczne jak dla zmiennych. Elementy programowania
Deklarowanie stałych Constnazwa_stałej = wartość PrivateConstnazwa_stałej = wartość PublicConstnazwa_stałej = wartość np. Constrabat = 0.5 Constpi = 3.1416 Elementy programowania
Stałe wewnętrzne • Excel i VB maja długą listę stałych wewnętrznych, które nie wymagają deklaracji, • można je przejrzeć w oknie Przeglądarki obiektów, • stałą wewnętrzną wystarczy wpisać w odpowiednim miejscu kodu, lub dołączyć ją bezpośrednio z okienka Object Browser. Elementy programowania
Operatory • operatory wykonują operacje arytmetyczne, logiczne, łańcuchowe, podstawienia lub porównania, Elementy programowania
Operatory porównania Elementy programowania
Operator znakowy (łańcuchowy) Elementy programowania
Operatory logiczne Elementy programowania
Zasady pierwszeństwa operatorów • jeżeli wyrażenie zawiera operatory należące do różnych kategorii, najpierw wykonywane są działania operatorów arytmetycznych, potem operatorów porównania i operatorów logicznych, • wszystkie operatory porównania mają taki sam priorytet i wykonywane są w takim porządku w jakim znajdują się w wyrażeniu w kolejności od lewej do prawej, • jeżeli mnożenie i dzielenie wystąpią razem wykonywane są w kolejności od lewej do prawej, jeżeli dodawanie i odejmowanie wystąpią razem wykonywane są w kolejności od lewej do prawej, • kolejność operatorów można zmieniać stosując nawiasy (w pierwszej kolejności są wykonywane operacje wewnątrz nawiasów (z zachowaniem kolejności) a później operacje poza nawiasami), Elementy programowania
Zasady pierwszeństwa operatorów Elementy programowania
Nadawanie wartości zmiennym Aby nadać zmiennej określoną wartość należy użyć operatora podstawienia oraz opcjonalnego rozkazu Let. Z lewej strony tego operatora należy podać nazwę zmiennej, której wartość ma być zmieniona. Z prawej strony należy podać wyrażenie, które zostanie przypisane zmiennej. Składnia podstawienia wartości pod zmienną: NazwaZmiennej=Wyrażenie Wyrażeniem może być liczba, ciąg znaków (w zależności od typu zmiennej), wynik operacji (logicznej, matematycznej, łańcuchowej), wywołanie funkcji, inna zmienna.Zawsze najpierw wykonywane jest to, co się znajduje po prawej stronie operatora podstawienia, a dopiero potem wynik tego działania jest podstawiany pod zmienną NazwaZmiennej. Elementy programowania
Nadawanie wartości zmiennym • typ danych zapisywanego wyrażenia musi być zgodny z typem danych zmiennej. Jeżeli zmienna Liczba będzie typu Single to niepoprawne będzie przypisanie: Liczba = „sto dwa” (Liczba jest typu Single a po prawej stronie operatora podstawienia występuje wyrażenie łańcuchowe) • Visual Basic dokonuje automatycznie kilku rodzajów konwersji. Można np. użyć podstawienia: Liczba = 91.2 (zmienna Liczba jest typu Integer a więc liczbą całkowitą. Po prawej stronie wyrażenia występuje liczba 91.2 a więc liczba ułamkowa. VB automatycznie dokona konwersji do najbliższej liczby całkowitej (91) i taką wartość podstawi pod zmienną Liczba) Elementy programowania
Nadawanie wartości zmiennym • jeżeli zmienna zostanie zadeklarowana jako String o określonej długości to przy próbie podstawienia pod nią łańcucha znaków o długości większej niż długość zmiennej zostanie on obcięty do liczby znaków możliwych do zapisania w tej zmiennej. Np.: Dim Tekst AsString*10 Tekst =„To jest jakiś długi tekst” (zmienna Tekst została zadeklarowana jako zmienna łańcuchowa o długości 10 znaków. Przy podstawieniu łańcucha „To jest jakiś długi tekst” zostanie on obcięty do 10 znaków („To jest ja”) i taki łańcuch zostanie podstawiony pod zmienną Tekst) Elementy programowania
Nadawanie wartości zmiennym Charakterystycznym przykładem wykorzystania kolejności wykonywania operacji operatora podstawienia jest inkrementacja i dekrementacja (zwiększanie i zmniejszanie) wartości zmiennej. NazwaZmiennej = NazwaZmiennej operator Wyrażenie Operator jest operatorem matematycznym, logicznym lub łańcuchowym (w zależności od typu zmiennej). Ponieważ najpierw jest wykonywane działanie po prawej stronie, najpierw zostanie obliczona wartość tam występująca, a dopiero potem nowa wartość zostanie podstawiona pod zmienną NazwaZmiennej. Przykład:Liczba = 10 Liczba = Liczba + 5 (zmiennej Liczba przypisywana jest wartość 10. Wartość zmiennej Liczba zostanie zwiększona później o 5 (10+5) i przypisana zmiennej Liczba. Po wykonaniu podstawienia zmienna Liczba będzie miała wartość 15)