Materiały pomocnicze cz. 4

141
Technologia Informacyjna Technologia Informacyjna Michał Pazdanowski Michał Pazdanowski

Transcript of Materiały pomocnicze cz. 4

Page 1: Materiały pomocnicze cz. 4

Technologia InformacyjnaTechnologia Informacyjna

Michał PazdanowskiMichał Pazdanowski

Page 2: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 22

Etapy przygotowania obliczeńEtapy przygotowania obliczeń

Sformułowanie problemu,Sformułowanie problemu,Przygotowanie algorytmu rozwiązania,Przygotowanie algorytmu rozwiązania,Zapis algorytmu Zapis algorytmu →→ schemat blokowyschemat blokowy,,Kodowanie algorytmu,Kodowanie algorytmu,Testowanie.Testowanie.

Page 3: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 33

Sformułowanie problemuSformułowanie problemu

PrecyzyjnyPrecyzyjny opis zagadnienia:opis zagadnienia:co chcemy uzyskać,co chcemy uzyskać,niezbędne dane,niezbędne dane,tok postępowania prowadzącego do wyniku,tok postępowania prowadzącego do wyniku,opracowanie wyników.opracowanie wyników.

Page 4: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 44

AlgorytmAlgorytm

procedura obliczeniowaprocedura obliczeniowa →→ skończony ciąg skończony ciąg operacji elementarnych,operacji elementarnych,przetwarza przetwarza dane wejściowedane wejściowe w w wynikiwyniki,,dotyczy klasy problemów podobnych,dotyczy klasy problemów podobnych,zależy od metody rozwiązania problemu.zależy od metody rozwiązania problemu.

Page 5: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 55

AlgorytmAlgorytm

poprawny,poprawny,precyzyjny,precyzyjny,przejrzysty,przejrzysty,efektywny,efektywny,wykorzystujący:wykorzystujący:–– biblioteki procedur standardowych,biblioteki procedur standardowych,–– możliwości komputera możliwości komputera →→ wieloprocesorowość.wieloprocesorowość.

Page 6: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 66

Zapis algorytmuZapis algorytmu

język potoczny,język potoczny,język matematyczny,język matematyczny,schemat blokowy,schemat blokowy,języki algorytmiczne.języki algorytmiczne.

Page 7: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 77

Złożoność obliczeniowaZłożoność obliczeniowa

czasowaczasowa –– czas potrzebny na wykonanie czas potrzebny na wykonanie zadania,zadania,pamięciowapamięciowa –– ilość pamięci RAM ilość pamięci RAM potrzebnej na wykonanie zadania,potrzebnej na wykonanie zadania,cel szacowania:cel szacowania:–– określenie ilości zasobów potrzebnych do określenie ilości zasobów potrzebnych do

rozwiązania problemu,rozwiązania problemu,–– skalowanie niezbędnych zasobów w funkcji skalowanie niezbędnych zasobów w funkcji

rozmiaru danych,rozmiaru danych,złożoność złożoność pesymistycznapesymistyczna i i oczekiwanaoczekiwana..

Page 8: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 99

Klasy czynnościKlasy czynności

arytmetyczne,arytmetyczne,logiczne,logiczne,organizacyjne,organizacyjne,wejścia,wejścia,wyjścia.wyjścia.

Page 9: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1010

Schemat blokowy i kodowanieSchemat blokowy i kodowanie

etap pomocniczy,etap pomocniczy,ułatwienie kodowania,ułatwienie kodowania,kontrola poprawności:kontrola poprawności:–– algorytmu,algorytmu,–– programu;programu;

standard języka,standard języka,kompilator,kompilator,dokumentacja.dokumentacja.

Page 10: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1111

Schemat blokowySchemat blokowyPN PN –– 75/E 75/E -- 0122601226

Sieć blokówSieć bloków

