34
Elementy programowania 1 5. Zamykamy okno Dostosowywania. Makro uruchamiamy jednym kliknięciem przycisku 4. Przypisujemy do przycisku nasze makro 3. Metodą przeciągnij i upuść przenosimy Przycisk niestandardowy w wybrane miejsce paska narzędzi. Przypisanie makra do przycisku na pasku narzędzi amy z menu Widok Paski narzędzi Dostosuj… knie Dostosowywanie wybieramy kartę Polecenia i szukamy kategorii Ma

Przypisanie makra do przycisku na pasku narzędzi

  • Upload
    sema

  • View
    41

  • Download
    0

Embed Size (px)

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

Page 1: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 1

5. Zamykamy okno Dostosowywania. Makro uruchamiamy jednym kliknięciem przycisku

4. Przypisujemy do przycisku nasze makro

3. Metodą przeciągnij i upuść przenosimy Przycisk niestandardowy w wybrane miejsce paska narzędzi.

Przypisanie makra do przycisku na pasku narzędzi

1. Wybieramy z menu Widok Paski narzędzi Dostosuj…2. W oknie Dostosowywanie wybieramy kartę Polecenia i szukamy kategorii Makra

Page 2: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 2

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.

Page 3: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 3

Bezpieczeństwo makr

poziom zabezpieczeń definiujemy na karcie Poziom zabezpieczeń w oknie dialogowym Zabezpieczenia (Narzędzia Makro Zabezpieczenia)

Page 4: Przypisanie makra do przycisku na pasku narzędzi

Zabezpieczanie makr

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

Uwaga! Po zmianie poziomu należy zamknąć plik (nie program!) i otworzyć ponownie

Page 5: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 5

Kod źródłowy makraPrzejś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ą ( _).

Page 6: Przypisanie makra do przycisku na pasku narzędzi

klikając ten przycisk można

uruchomić makro

Page 7: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 7

Komentarz

• kolor komentarza można zmienić wybierając polecenia: Tools Options…, 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,

Page 8: Przypisanie makra do przycisku na pasku narzędzi

Opis języka VB

Page 9: Przypisanie makra do przycisku na pasku narzędzi

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.

Page 10: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 10

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ą.

Page 11: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 11

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.

Page 12: Przypisanie makra do przycisku na pasku narzędzi

Typ DanychWielkośćpamięci

Zawartość Zakres

Byte 1 bajt Liczba całkowita 0 do 255

Boolean 2 bajty Wartość logiczna True lub False

Integer 2 bajty Liczba całkowita -32,768 do 32,767

Long 4 bajty Liczba całkowita długa-2,147,483,648 do

2,147,483,647

Single 4 bajtyliczba rzeczywista

(zmiennopozycyjna)

Ujemne:-3.402823E38 do -1.401298E-45

Dodatnie: 1.401298E-45 do 3.402823E38

Page 13: Przypisanie makra do przycisku na pasku narzędzi

Typ DanychWielkość pamięci

Zawartość Zakres

Double 8 bajtówliczba rzeczywista

(zmiennopozycyjna)

Ujemne:-0.79769313486232E308 do -

4.94065645841247E-324Dodatnie: 4.94065645841247E-324 do 1.79769313486232E308

Currency 8 bajtówliczba całkowita

z ustaloną kropką dziesiętną

-922,337,203,685,477.5808 do -922,337,203,685,477.5807

Date 8 bajtówdata

(miesiąc/dzień/rok)1/1/100 do 1/31/9999

Object 4 bajty adres obiektuodesłanie do wartości

obiektowej

Page 14: Przypisanie makra do przycisku na pasku narzędzi

Typ Danych

Wielkość pamięci Zawartość Zakres

String

10 bajtów + długość stringu (dla zmiennej

długości stringu); długość stringu (dla stringów o ustalonej

długości)

łańcuch znaków

0 do 2 miliardów znaków dla Windows 95 (0 do 65,400 dla

Windows 3.1 i wersji wcześniejszych)

Variant(z liczbami)

16 bajtów dowolne dane każda wartość numeryczna

Variant(ze znakami)

22 bajty + długość stringu

dowolne dane (poza stringiem o

ustalonej długości i typem

zdefiniowanym przez użytkownika)

taki sam zakres co zmiennej typu String

Page 15: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 15

Deklarowanie zmiennych

Sposób deklaracji zmiennej:Dim zmienna As typ

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: Dim NazwaPliku As String Dim liczbaPi As Double Dim koszt As Integer

Page 16: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 16

Deklarowanie zmiennych

• nie jest konieczne ale zalecane,• nie jest obowiązkowe na początku procedury,• oszczędza pamięć, zapobiega błędom,

przyspiesza wykonanie procedury.

Page 17: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 17

Przyrostki