TakTak NieNie??++--*/*/ We/We/WyWy STOPSTOP

STARTSTART

11

11

arytmetycznearytmetyczne logicznelogiczne wejściewejściewyjściewyjście

pomocniczepomocnicze

Page 11: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1212

Schemat blokowySchemat blokowy

liniowyliniowy iteracyjnyiteracyjny rozgałęzionyrozgałęziony złożonyzłożony

Page 12: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1313

TestowanieTestowanie

błędy:błędy:–– formalne formalne →→ niezgodność ze standardem, niezgodność ze standardem, –– algorytmu algorytmu →→ problem inny niż zadany,problem inny niż zadany,–– wykonania wykonania →→ błędne dane,błędne dane,

eliminacja:eliminacja:–– formalne formalne →→ kompilator,kompilator,–– algorytmu algorytmu →→ testy,testy,–– wykonania wykonania →→ programowanie defensywne.programowanie defensywne.

Page 13: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1414

Języki programowaniaJęzyki programowania

liniowe liniowe →→ BASIC,BASIC,proceduralne proceduralne →→ FORTRAN,FORTRAN,z grupowaniem danych z grupowaniem danych →→ PASCAL, C,PASCAL, C,obiektowo zorientowane obiektowo zorientowane →→ C++,C++,obiektowe obiektowe → → Visual Basic.Visual Basic.

Page 14: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1515

Programowanie obiektoweProgramowanie obiektowe

StrukturaStruktura →→ tablica uporządkowana przez tablica uporządkowana przez umieszczenie jej elementów w nazwanych umieszczenie jej elementów w nazwanych polach,polach,

KlasaKlasa →→ struktura wraz z zestawem operatorów i struktura wraz z zestawem operatorów i funkcji dostosowanych do jej obsługi,funkcji dostosowanych do jej obsługi,

ObiektObiekt →→ zmienna utworzona zgodnie z opisem zmienna utworzona zgodnie z opisem podanym przez klasę,podanym przez klasę,

MetodaMetoda →→ funkcja przeznaczona do obsługi danej funkcja przeznaczona do obsługi danej klasy obiektów.klasy obiektów.

Page 15: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1616

Visual BasicVisual Basic

Zastosowanie:Zastosowanie:makroinstrukcje makroinstrukcje komponentów pakietu komponentów pakietu MSOfficeMSOffice, , nietypowe funkcje nietypowe funkcje arkuszowe arkuszowe MSExcelMSExcel,,proste problemy proste problemy obliczeniowe;obliczeniowe;

Zalety:Zalety:dostępność,dostępność,użyteczność,użyteczność,otoczenie programowe,otoczenie programowe,prostota języka,prostota języka,

Wady:Wady:??

Page 16: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1717

Visual BasicVisual Basic

wykonywanie działań wykonywanie działań →→ kodkod Visual Basic,Visual Basic,kod kod →→ przechowywany w przechowywany w modułachmodułach::–– wraz z arkuszami wraz z arkuszami .XLS.XLS,,–– edycja przy pomocy edytora edycja przy pomocy edytora VisualBasicVisualBasic,,

moduł moduł →→ zawiera zawiera funkcjefunkcje i i proceduryprocedury..

SubSub Test()Test()Iloczyn = 2*6Iloczyn = 2*6MsgBoxMsgBox „Iloczyn” & Iloczyn„Iloczyn” & Iloczyn

End SubEnd Sub

FunctionFunction Suma(A1,A2) As Suma(A1,A2) As DoubleDoubleSuma=Suma=SqrSqr(A1*A1+A2*A2)(A1*A1+A2*A2)

End FunctionEnd Function

Page 17: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1818

Visual BasicVisual Basicoperacje na operacje na obiektachobiektach::–– skoroszyty, arkusze, zakresy, wykresy,skoroszyty, arkusze, zakresy, wykresy,

obiekty identyczne obiekty identyczne →→ kolekcje kolekcje (obiekty):(obiekty):–– WorksheetsWorksheets → → wszystkie arkusze skoroszytu,wszystkie arkusze skoroszytu,–– ChartsCharts → → wszystkie wykresy skoroszytu,wszystkie wykresy skoroszytu,

obiekty tworzą strukturę hierarchiczną obiekty tworzą strukturę hierarchiczną →→ klasyklasy::ApplicationApplication ((excelexcel),),

WorkbookWorkbook (skoroszyt),(skoroszyt),WorksheetWorksheet (arkusz),(arkusz),

RangeRange (zakres),(zakres),Pivot TablePivot Table (tabela przestawna),(tabela przestawna),

Chart Chart (wykres),(wykres),CommandCommand Bar Bar (pasek narzędzi).(pasek narzędzi).

Page 18: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 1919

Visual BasicVisual Basic

obiekty wyższego rzędu obiekty wyższego rzędu →→ kontenerykontenery obiektów obiektów niższego rzędu:niższego rzędu:ApplicationApplication..WorkbooksWorkbooks(1)(1)ApplicationApplication..WorkbooksWorkbooks(1)(1)..WorksheetsWorksheets(1)(1)ApplicationApplication..WorkbooksWorkbooks(1)(1)..WorksheetsWorksheets(1)(1)..CellsCells(2,2)(2,2)..ValueValue

lokalizacja obiektu w hierarchii lokalizacja obiektu w hierarchii → → ścieżkaścieżka::

Page 19: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2020

Visual BasicVisual Basic

cechy obiektów cechy obiektów → → właściwościwłaściwości::odwołanie: nazwa_obiektuodwołanie: nazwa_obiektu właściwośćwłaściwość

działania na obiekcie działania na obiekcie → → metodymetody::odwołanie: nazwa_obiektuodwołanie: nazwa_obiektu metodametoda

standardowe konstrukcje języków standardowe konstrukcje języków programowania:programowania:

tablice, pętle, struktury. tablice, pętle, struktury.

..

..

Page 20: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2121

Visual BasicVisual Basic

Lista obiektów, ich metod i właściwości:Lista obiektów, ich metod i właściwości:Excel Excel →→ ToolsTools →→ MacroMacro → → VisualBasic VisualBasic EditorEditorVisualBasic EditorVisualBasic Editor →→ ViewView →→ Object Object BrowserBrowserwybrać obiekt wybrać obiekt →→ ExcelExcel lub lub VisualBasicVisualBasic(VBA).(VBA).

Page 21: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2222

Typy instrukcjiTypy instrukcji

arytmetyczna, arytmetyczna, sterująca sterująca →→ zmiana sekwencji wykonania,zmiana sekwencji wykonania,wejścia/wyjścia wejścia/wyjścia →→ przesłanie z/do pamięci,przesłanie z/do pamięci,odwołanie do podprogramu,odwołanie do podprogramu,deklaracja deklaracja →→ informacja dla kompilatora.informacja dla kompilatora.

Page 22: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2323

Symbole językaSymbole języka

literylitery →→ A … ZA … Zcyfrycyfry →→ 0 … 90 … 9znaki specjalne:znaki specjalne:

++ -- // ** ^̂

..

==( )( ) < >< >

,, ““ ‘‘ !! [ ][ ]&&

Page 23: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2424

LiterałyLiterały

bajt:bajt: 22 12 12 3232całkowite:całkowite: --77 2121 121121rzeczywiste:rzeczywiste: 17.123 23.7E+217.123 23.7E+2podwójnej precyzji:podwójnej precyzji: 15.3D+0415.3D+04logiczne:logiczne: TRUE FALSETRUE FALSEtekstowe:tekstowe: ”ALA MA ASA””ALA MA ASA”

Page 24: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2525

ZakresZakres

BYTEBYTEINTEGERINTEGERLONGLONGSINGLE SINGLE --/+/+DOUBLE DOUBLE --/+/+

21474836472147483647--2147483648 2147483648 ÷÷--32768 32768 ÷÷ 3276732767

00 ÷÷ 255255

4.944.94*10 *10 ÷÷ 1.79*101.79*101.1.4040*10 *10 ÷÷ 3.40*103.40*10--4545 3838

--332424 330808

Page 25: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2626

ZakresZakres

1.1.4040*10*10--4545--3.40*103.40*103838 3.40*103.40*103838--1.1.4040*10*10--4545

0 !0 !

00

4.944.94*10*10--324324--1.791.79*10*10330808 1.791.79*10*10330808--4.944.94*10*10--324324

0 !0 !

00

SINGLESINGLE

DOUBLEDOUBLE

Page 26: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2727

Zmienne prosteZmienne prosteidentyfikacja identyfikacja →→ nazwa,nazwa,typ typ →→ zakres zmienności,zakres zmienności,deklaracja typu deklaracja typu →→ określenie typu:określenie typu:

DimDim A A As As IntegerIntegerDimDim J J As As DoubleDoubleDimDim TT TT As As BooleanBooleanDim Dim MsgTxtMsgTxt As As StringStringDim Dim ThetaTheta As As VariantVariant

Page 27: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2828

Zmienne indeksowaneZmienne indeksowane

uporządkowany zbiór elementów uporządkowany zbiór elementów →→ tablica,tablica,uporządkowanie uporządkowanie →→ indeksy,indeksy,zmienna indeksowana zmienna indeksowana →→ element tablicy,element tablicy,deklaracja deklaracja →→ typ, rozmiary i zakres indeksów,typ, rozmiary i zakres indeksów,indeks indeks →→ stała, zmienna, wyrażenie całkowite.stała, zmienna, wyrażenie całkowite.

Page 28: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 2929

Zmienne indeksowaneZmienne indeksowane

DEKLARACJEDEKLARACJEDimDim A (A (1 to 101 to 10, , 1 to 121 to 12) ) As As IntegerInteger

DimDim B (B (--1 to 51 to 5)) As SingleAs Single

11

1010

11 1212

--11

55

AA

BB

Page 29: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3030

Zmienne indeksowaneZmienne indeksowane

ODWOŁANIEODWOŁANIEA(A(II, , JJ)) B(B(--11))

A(A(3*C+J3*C+J, , 66--4*W4*W) ) →→ CC, , JJ, , WW typu typu IntegerInteger lub lub LongLongpamiętanie w porządku leksykograficznym,pamiętanie w porządku leksykograficznym,maksimum 60 wskaźników,maksimum 60 wskaźników,numeracja elementów automatycznie od 0.numeracja elementów automatycznie od 0.

numer kolumnynumer kolumny

numer wierszanumer wiersza

Page 30: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3131

Funkcje standardoweFunkcje standardowe

IntInt(X)(X)FixFix(X)(X)

AbsAbs(X)(X)ExpExp(X)(X)Log(X)Log(X)SgnSgn(X)(X)Sin(X)Sin(X)Cos(X)Cos(X)Tan(X)Tan(X)SqrSqr(X)(X)

|x||x|eexx

lnln(x)(x)znakznaksin(x)sin(x)coscos(x)(x)tgtg(x)(x)xx½½

Page 31: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3232

Funkcje standardoweFunkcje standardowe

ZMIANA TYPUZMIANA TYPUCboolCbool(W)(W)CbyteCbyte(W)(W)CDblCDbl(W)(W)CSngCSng(W)(W)CIntCInt(W)(W)CLngCLng(W)(W)CStrCStr(W)(W)CVarCVar(W)(W)

TEKSTOWETEKSTOWEChrChr(W)(W)LeftLeft((txttxt,L),L)RightRight((txttxt,L),L)Len(Len(txttxt))LtrimLtrim((txttxt))RtrimRtrim((txttxt))TrimTrim((txttxt))MidMid((txttxt,P,L),P,L)

Page 32: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3333

Wyrażenie arytmetyczneWyrażenie arytmetyczne

proste proste →→ stała, zmienna, funkcja,stała, zmienna, funkcja,złożone złożone →→ proste z nawiasami i operatorami,proste z nawiasami i operatorami,kolejność wyznaczania wartości:kolejność wyznaczania wartości:–– wyrażenia składowe, funkcje,wyrażenia składowe, funkcje,–– operacje:operacje:

»» ^̂ →→ potęgowanie,potęgowanie,»» * /* / →→ mnożenie, dzielenie,mnożenie, dzielenie,»» + + -- →→ dodawanie, odejmowanie;dodawanie, odejmowanie;

–– przy równym priorytecie przy równym priorytecie →→ od od lewejlewej do do prawejprawej,,zmiana kolejności zmiana kolejności →→ nawiasy nawiasy ( )( )..

Page 33: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3434

Wyrażenie arytmetyczneWyrażenie arytmetyczneKolejność obliczania wartościKolejność obliczania wartości

log(log(XX))++ASAS**4.14.1--X12X12^̂22//2.1E2.1E--1111++((3.143.14++YY))//0.30.311 223344

55 667788

99

X = A/B*CX = A/B*C →→

X = A/(B*C)X = A/(B*C)→→ szybciej (1 dzielenie)szybciej (1 dzielenie)X = A/B/CX = A/B/C →→ wolniej (2 dzielenia)wolniej (2 dzielenia)

AABB

**CC

AABB**CC

Page 34: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3535

Wyrażenie arytmetyczneWyrażenie arytmetycznetyptyp

przykładyprzykłady

II^̂+ + -- / */ *

RR DPDPII RR DPDPRR RR DPDP

DPDP DPDP DPDP

IIRR

DPDP

AA BB AA^̂BBIIRR

DPDP

IIRR

IIRR

IIRR

IIRR

RRRR

DPDPDPDP

2 W SIN(P) A2 W SIN(P) A--7.3 5.77.3 5.7**ZZ^̂3 (X3 (X--Y)Y)//(V(V++W)W)^̂33

AA//BB**CC →→ AABB

**CC AABB**CC

Page 35: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3636

Wyrażenie logiczneWyrażenie logiczneproste proste →→ stała, zmienna i funkcja logiczna, relacja,stała, zmienna i funkcja logiczna, relacja,złożone złożone →→ proste z nawiasami i operatorami,proste z nawiasami i operatorami,kolejność wyznaczania wartości:kolejność wyznaczania wartości:–– wyrażenia arytmetyczne w relacjach,wyrażenia arytmetyczne w relacjach,–– operatory relacji, funkcje logiczne, nawiasy,operatory relacji, funkcje logiczne, nawiasy,–– NOTNOT →→ negacje,negacje,–– ANDAND →→ koniunkcje,koniunkcje,–– OROR →→ alternatywy,alternatywy,–– XORXOR →→ alternatywy wykluczające,alternatywy wykluczające,–– EQVEQV →→ równoważności,równoważności,–– IMPIMP →→ implikacje,implikacje,

wynik wynik →→ TRUETRUE lub lub FALSEFALSE..

Page 36: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3737

OperatoryOperatory

Logiczne:Logiczne:NOTNOT negacja,negacja,ANDAND koniunkcja,koniunkcja,OROR alternatywa,alternatywa,XORXOR alternatywa alternatywa

wykluczająca,wykluczająca,EQVEQV równoważność,równoważność,IMPIMP implikacja;implikacja;

Relacji:Relacji:== równy,równy,<><> różny,różny,

<< mniejszy,mniejszy,<=<= mniejszy lub równy,mniejszy lub równy,>> większy,większy,>=>= większy lub równy.większy lub równy.

Page 37: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3838

Wyrażenie logiczneWyrażenie logicznePrzykładyPrzykłady

DimDim C C As SingleAs Single, D , D As SingleAs Single, X , X As Single, As Single, YY As SingleAs SingleDimDim A A As As BooleanBoolean, B , B As As BooleanBooleanDimDim W1 W1 As As BooleanBoolean, W2 , W2 As As BooleanBoolean, W3 , W3 As As BooleanBoolean

TRUE FALSE C TRUE FALSE C = = DDW1 W1 AND AND W2 W2 OR OR W3W3C C >= >= D D OR OR A A AND AND BB

A A OR OR B B AND NOT AND NOT X X = = YYA A OR OR (B (B AND AND ( ( NOT NOT (X (X == Y)))Y)))

Page 38: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 3939

Wyrażenie logiczneWyrażenie logiczne

Kolejność obliczania wartościKolejność obliczania wartości

NOTNOT I I >> 0 0 ANDAND I + 2 I + 2 >> 0 0 OROR TRUETRUE11 22

443355

6677

Page 39: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4040

Instrukcja podstawieniaInstrukcja podstawienia

nazwa zmiennejnazwa zmiennej == wyrażenie arytmetycznewyrażenie arytmetycznenazwa zmiennejnazwa zmiennej == wyrażenie logicznewyrażenie logiczne

WW == 71.34571.345ETAETA == ETA+Z*(J+7)*2ETA+Z*(J+7)*2SECSEC == W+SQR(SEC+A)W+SQR(SEC+A)

Page 40: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4141

Instrukcje sterująceInstrukcje sterujące

zmiana kolejności wykonywania instrukcji,zmiana kolejności wykonywania instrukcji,etykieta:etykieta:–– zaczyna się od litery, kończy zaczyna się od litery, kończy ::–– od pierwszej kolumny,od pierwszej kolumny,–– nie każda instrukcja musi ją mieć,nie każda instrukcja musi ją mieć,

typ:typ:–– bezwarunkowe,bezwarunkowe,–– uwarunkowane.uwarunkowane.

Page 41: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4242

GO TOGO TO

bezwarunkowe GO TObezwarunkowe GO TOGo ToGo To etet… … …… … …

etet::

Go To Go To alaala… … …… … …Go To Go To alaala… … …… … …alaala::

Page 42: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4343

IFIF

logiczne IFlogiczne IFIfIf wyr. log.wyr. log. ThenThen instrinstr. . uwuw..

??TT NN

… … …… … …IfIf A < 0. A < 0. ThenThen A = A = --AA

Page 43: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4444

IFIF

logiczne IFlogiczne IFIfIf wyr. log.wyr. log. ThenThen… … …… … …ElseElse… … …… … …End IfEnd If

… … …… … …IfIf A > B A > B ThenThen

A = A + 2. * BA = A + 2. * BElseElse

A = A A = A -- 2. * B2. * BEnd IfEnd If

??TT NN

Page 44: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4545

FORFOR

realizacja cyklu FORrealizacja cyklu FORForFor ii = = w1w1 To To w2w2 Step Step w3w3… … …… … …NextNext

… … …… … …S = 1S = 1For I = 1 To N Step 1For I = 1 To N Step 1

S = S * IS = S * INextNext

??

TT

NN

Page 45: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4646

DODO

realizacja cyklu DOrealizacja cyklu DODo Do WhileWhile wyr. log.wyr. log.… … …… … …LoopLoop

??

TT

NN

… … …… … …A = 10A = 10B = B = --2020Do Do WhileWhile A > BA > B

A = A + A = A + AbsAbs(B)(B)LoopLoop

Page 46: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4747

DODO