Używane są w deklaracji zmiennych skracając zapis tej deklaracji:Dim Wiek % - oznacza, że zmienna Wiek jest typu Integer

Przyrostek Typ danych

% Integer

& Long

! Single

# Double

@ Currency

$ String

Page 18: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 18

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.

Page 19: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 19

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.

Page 20: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 20

Deklarowanie stałych

Const nazwa_stałej = wartośćPrivate Const nazwa_stałej = wartośćPublic Const nazwa_stałej = wartość

np.Const rabat = 0.5Const pi = 3.1416

Page 21: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 21

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.

Page 22: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 22

Operatory

• operatory wykonują operacje arytmetyczne, logiczne, łańcuchowe, podstawienia lub porównania,

Page 23: Przypisanie makra do przycisku na pasku narzędzi

Operatory arytmetyczneoperator opis przykład

^ potęgowanie 2 ^ 3 = 8

- znak liczby -5

* mnożenie 2 * 3 = 6

/ dzielenie 3 / 2 = 1.5

\ dzielenie całkowite 3 \ 2 = 1

mod dzielenie modulo 3 Mod 2 = 1

+ dodawanie 2 + 3 = 5

- odejmowanie 2 – 3 = -1

Page 24: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 24

Operatory porównania

operator opis przykład

= równezwraca True gdy wartości są równe np.:

2 = 2   => True 2 = 3  => False

<> różne odzwraca True gdy wartości są różne np.:

2 <> 2  => False 2 <> 3  =>  True

> większe odZwraca True jeżeli wartość po lewej jest większa od wartości po prawej stronie znaku, np.  3 > 2   => True

< mniejsze odZwraca True jeżeli wartość po prawej jest mniejsza od wartości po lewej stronie znaku, np. 2 < 3   => True

Page 25: Przypisanie makra do przycisku na pasku narzędzi

25

Operatory porównania

operator opis przykład

>= większe lub

równe

Zwraca True jeżeli wartość po lewej jest większa lub równa wartości po prawej stronie znaku, np.  2 >= 2   => True

<= mniejsze lub równe

Zwraca True jeżeli wartość po prawej jest mniejsza lub równa wartości po lewej stronie znaku, np.:  2 <= 2   => True

Like porównanie łańcuchów

Operator ten służy do porównywania ciągów. Jeżeli ciąg pasuje do wzorca, wynikiem jest wartość True; w przypadku braku dopasowania, wynikiem jest wartość False. Jeżeli ciąg lub wzorzec ma wartość Null, wynikiem jest wartość Null. 

Page 26: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 26

Operator znakowy (łańcuchowy)

operator opis przykład

& konkatenacja

(łączenie)

„Przykład” & ”zastosowania” = „Przykład zastosowania”

operator ten działa tylko na zmiennych typu String

Page 27: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 27

Operatory logiczne

operator opis

Not negacja Zwraca logiczną negację wyrażenia: Not True = False

And iloczyn logiczny, koniunkcja

Zwraca logiczną koniunkcję dwóch wyrażeń

Or suma logiczna alternatywa

Zwraca logiczną alternatywę dwóch wyrażeń

Xor nierównoważność Zwraca logiczną różnicę symetryczną dwóch wyrażeń

Eqv równoważność Zwraca logiczną równoważność dwóch wyrażeń

Imp implikacja Zwraca logiczną implikację dwóch wyrażeń

Page 28: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 28

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),

Page 29: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 29

Zasady pierwszeństwa operatorów

operatory numeryczne negacja,  *, /, \, Mod,  +,  -(odejmowanie),   =

operatory znakowe &, =

operatory porównania=(porównanie), <>, <, >, <=, >=, Like, =

(przypisanie)

operatory logiczne Not, And, Or, Xor, Eqv, Imp, =  (przypisanie)

porównanie obiektów Is, =  (przypisanie)

Page 30: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 30

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żenieWyraż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.

Page 31: Przypisanie makra do przycisku na pasku narzędzi

Przykłady użycia operatora podstawienia

Liczba = 1Zmiennej Liczba przypisywana jest wartość 1

Wynik = 10 + 5 * UlamekZmiennej Wynik przypisywany jest wynik działań

Komunikat = MsgBox ("To jest komunikat")

Zmiennej Komunikat przypisywany jest wynik działania funkcji MSgBox

lX = lYZmiennej IX przypisywana jest wartość zmiennej IY

Otwarty = TrueZmiennej Otwarty przypisano wartość True

Page 32: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 32

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)

Page 33: Przypisanie makra do przycisku na pasku narzędzi

Elementy programowania 33

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 As String*10Tekst = „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)

Page 34: Przypisanie makra do przycisku na pasku narzędzi

34

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żenieOperator 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 = 10Liczba = 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)