realizacja cyklu DOrealizacja cyklu DODoDo… … …… … …Loop WhileLoop While wyr. log.wyr. log.

??

TT

NN

… … …… … …A = 10A = 10B = B = --2020DoDo

A = A + A = A + AbsAbs(B)(B)Loop WhileLoop While A > BA > B

Page 47: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4848

DODO

realizacja cyklu DOrealizacja cyklu DODo Do UntilUntil wyr. log.wyr. log.… … …… … …LoopLoop

??

NN

TT

… … …… … …A = 10A = 10B = B = --2020Do Do UntilUntil A > BA > B

A = A + A = A + AbsAbs(B)(B)LoopLoop

Page 48: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 4949

DODO

realizacja cyklu DOrealizacja cyklu DODoDo… … …… … …Loop UntilLoop Until wyr. log.wyr. log.

??

NN

TT

… … …… … …A = 10A = 10B = B = --2020DoDo

A = A + A = A + AbsAbs(B)(B)Loop UntilLoop Until A > BA > B

Page 49: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5050

CASECASE

struktura CASEstruktura CASESelect CaseSelect Case wyr.wyr.CaseCase aa… … …… … …CaseCase b to cb to c… … …… … …Case ElseCase Else… … …… … …End SelectEnd Select

… … …… … …Select CaseSelect Case IICaseCase --22

I = I = AbsAbs(I)(I)CaseCase 4 To 64 To 6

I = I = SqrSqr(I)(I)Case ElseCase Else

DebugDebug..PrintPrint IIEnd SelectEnd Select

Page 50: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5151

WITHWITH

struktura WITHstruktura WITHWithWith obiektobiekt… … …… … …End WithEnd With

… … …… … …With SelectionWith Selection

Font.Font.BoldBold = TRUE= TRUEFont.Font.ItalicItalic = FALSE= FALSEWrapTextWrapText = FALSE= FALSE

End WithEnd With

Page 51: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5252

On On ErrorError

obsługa błędówobsługa błędówOn On Error GoToError GoTo etet… … …… … …etet::

On On ErrorError Resume Resume NextNext

On On Error GoToError GoTo 00

… … …… … …On On Error GoTo ErrorsError GoTo Errors… … …… … …Exit SubExit SubErrorsErrors::

MsgBoxMsgBox ”Błąd”, _ ”Błąd”, _ vbOKOnlyvbOKOnly,”Błąd _ ,”Błąd _ wykonania”wykonania”

End SubEnd Sub

Page 52: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5353

Wymiana informacjiWymiana informacji

komórki arkusza,komórki arkusza,pliki,pliki,funkcje funkcje InputBoxInputBox, , MsgBoxMsgBox,,formularze użytkownika.formularze użytkownika.

Page 53: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5454

FormatFormat

funkcja FORMAT:funkcja FORMAT:FormatFormat ((ww,”,”ss”)”)wynik wynik →→ łańcuch łańcuch znaków tekstowych,znaków tekstowych,

ww -- wyrażenie do wyrażenie do sformatowania,sformatowania,

ss -- specyfikacjaspecyfikacjaformatu:formatu:»» opis pola,opis pola,»» znaki znaki , . # 0 %, . # 0 %..

Page 54: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5555

FormatFormat,, -- separator tysięcy,separator tysięcy,.. -- separator części dziesiętnej,separator części dziesiętnej,## -- pozycje opcjonalne,pozycje opcjonalne,00 -- pozycje obligatoryjne,pozycje obligatoryjne,%%-- wynik w procentach:wynik w procentach:

Format(4,”0.00%”)Format(4,”0.00%”)Format(3432.211,”#,##0.00”)Format(3432.211,”#,##0.00”)Format(227.1,”#0.00”)Format(227.1,”#0.00”)

Page 55: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5656

FormatFormatKK = = --12451245 , , LL = = 12 12 , , R1R1 == --4233.289784233.28978

TxtTxt = Format(= Format(KK,”,”#,##0.00#,##0.00”)”)TxtTxt = = --1,245.001,245.00

TxtTxt = Format(= Format(LL,”,”#,##0.0%#,##0.0%”)”)TxtTxt = = 1,200.0%1,200.0%

TxtTxt = Format(= Format(R1R1,”,”#0.00#0.00”)”)TxtTxt = = --4233.294233.29

Page 56: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5757

Komórki arkuszaKomórki arkusza

CellsCells((II,,JJ).).ValueValue

… … …… … …X = X = CellsCells(8,2).(8,2).ValueValueCellsCells(5,1).(5,1).ValueValue = Y= Y… … …… … …

II

JJ

CellsCells(I,J)(I,J)

Page 57: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5858

PlikiPliki

→→

112233

5544

66......

REKORDYREKORDY

→→

112233

5544

66......

ZNA

CZN

IK D

OST

ĘPU

ZNA

CZN

IK D

OST

ĘPU

ZNA

CZN

IK D

OST

ĘPU

ZNA

CZN

IK D

OST

ĘPU

Page 58: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 5959

PlikiPliki

zapis:zapis:–– sformatowany,sformatowany,–– niesformatowany,niesformatowany,

dostęp:dostęp:–– sekwencyjny,sekwencyjny,–– bezpośredniego dostępu,bezpośredniego dostępu,

rekord:rekord:–– stałej długości,stałej długości,–– zmiennej długości,zmiennej długości,

operacje:operacje:–– otwarcie,otwarcie,–– zamknięcie,zamknięcie,–– przewijanie,przewijanie,–– zapis/odczyt.zapis/odczyt.

Page 59: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6060

OtwarcieOtwarcieOpenOpen ścieżka ścieżka For For trybtryb Access Access dostępdostęp AsAs ##numer numer

LenLen rekordrekord

ścieżkaścieżka -- nazwa pliku z pełną ścieżką dostępu,nazwa pliku z pełną ścieżką dostępu,trybtryb -- tryb pracy: tryb pracy:

AppendAppend//BinaryBinary//InputInput//OutputOutput//RandomRandomdostępdostęp -- dozwolone operacje: dozwolone operacje:

ReadRead//Write Read WriteWrite Read Writenumernumer -- numer urządzenia (od numer urządzenia (od 11 do do 512512),),rekordrekord -- długość rekordu w bajtach.długość rekordu w bajtach.

Page 60: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6161

ZamknięcieZamknięcie

CloseClose ##numernumer

numernumer -- numer urządzenia wejścia/wyjścia.numer urządzenia wejścia/wyjścia.

Page 61: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6262

Instrukcje we/wyInstrukcje we/wy

wejściewejścieInputInput ##pp,, llwyjściewyjściePrintPrint ##pp,, llWriteWrite ##pp,, ll

pp numer pliku numer pliku wejścia/wyjścia,wejścia/wyjścia,

ll lista wejścia/wyjścia:lista wejścia/wyjścia:w1w1,, w2w2,, w3w3,, ......

Page 62: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6363

Instrukcje we/wyInstrukcje we/wy

PrzykładPrzykładDim MsgTxtDim MsgTxt As As String String DimDim Liczba As Liczba As LongLongInputInput #4, #4, MsgTxtMsgTxt, Liczba, LiczbaPrintPrint #2, #2, MsgTxtMsgTxt, , MsgTxtMsgTxtWriteWrite #5, Liczba#5, LiczbaWriteWrite #6, ”Ala ma kota”#6, ”Ala ma kota”

Page 63: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6464

PlikiPlikiPrzykładPrzykład

… … …… … …OpenOpen ”Plik” For ”Plik” For OutputOutput As #1) As #1) For I=1 To 100For I=1 To 100

WriteWrite #1 A(I)#1 A(I)NextNextCloseClose #1#1… … …… … …

Page 64: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6565

Funkcje we/wyFunkcje we/wy

InputBoxInputBox(”(”OpisOpis”,””,”NagłówekNagłówek”,”,TypeType:= #:= #))

Page 65: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6666

Funkcje we/wyFunkcje we/wy

Typ (Typ (##):):00 -- formuła MSformuła MS--ExcelExcel11 -- liczbaliczba22 -- łańcuch znakówłańcuch znaków44 -- stała logiczna (stała logiczna (TrueTrue lub lub FalseFalse))88 -- zakres komórek (obiekt zakres komórek (obiekt RangeRange))

1616 -- wartość błędna (np. wartość błędna (np. #N/A#N/A))6464 -- tablica wartościtablica wartości

Dopuszcza się sumowanie powyższych wartości.Dopuszcza się sumowanie powyższych wartości.

Page 66: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6767

Funkcje we/wyFunkcje we/wy

MsgBoxMsgBox(”(”TekstTekst”,”,PrzyciskiPrzyciski,”,”NagłówekNagłówek”)”)

Page 67: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6868

Funkcje we/wyFunkcje we/wy

Przyciski =Przyciski =00

11

22

33

44

55

Przyciski =Przyciski =1616

3232

4848

6464

Page 68: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 6969

Formularze użytkownikaFormularze użytkownika

formularz użytkownika,formularz użytkownika,formanty formanty ActiveActive--X,X,obsługa zdarzeń,obsługa zdarzeń,procedury użytkownika (typu procedury użytkownika (typu PrivatePrivate).).

Page 69: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7070

Formularz użytkownikaFormularz użytkownika

Page 70: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7171

Formularz użytkownikaFormularz użytkownika

UserFormUserForm##metody:metody:–– CopyCopy–– CutCut–– ShowShow–– HideHide–– LoadLoad–– UnloadUnload

własności:własności:–– CaptionCaption–– EnabledEnabled–– VisibleVisible–– HeightHeight–– WidthWidth–– LeftLeft–– TopTop

Page 71: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7272

Formularz użytkownikaFormularz użytkownika

Lista własności formularza Lista własności formularza według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,czcionka,czcionka,różne,różne,obrazek,obrazek,pozycja,pozycja,przewijanieprzewijanie

Page 72: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7373

Formanty Formanty ActiveActive--XX

LabelLabel##zdarzenia:zdarzenia:–– ClickClick–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– CaptionCaption–– EnabledEnabled–– FontFont–– TextAlignTextAlign

Page 73: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7474

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,czcionka,czcionka,różne,różne,obrazek,obrazek,pozycjapozycja

Page 74: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7575

Formanty Formanty ActiveActive--XX

TextBoxTextBox##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– EnabledEnabled–– FontFont–– TextAlignTextAlign–– TextLengthTextLength–– ValueValue

Page 75: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7676

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,pozycja,pozycja,przewijanieprzewijanie

Page 76: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7777

Formanty Formanty ActiveActive--XX

ComboBoxComboBox##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– ColumnColumn–– EnabledEnabled–– FontFont–– ListList–– TextAlignTextAlign–– TextLengthTextLength–– ValueValue

Page 77: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7878

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,pozycjapozycja

Page 78: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 7979

Formanty Formanty ActiveActive--XX

ListBoxListBox##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– EnabledEnabled–– FontFont–– ListList–– TextAlignTextAlign–– TextLenthTextLenth–– ValueValue

Page 79: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8080

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,pozycjapozycja

Page 80: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8181

Formanty Formanty ActiveActive--XX

ToggleButtonToggleButton##zdarzenia:zdarzenia:–– ClickClick–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– CaptionCaption–– EnabledEnabled–– FontFont–– TextAlignTextAlign–– ValueValue

Page 81: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8282

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,obrazek,obrazek,pozycjapozycja

Page 82: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8383

Formanty Formanty ActiveActive--XX

CommandButtonCommandButton##zdarzenia:zdarzenia:–– ClickClick–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– CaptionCaption–– EnabledEnabled–– FontFont

Page 83: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8484

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,czcionka,czcionka,różne,różne,obrazek,obrazek,pozycjapozycja

Page 84: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8585

Formanty Formanty ActiveActive--XX

FrameFrame##zdarzenia:zdarzenia:–– ClickClick–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– CaptionCaption–– ConrolsConrols–– EnabledEnabled–– FontFont

Page 85: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8686

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,czcionka,czcionka,różne,różne,obrazek,obrazek,pozycja,pozycja,przewijanieprzewijanie

Page 86: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8787

Formanty Formanty ActiveActive--XX

MultiPageMultiPage##zdarzenia:zdarzenia:–– ClickClick–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– EnabledEnabled–– FontFont–– PagesPages–– ValueValue

Page 87: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8888

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,czcionka,czcionka,różne,różne,pozycja,pozycja,zakładkizakładki

Page 88: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 8989

Formanty Formanty ActiveActive--XX

ScrollBarScrollBar##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– ScrollScroll

własności:własności:–– DelayDelay–– EnabledEnabled–– MaxMax–– MinMin–– SmallChangeSmallChange–– ValueValue

Page 89: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9090

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,różne,różne,pozycja,pozycja,przewijanieprzewijanie

Page 90: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9191

Formanty Formanty ActiveActive--XX

SpinButtonSpinButton##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– SpinDownSpinDown–– SpinUpSpinUp

własności:własności:–– DelayDelay–– EnabledEnabled–– MaxMax–– MinMin–– SmallChangeSmallChange–– ValueValue

Page 91: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9292

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,pozycjapozycja

Page 92: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9393

Formanty Formanty ActiveActive--XX

ImageImage##zdarzenia:zdarzenia:–– ClickClick–– DblClickDblClick–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– EnabledEnabled

Page 93: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9494

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,różne,różne,obrazek,obrazek,pozycjapozycja

Page 94: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9595

Formanty Formanty ActiveActive--XX

RefEditRefEdit##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– CancelCancel–– DefaultDefault–– EnabledEnabled–– FontFont–– HeightHeight–– WidthWidth–– ValueValue

Page 95: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9696

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,pozycja,pozycja,przewijanieprzewijanie

Page 96: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9797

Formanty Formanty ActiveActive--XX

CheckBoxCheckBox##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– AlignmentAlignment–– CaptionCaption–– EnabledEnabled–– FontFont–– TextAlignTextAlign–– ValueValue

Page 97: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9898

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,obrazek,obrazek,pozycjapozycja

Page 98: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 9999

Formanty Formanty ActiveActive--XX

OptionButtonOptionButton##zdarzenia:zdarzenia:–– ChangeChange–– KeyDownKeyDown–– KeyPressKeyPress–– KeyUpKeyUp–– MouseDownMouseDown–– MouseMoveMouseMove–– MouseUpMouseUp

własności:własności:–– AlignmentAlignment–– CaptionCaption–– EnabledEnabled–– FontFont–– TextAlignTextAlign–– ValueValue

Page 99: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 100100

Formanty Formanty ActiveActive--XX

Lista własności formantu Lista własności formantu według kategorii:według kategorii:

wygląd,wygląd,zachowanie,zachowanie,dane,dane,czcionka,czcionka,różne,różne,obrazek,obrazek,pozycjapozycja

Page 100: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 101101

Formularze użytkownikaFormularze użytkownikaPrzykładPrzykład

… … …… … …UserForm1.ShowUserForm1.ShowX0 = UserForm1.TextBox1.ValueX0 = UserForm1.TextBox1.ValueY0 = UserForm1.TextBox2.ValueY0 = UserForm1.TextBox2.ValueR = UserForm1.TextBox3.ValueR = UserForm1.TextBox3.ValueN = UserForm1.TextBox4.ValueN = UserForm1.TextBox4.Value… … …… … …

Page 101: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 102102

Formularze użytkownikaFormularze użytkownika

PrzykładPrzykładPrivate Sub CommandButton1_Click()Private Sub CommandButton1_Click()

If Not IsNumeric(TextBox1.Value) Then TextBox1.Value = If Not IsNumeric(TextBox1.Value) Then TextBox1.Value = ””20200”0”If Not IsNumeric(TextBox2.Value) Then TextBox2.Value = If Not IsNumeric(TextBox2.Value) Then TextBox2.Value = ””20200”0”If Not IsNumeric(TextBox3.Value) Then TextBox3.Value = If Not IsNumeric(TextBox3.Value) Then TextBox3.Value = ””1010””If Not IsNumeric(TextBox4.Value) Then TextBox4.Value = If Not IsNumeric(TextBox4.Value) Then TextBox4.Value = ””33””UserForm4.HideUserForm4.Hide

End SubEnd Sub

Page 102: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 103103

Wybrane metodyWybrane metodyRangeRange.Sort(.Sort(Klucz1Klucz1, , Porządek1Porządek1, , Klucz2Klucz2, , TypTyp, ,

Porządek2Porządek2, , Klucz3Klucz3, , Porządek3Porządek3, , NagłówekNagłówek, , RozmiarRozmiar, , OrientacjaOrientacja))

KluczKlucz -- podstawa sortowania (wiersz lub kolumna)podstawa sortowania (wiersz lub kolumna)PorządekPorządek -- kolejność sortowania (kolejność sortowania (xlAscendingxlAscending lub lub

xlDescendingxlDescending))TypTyp -- tylko dla tabel przestawnychtylko dla tabel przestawnychNagłówekNagłówek -- czy jest nagłówek (czy jest nagłówek (xlYesxlYes, , xlNoxlNo, , xlGuessxlGuess))RozmiarRozmiar -- rozróżniać duże litery (rozróżniać duże litery (TrueTrue, , FalseFalse))OrientacjaOrientacja -- kierunek sortowania (kierunek sortowania (xlSortRowsxlSortRows, ,

xlSortColumnsxlSortColumns))

Page 103: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 104104

Wybrane metodyWybrane metody

ApplicationApplication..FindFileFindFile

Page 104: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 105105

Wybrane metodyWybrane metody

ApplicationApplication..GetOpenFilenameGetOpenFilename

Page 105: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 106106

Wybrane metodyWybrane metody

ApplicationApplication..GetOpenFilenameGetOpenFilename((FiltrFiltr, , IndeksIndeks, , TytułTytuł, , WieleWiele))

FiltrFiltr -- kryterium wyboru plików (kryterium wyboru plików (””All FilesAll Files (*.*), (*.*), *.*”*.*”))

IndeksIndeks -- wskaźnik do kryteriów wyboru plików wskaźnik do kryteriów wyboru plików (gdy więcej niż jedno)(gdy więcej niż jedno)

TytułTytuł -- nagłówek okna dialogu (nagłówek okna dialogu (OpenOpen))WieleWiele -- możliwość wyboru wielu plików (możliwość wyboru wielu plików (TrueTrue, ,

FalseFalse))

Page 106: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 107107

Wybrane metodyWybrane metody

ApplicationApplication..GetSaveAsFilenameGetSaveAsFilename

Page 107: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 108108

Wybrane metodyWybrane metody

ApplicationApplication..GetSaveAsFilenameGetSaveAsFilename((NazwaNazwa, , FiltrFiltr, , IndeksIndeks, , TytułTytuł))

NazwaNazwa -- sugerowana nazwa pliku(sugerowana nazwa pliku(”Book1.”Book1.xlsxls””))FiltrFiltr -- kryterium wyboru plików (kryterium wyboru plików (””All FilesAll Files (*.*), (*.*),

*.*”*.*”))IndeksIndeks -- wskaźnik do kryteriów wyboru plików wskaźnik do kryteriów wyboru plików

(gdy więcej niż jedno)(gdy więcej niż jedno)TytułTytuł -- nagłówek okna dialogu (nagłówek okna dialogu (SaveSave))

Page 108: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 109109

segmentsegment FUNCTIONFUNCTION

FunctionFunction nazwa nazwa ((arg1arg1,, arg2arg2,, ......)) AsAs typ typ … … …… … …nazwa nazwa == wyrażeniewyrażenie… … …… … …

Exit FunctionExit Function… … …… … …nazwa nazwa == wyrażeniewyrażenie… … …… … …

End FunctionEnd Function

Segmenty koduSegmenty kodu

Page 109: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 110110

nazwa jednoznaczna w modulenazwa jednoznaczna w modulewymiana informacji wymiana informacji →→ parametryparametry ++ nazwanazwazgodność parametrów co do:zgodność parametrów co do:–– liczbyliczby–– typutypu–– kolejnościkolejności

FFunctionunction AbsolAbsol((ArgArg)) As As LongLongIf ArgIf Arg >= 0 >= 0 ThenThen

AbsolAbsol = = ArgArgElseElse

AbsolAbsol = = --ArgArgEnd IfEnd If

EEnd Functionnd FunctionWabsWabs==AbsolAbsol(W)(W)

nagłóweknagłówek

wywołaniewywołanie

podstawieniepodstawienie

podstawieniepodstawienie

FunkcjaFunkcja

Page 110: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 111111

segment SUBROUTINEsegment SUBROUTINE

SubSub nazwa nazwa ((arg1arg1,, arg2arg2,, ......) ) … … …… … …

Exit SubExit Sub… … …… … …

End SubEnd Sub

Segmenty koduSegmenty kodu

Page 111: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 112112

ProceduraProceduranazwa jednoznaczna w module,nazwa jednoznaczna w module,wymiana informacji wymiana informacji →→ parametryparametry,,zgodność parametrów co do:zgodność parametrów co do:–– liczby,liczby,–– typu,typu,–– kolejności.kolejności.

SSubub QuadQuad((XX,,YY))Y = X*X*X*XY = X*X*X*X

EEnd Subnd Sub

CCallall QuadQuad((WW,,W4W4))DebugDebug..PrintPrint W4W4

nagłóweknagłówek

wywołaniewywołanie

Page 112: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 113113

Excel Excel ObjectsObjects →→ obiekty Excela:obiekty Excela:Sheet1Sheet1Sheet2Sheet2… … …… … …

FormsForms →→ dialogi użytkownika:dialogi użytkownika:Dialog1Dialog1Dialog2Dialog2… … …… … …

ModulesModules →→ funkcje i procedury:funkcje i procedury:Module1Module1Module2Module2… … …… … …

Struktura projektuStruktura projektu

procedury obsługi zdarzeń procedury obsługi zdarzeń na arkuszachna arkuszach

procedury obsługi zdarzeń procedury obsługi zdarzeń w dialogach użytkownikaw dialogach użytkownika

funkcje i procedury funkcje i procedury użytkownika użytkownika

Page 113: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 114114

Struktura projektuStruktura projektu

Obiekty Excela:Obiekty Excela:prywatne procedury obsługi zdarzeń prywatne procedury obsługi zdarzeń na arkuszach i skoroszyciena arkuszach i skoroszycie

Formularze użytkownika:Formularze użytkownika:prywatne procedury obsługi zdarzeń prywatne procedury obsługi zdarzeń na formularzach użytkownikana formularzach użytkownika

Moduły:Moduły:pozostałe procedurypozostałe procedury

Page 114: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 115115

Struktura modułuStruktura modułu

opcje,opcje,deklaracje typudeklaracje typuzmiennych modułu,zmiennych modułu,segmenty segmenty FunctionFunction::deklaracje typu zmiennych deklaracje typu zmiennych lokalnych,lokalnych,kod funkcji,kod funkcji,

segmenty segmenty SubSub::deklaracje typu zmiennych deklaracje typu zmiennych lokalnych,lokalnych,kod procedur.kod procedur.

Option ExplicitOption ExplicitOption BaseOption Base 00DimDim X as X as BooleanBoolean… … …… … …SubSub Ala(X)Ala(X)DimDim Y As Y As Boolean Boolean … … …… … …FunctionFunction Eta(X) As Eta(X) As LongLong

Page 115: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 116116

GrafikaGrafika

XX

YY

(0,0)(0,0)

Page 116: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 117117

Grafika Grafika -- kolekcja kolekcja ShapesShapes

krzywa krzywa BezieraBezieraAddCurveAddCurve macierzmacierz

X1X1 Y1Y1

X2X2 Y2Y2

X3X3 Y3Y3

X4X4 Y4Y4

XX

YY11

22

33

44

… … …… … …DimDim A (1 to 4, 1 to 2) As SingleA (1 to 4, 1 to 2) As SingleA(1,1) = X1A(1,1) = X1A(1,2) = Y1A(1,2) = Y1… … …… … …A(4,2) = Y4A(4,2) = Y4SheetsSheets(1).(1).ShapesShapes..AddCurveAddCurve AA… … …… … …

Page 117: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 118118

Grafika Grafika -- kolekcja kolekcja ShapesShapes

łamanałamanaAddPolylineAddPolyline macierzmacierz

… … …… … …DimDim A (1 to 5, 1 to 2) As SingleA (1 to 5, 1 to 2) As SingleA(1,1) = X1A(1,1) = X1A(1,2) = Y1A(1,2) = Y1… … …… … …A(5,2) = Y5A(5,2) = Y5SheetsSheets(1).(1).ShapesShapes..AddPolylineAddPolyline AA… … …… … …

XX

YY11

22

33

44

55

X1X1 Y1Y1

X2X2 Y2Y2

X3X3 Y3Y3

X4X4 Y4Y4

X5X5 Y5Y5

Page 118: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 119119

Grafika Grafika -- kolekcja kolekcja ShapesShapes

odcinekodcinekAddLineAddLine x1x1,,y1y1,,x2x2,,y2y2

XX

YY11

22

… … …… … …xpoczxpocz = X1= X1ypoczypocz = Y1= Y1xkoncxkonc = X2= X2ykoncykonc = Y2= Y2SheetsSheets(1).(1).ShapesShapes..AddLine AddLine

xpoczxpocz, , ypoczypocz, , xkoncxkonc, , ykoncykonc… … …… … …

Page 119: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 120120

Grafika Grafika -- kolekcja kolekcja ShapesShapes

etykietaetykietaAddLabelAddLabel oo,,xx,,yy,,ww,,hh

… … …… … …orient = 1orient = 1x = X1x = X1y = Y1y = Y1w = 100w = 100h = 30h = 30SheetsSheets(1).(1).ShapesShapes..AddLabelAddLabel

orient, x, y, w, horient, x, y, w, h… … …… … …

XX

YY

11

hh

ww

oo –– orientacja (1 do 6)orientacja (1 do 6)ww –– szerokośćszerokośćhh –– wysokośćwysokość

Page 120: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 121121

Grafika Grafika -- kolekcja kolekcja ShapesShapes

okno tekstoweokno tekstoweAddTextboxAddTextbox oo,,xx,,yy,,ww,,hh

… … …… … …orient = 1orient = 1x = X1x = X1y = Y1y = Y1w = 100w = 100h = 30h = 30SheetsSheets(1).(1).ShapesShapes..AddTextBoxAddTextBox

orient, x, y, w, horient, x, y, w, h… … …… … …

XX

YY

11

hh

ww

oo –– orientacja (1 do 6)orientacja (1 do 6)ww –– szerokośćszerokośćhh –– wysokośćwysokość

Page 121: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 122122

Grafika Grafika -- kolekcja kolekcja ShapesShapes

obiekt graficznyobiekt graficznyAddShapeAddShape tt,,xx,,yy,,ww,,hh

… … …… … …type type = 93= 93x = X1x = X1y = Y1y = Y1w = 100w = 100h = 100h = 100SheetsSheets(1).(1).ShapesShapes..AddShape AddShape

typetype, x, y, w, h, x, y, w, h… … …… … …

tt –– typ (1 do 138)typ (1 do 138)ww –– szerokośćszerokośćhh –– wysokośćwysokość

XX

YY

11

hh

ww

Page 122: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 123123

Grafika Grafika -- kolekcja kolekcja ShapesShapes

własności:własności:–– CountCount -- liczba obiektów w kolekcjiliczba obiektów w kolekcji–– RangeRange -- podzbiór obiektów w kolekcjipodzbiór obiektów w kolekcji

Page 123: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 124124

Grafika Grafika -- obiekt obiekt ShapeShape

metody:metody:–– CopyCopy -- kopiuj,kopiuj,–– CutCut -- wytnij,wytnij,–– DeleteDelete -- usuń,usuń,–– FlipFlip -- odbij,odbij,–– GroupGroup -- połącz,połącz,–– UngroupUngroup -- rozbij,rozbij,–– ZOrderZOrder -- kolejność kolejność

wyświetlania,wyświetlania,

własności:własności:–– HeightHeight -- wysokość,wysokość,–– WidthWidth -- szerokość,szerokość,–– VisibleVisible -- widoczność,widoczność,–– NameName -- nazwa,nazwa,–– FillFill -- wypełnienie,wypełnienie,–– ZOrderPositionZOrderPosition

-- pozycja w pozycja w koko--lejności wyświetlania.lejności wyświetlania.

Page 124: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 125125

Grafika Grafika –– metoda metoda FlipFlip

..FlipFlip((msoFlipVerticalmsoFlipVertical))..FlipFlip((msoFlipHorizontalmsoFlipHorizontal))

Page 125: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 126126

Grafika Grafika –– metoda metoda GroupGroup

Uwaga:Uwaga:grupa jest traktowana jak jeden obiekt,grupa jest traktowana jak jeden obiekt,zmienia liczbę obiektów w kolekcji zmienia liczbę obiektów w kolekcji ShapesShapes,,zmienia indeksy obiektów w kolekcji.zmienia indeksy obiektów w kolekcji.

⇒⇒

Page 126: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 127127

Grafika Grafika –– metoda metoda UngroupUngroup

Uwaga:Uwaga:wykonalna tylko dla obiektów utworzonych wykonalna tylko dla obiektów utworzonych metodą metodą GroupGroup,,zmienia liczbę obiektów w kolekcji zmienia liczbę obiektów w kolekcji ShapesShapes,,zmienia indeksy obiektów w kolekcji.zmienia indeksy obiektów w kolekcji.

⇐⇐

Page 127: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 128128

Grafika Grafika –– metoda metoda IncrementRotationIncrementRotation

..IncrementRotationIncrementRotation ––15.15...IncrementRotationIncrementRotation ––15.15. ..IncrementRotationIncrementRotation ––15.15.

Page 128: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 129129

Grafika Grafika –– własność własność RotationRotation

..RotationRotation = = --45.45...RotationRotation = = --15.15. ..RotationRotation = = --30.30.

Page 129: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 130130

Grafika Grafika –– metoda metoda ZOrderZOrder1

23

45

67

23

4

15

67

12

3

74

56

12

3

54

67

12

4

35

67

..ZOrderZOrder((msoBringToFrontmsoBringToFront))

..ZOrderZOrder((msoSendBackwardmsoSendBackward))

..ZOrderZOrder((msoBringForwardmsoBringForward))

..ZOrderZOrder((msoSendToBackmsoSendToBack))

Page 130: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 131131

Grafika Grafika –– funkcja funkcja RGBRGB

… … …… … …R = 128R = 128G = 128G = 128B = 255B = 255SheetsSheets(1).(1).ShapesShapes(1).(1).ColorColor = =

RGB(R,G,B)RGB(R,G,B)… … …… … …

kolorkolorRGB (R, RGB (R, GG, , BB))RRed ed = 0 = 0 ÷÷ 255,255,GGreen reen = 0 = 0 ÷÷ 255,255,BBlue lue = 0 = 0 ÷÷ 255;255;

Page 131: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 132132

Grafika Grafika –– funkcja funkcja RGBRGB

Czarny Czarny –– RGB(0,0,0),RGB(0,0,0),Niebieski Niebieski –– RGB(0,0,255),RGB(0,0,255),Zielony Zielony –– RGB(0,255,0),RGB(0,255,0),Czerwony Czerwony –– RGB(255,0,0),RGB(255,0,0),Turkusowy Turkusowy –– RGB(0,255,255),RGB(0,255,255),Purpurowy Purpurowy –– RGB(255,0,255),RGB(255,0,255),Żółty Żółty –– RGB(255,255,0),RGB(255,255,0),Biały Biały –– RGB(255,255,255),RGB(255,255,255),

Page 132: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 133133

GrafikaGrafikaPrzykładPrzykład

With SheetsWith Sheets(1).(1).ShapesShapes..AddTextBoxAddTextBox(1,50,50,100,30)(1,50,50,100,30)..NameName = ”Text1”= ”Text1”..LineLine..VisibleVisible = = msoTruemsoTrue..FillFill..VisibleVisible = = msoTruemsoTrue..FillFill..ForeColorForeColor.RGB = RGB(192,192,0).RGB = RGB(192,192,0)WithWith ..TextFrameTextFrame

..CharactersCharacters..TextText = ”Liczba królików”= ”Liczba królików”

..HorizontalAlignmentHorizontalAlignment = = xlHalignCenterxlHalignCenter

..VerticalAlignmentVerticalAlignment = = xlValignCenterxlValignCenter

..CharactersCharacters.Font..Font.BoldBold = = TrueTrueEnd WithEnd With

End WithEnd With

obramowanieobramowanie

w pioniew pionie

wypełnieniewypełnienie

w poziomiew poziomie

półgrubypółgruby

kolor wypełnieniakolor wypełnienia

Page 133: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 134134

GrafikaGrafikaPrzykładPrzykład

Page 134: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 135135

GrafikaGrafikaPrzykładPrzykład

For J = 0 To 5 Step 1For J = 0 To 5 Step 1I = JI = JIf J > 2 Then I = 5 If J > 2 Then I = 5 -- JJWith Sheets(1).Shapes.AddShape(93,10+J*40,10+I*40,40,40)With Sheets(1).Shapes.AddShape(93,10+J*40,10+I*40,40,40)

.Name = .Name = ””StarStar”” & J& J

.Line.Visible = msoTrue.Line.Visible = msoTrue

.Fill.Visible = msoTrue.Fill.Visible = msoTrue

.Fill.ForeColor.RGB = RGB(0,51*J,255.Fill.ForeColor.RGB = RGB(0,51*J,255--51*J)51*J)

.Adjustments.Item(1) = CSng(I) / 10.Adjustments.Item(1) = CSng(I) / 10End WithEnd With

Next JNext J

obramowanieobramowaniewypełnieniewypełnienie

położenie kontrolkipołożenie kontrolki

Page 135: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 136136

GrafikaGrafikaPrzykładPrzykład

Page 136: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 137137

Tworzenie programuTworzenie programuEDYCJAEDYCJA

KOMPILACJAKOMPILACJA

LINKOWANIELINKOWANIE

TESTYTESTY

BŁĘDYBŁĘDYTAKTAK

NIENIE

BŁĘDYBŁĘDYTAKTAK

NIENIE

ToolsTools →→ MacroMacro →→ VBEditorVBEditor

w trakcie wykonywaniaw trakcie wykonywania

w trakcie wykonywaniaw trakcie wykonywania

algorytmualgorytmu

Page 137: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 138138

PodsumowaniePodsumowanie

Etapy przygotowania obliczeń,Etapy przygotowania obliczeń,Programowanie obiektowe,Programowanie obiektowe,Języki programowania,Języki programowania,Język Visual Basic.Język Visual Basic.

Page 138: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 139139

PodsumowaniePodsumowanie

Język Visual Basic:Język Visual Basic:Symbole języka,Symbole języka,Zmienne proste i złożone,Zmienne proste i złożone,Wyrażenia arytmetyczne i logiczne,Wyrażenia arytmetyczne i logiczne,Podstawowe struktury,Podstawowe struktury,Operacje wejścia/wyjścia,Operacje wejścia/wyjścia,Segmenty kodu.Segmenty kodu.

Page 139: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 140140

PodsumowaniePodsumowanie

Język Visual Basic:Język Visual Basic:Formularze użytkownika,Formularze użytkownika,Formanty Formanty ActiveActive--X (obsługa zdarzeń),X (obsługa zdarzeń),Grafika (kolekcja Grafika (kolekcja ShapesShapes),),Tworzenie i uruchamianie programu.Tworzenie i uruchamianie programu.

Page 140: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 141141

PodsumowaniePodsumowanie

wykonywanie działańwykonywanie działań →→ kod kod VisualBasicVisualBasic,,przechowywanie przechowywanie →→ modułymoduły::–– wraz z skoroszytami XLS,wraz z skoroszytami XLS,–– edycja przy pomocy Edytora edycja przy pomocy Edytora

VisualBasicVisualBasic,,moduł moduł →→ funkcjefunkcje i i proceduryprocedury,,przedmiot działaniaprzedmiot działania →→ obiektyobiekty::–– ponad 100 klas obiektów w Excelu,ponad 100 klas obiektów w Excelu,–– skoroszyty, arkusze, zakresy, wykresy, ...skoroszyty, arkusze, zakresy, wykresy, ...

Page 141: Materiały pomocnicze cz. 4

3 marca 20103 marca 2010 Michał PazdanowskiMichał Pazdanowski 142142

BibliografiaBibliografia

1.1. „Microsoft Visual Basic „Microsoft Visual Basic User ManualUser Manual”, ”, Microsoft Microsoft CorpCorp. 2000.. 2000.

2.2. „Programowanie Excel 2000 Visual Basic”, „Programowanie Excel 2000 Visual Basic”, John WalkenbachJohn Walkenbach, , RmRm, 2000., 2000.

3.3. „Visual Basic nie tylko dla orłów”, „Visual Basic nie tylko dla orłów”, Greg PerryGreg Perry, , IntersoftlandIntersoftland, 1995. , 1995.

4.4. „Visual Basic 6 to proste”, „Visual Basic 6 to proste”, Stephen MorrisStephen Morris, , RmRm, , 2002.2002.

5.5. „Visual Basic 6 w 21 dni”, „Visual Basic 6 w 21 dni”, Greg PerryGreg Perry, , RmRm, , 1999. 1999.