Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Podobne prezentacje


Prezentacja na temat: ""— Zapis prezentacji:

204 Obiekty w VBA Czym jest obiekt? Obiekty organizowane są w hierarchii
jest „przedmiotem” kontrolowanym przez VB, obiektem jest arkusz, wykres, pasek narzędzi, przycisk, Excel ma ponad 100 obiektów. Obiekty organizowane są w hierarchii niektóre z nich zawierają w sobie inne obiekty, np. sam Excel stanowi obiekt zwany aplikacją, zaś obiekt aplikacja zawiera w sobie obiekty takie jak: arkusz, paski narzędzi itd.

205 Elementy programowania
Kolekcje niektóre obiekty są do siebie podobne, np. arkusze w skoroszycie, kolekcja to zbiór danych obiektów, kolekcje są również obiektami, najczęściej używane kolekcje obiektów Excela: kolekcja Sheets (zawiera arkusze i wykresy), kolekcja Workbooks, kolekcja Worksheets, kolekcja Windows. Elementy programowania

206 Właściwości obiektów właściwości – to zbiór cech, które opisują obiekt i czynią go użytecznym, np. obiekt Workbook ma własność Name, a obiekt Range: Name, Row, Font itd. właściwość w danej chwili może przyjmować tylko jedną wartość, ustawiane mogą być w oknie Właściwości lub bezpośrednio w kodzie zdarzeń, niektóre właściwości są również obiektami, np. dla obiektu Range – można zmienić wygląd wybranego zakresu komórek przez zmianę własności Font, jednak Font może mieć różne nazwy, rozmiary itd. (cechy te są właściwościami czcionki); ponieważ Font ma właściwości – musi być obiektem!

207 Elementy programowania
Metody każdemu obiektowi przypisano odpowiedni zbiór metod, własności zmieniają wygląd obiektu, natomiast za pomocą metod możliwe jest wykonanie określonych czynności, mogą mieć opcjonalne parametry, które określają w jaki sposób metoda ma być wykonana, Elementy programowania

208 Elementy programowania
Przykład metody Obiekt Range posiada metody: wymazujące zawartość komórki: ClearConntents, wymazujące format komórki: ClearFormats, lub wymazujące wszystko (format i zawartość): Clear, Elementy programowania

209 Jak wyszukiwać obiekty?
Aby łatwiej zrozumieć hierarchię obiektów np. Excela, korzystamy z diagramu obiektów w Pomocy Visual Basica Elementy programowania

210

211 Range Worksheet.Range Workbook.Worksheet.Range Application.Workbook.Worksheet.Range

212 Elementy programowania
Składnia i gramatyka zasada 1: Odwoływanie się do właściwości obiektu Range(„A4”).Value obiekt właściwość ActiveCell.Offset(3,2) obiekt właściwość argumenty Elementy programowania

213 Elementy programowania
Składnia i gramatyka zasada 2: Zmiana wartości danej własności obiektu na inną Range(„A4”).Value = 25 obiekt właściwość wartość Range(„A4”).Value = 25 ActiveCell.Font.Name = „Dzień Dobry” ActiveCell.Font.Bold = True Elementy programowania

214 Elementy programowania
Składnia i gramatyka zasada 3: Odczytywanie bieżącej wartości danej właściwości obiektu obiekt właściwość Granica = Range(„A4”).Value zmienna Elementy programowania

215 Elementy programowania
Składnia i gramatyka zasada 4: Odwoływanie się do metody danego obiektu obiekt metoda Range(„A4”).ClearContents Elementy programowania

216 Operacje związane z komórkami
jak je zaznaczać? jak wpisywać dane do komórek? jak nadać im nazwy? jak się formatuje? przesuwa? kopiuje? wymazuje? Elementy programowania

217 Elementy programowania
Obiekt: RANGE odwołanie do pojedynczej komórki lub zakresu komórek, Range jest obiektem obiektu Worksheet, dostęp do obiektu Range umożliwiają trzy własności: Range, Cells, Offset. Elementy programowania

218 Właściwość Range zwraca komórkę lub zakres komórek,
odwołanie należy podać w stylu A1 i w cudzysłowie: Czynność w VBA Kod Wybierz pojedynczą komórkę np. A5 Range(„A5”).Select Wybierz zakres komórek np. A6:A10 Range(„A6:A10”).Select Wybierz kilka nie przylegających do siebie komórek Range(„A1, B6, C12).Select Wybierz kilka nie przylegających do siebie komórek i zakresów Range(„A11:D11, B6, C12).Select

219 Właściwość Cells wymaga zazwyczaj dwóch argumentów
Argument 1: wskazuje numer wiersza Argument 2: wskazuje numer kolumny Czynność w VBA Kod Wybierz pojedynczą komórkę np. A5 Cells(5, 1).Select lub Cells(5, „A”).Select Wybierz zakres komórek np. A6:A10 Range(Cells(6, 1), Cells(10, 1)). Select Wybierz wszystkie komórki w arkuszu Cells.Select

220 Arkusz jako kolekcja komórek
Czynność w VBA Kod Wybierz komórkę A1 Cells(1).Select lub Cells.Item(1).Select Wybierz komórkę C1 Cells(3).Select Cells.Item(3).Select Wybierz komórkę A2 Cells(257).Select Cells.Item(257).Select Elementy programowania

221 Właściwość Offset w zaznaczaniu komórek
jest to inny sposób odwoływania się do komórek, nie zawsze wiemy gdzie aktualnie się znajdujemy na arkuszu, właściwość Offset oblicza nowy zakres komórek przesuwając zakres początkowy o określoną liczbę wierszy (kolumn) w górę lub dół (w prawo, lewo), zwraca obiekt Range adresowany względem lewego górnego narożnika bieżącego obiektu Range, Elementy programowania

222 Elementy programowania
Czynność w VBA Kod Wybierz komórkę znajdującą się o jeden wiersz niżej i trzy kolumny w prawo w stosunku do bieżącej komórki A1 Range(„A1”).Offset(1,3).Select Wybierz komórkę znajdującą się o dwa wiersze wyżej i jedna kolumnę w lewo w stosunku do bieżącej komórki D15 Range(„D15”).Offset(-2,-1).Select Wybierz komórkę znajdującą się powyżej bieżącej komórki Selection.Offset(-1,0).Select Lub ActiveCell.Offset(-1,0).Select Elementy programowania

223 Inne metody wybierania komórek
Czynność w VBA Kod Wybierz ostatnią komórkę w danym rzędzie ActvieCell.End(xlRight).Select Wybierz ostatnią komórkę w danej kolumnie ActvieCell.End(xlDown).Select Wybierz pierwszą komórkę w danym rzędzie ActvieCell.End(xlLeft).Select Wybierz pierwszą komórkę w danej kolumnie ActvieCell.End(xlUp).Select Elementy programowania

224 Zaznaczanie wierszy i kolumn
Czynność w VBA Kod Wybierz cały rząd w którym znajduje się aktywna komórka Selection.EntireRow.Select Wybierz całą kolumnę w której znajduje się aktywna komórka Selection.EntireColumn.Select Elementy programowania

225 Uzyskiwanie informacji o arkuszu
Czynność w VBA Odpowiednik w oknie Instrukcje Bezpośrednie Oblicz liczbę wszystkich komórek w arkuszu ?Cells.Count Oblicz liczbę wszystkich kolumn w arkuszu ?Columns.Count Oblicz liczbę wszystkich wierszy w arkuszu ?Rows.Count Elementy programowania

226 Wpisywanie danych w arkuszu
Dane wpisywane w arkuszu można ująć w trzy podstawowe kategorie: liczby, teksty, wzory, ActiveSheet.Range(„D3”).Formula = 123 Range(„A1”).Formula = „Stan Konta” Range(„A2:B4”).Formula = 12*3 Range(„A3”).Formula = „=B5*12” Elementy programowania

227 Przesuwanie, kopiowanie, wymazywanie komórek
metody: Cut, Copy, Clear Czynność w VBA Kod Przesuń zawartość komórki A5 do A4 Range(„A5”).Cut Range(„A4”) Skopiuj formułę z komórki A5 do komórek D1:D12 Range(„A5”).Copy Range(„D1:D12”) Wymaż zawartość komórki A4 Range(„A4”).Clear metoda Clear: ClearContents, ClearFormats, ClearNotes Elementy programowania

228 Manipulowanie skoroszytami
Czynność w VBA Kod Otwórz nowy skoroszyt Workbooks.Add Uaktywnij skoroszyt np. drugi Workbooks(2).Activate Uaktywnij skoroszyt o nazwie Raport.xls Workbooks(„Raport.xls”).Activate Zapisz bieżący dokument na dysku pod nazwą „Koszty.xls” ActiveWorkbook.SaveAs Filename :=„Koszt.xls” Zamknij pierwszy skoroszyt Workbooks(1).Close Zamknij bieżący skoroszyt bez zapisywania zmian ActiveWorkbook.Close saveChanges:=False Zamknij wszystkie skoroszyty Workbooks.Close

229 Manipulowanie arkuszami
Czynność w VBA Kod Dodaj nowy arkusz Worksheets.Add Wybierz arkusz o nazwie Saldo Worksheets(„Saldo”).Select Umieść Arkusz2 przed Arkuszem1 Worksheets(„Arkusz2”).MoveBefore:=Worksheets(„Arkusz1”) Skopiuj Arkusz1 i umieść jego kopię za Arkuszem4 Worksheets(„Arkusz1”).Copy After:=Worksheets(„Arkusz4”) Zmień nazwę arkusza 2 na Wydatki Worksheets(2).Name=„Wydatki” Wymaż Arkusz2 Worksheets(„Arkusz2”).Delete Wybierz arkusze 1, 3, 4 Worksheets(Array(1,3,4)).Select

230 Operowanie oknami – metoda ARRANGE
Stała Wartość Znaczenie xlArrangeStyleTiled 1 Wszystkie okna ustawione są sąsiadująco xlArrangeStyleCascade 7 Okna ustawione są jedno pod drugim xlArrangeStyleHorizontal 2 Okna ustawione są jedno pod drugim w ujęciu poziomym xlArrangeStyleVertical 3 Okna ustawione są jedno koło drugiego w ujęciu pionowym Elementy programowania

231 Elementy programowania
Przykład kodu Windows.Arrange ArrangeStyle:=xlArrangeStyleCascade lub Windows.Arrange ArrangeStyle:=7 Elementy programowania

232 Zarządzanie aplikacją Excela
Czynność w VBA Kod Zmień nazwę aplikacji Excela na inną Application.Caption = „Moja aplikacja” Zakończ pracę z programem Application.Quit Sprawdź nazwę systemu operacyjnego ?Application.OperatingSystem Sprawdź w jakim folderze zainstalowano aplikację ?Application.Path Elementy programowania

233 Pomocne polecenia: Jak wybrać….?
...pojedynczą komórkę (na przykładzie A1)                 (5 różnych sposobów)             Range("A1").Select             Cells(1).Select              Cells.Item(1).Select              Cels(1,1).Select              Cells(1,"A").Select Elementy programowania

234 Elementy programowania
Jak wybrać….? ...zakres komórek (2 sposoby)       Range("A1:A5").Select       Range(Cells(1,1),Cells(5,1)).Select ...kilka komórek (różnych)       Range("A1","A5","Z320").Select ...kilka zakresów komórek (różnych)       Range("A1:A5","A15:D15","Z320").Select Elementy programowania

235 Elementy programowania
Jak wybrać….? ...komórkę aktywną            Application.ActiveCell ...komórkę przesuniętą o 2 wiersze i 1 kolumnę od komórki aktywnej            Activecell.Offset(2,1).Activate ...komórkę przesuniętą o 2 wiersze i 1 kolumnę od komórki A2 (2 różne sposoby)          Range("A2").Offset(2, 1).Activate      Cells(2, 1).Offset(2, 1).Activate Elementy programowania

236 Elementy programowania
Jak wybrać….? ...pierwszy arkusz w aktywnym skoroszycie             Sheets(1).Activate ...arkusz o nazwie "Arkusz1"             Sheets("Arkusz1").Activate ...spośród otwartych zeszytów skoroszyt o nazwie "Zeszyt1"             Windows("Zeszyt1").Activate Elementy programowania

237 Elementy programowania
Jak wybrać….? ...wiersz z aktywną komórką (2 różne sposoby):             Selection.EntireRow.Select             ActiveCell.EntireRow.Select ...kolumnę z aktywną komórką (2 różne sposoby):             Selection.EntireColumn.Select             ActiveCell.EntireColumn.Select ...kilka kolumn w ciągłym obszarze             Columns("A:C").Select ...kilka wierszy w ciągłym obszarze             Rows("1:5").Select Elementy programowania

238 Jak wybrać….? ...kilka kolumn w nieciągłym obszarze             Columns("A:C","E:E").Select ...kilka wierszy w nieciągłym obszarze             Rows("1:5","6:6").Select ...ostatnią komórkę w danym wierszu             ActiveCell.End(xlRight).Select ...ostatnią komórkę w danej kolumnie             ActiveCell.End(xlDown).Select ...pierwszą komórkę w danym wierszu             ActiveCell.End(xlLeft).Select ...pierwszą komórkę w danej kolumnie             ActiveCell.End(xlUp).Select

239 Elementy programowania
Jak wyświetlić? ...zawartość komórki  (na przykładzie A1)             Range("A1").Value              Cells(1).Value              Cells.Item(1).Value              Cels(1,1).Value              Cells(1,"A").Value ...formułę z  komórki  (na przykładzie A1)             Range("A1").Formula              Cells(1).Formula              Cells.Item(1).Formula              Cels(1,1).Formula              Cells(1,"A").Formula Elementy programowania

240 Elementy programowania
Jak wyświetlić? ...własny tekst w tytule zamiast Microsoft Excel Application.Caption="to tu wstawiamy..." ...własny tekst w linii statusu Application.StatusBar="to tu wstawiamy..." Elementy programowania

241 Elementy programowania
Jak wstawić? ...własny tekst w komórce (na przykładzie A1)             Range("A1").Formula = "mój tekst"             Cells(1).Formula ="mój tekst"             Cells.Item(1).Formula ="mój tekst"             Cels(1,1).Formula ="mój tekst"             Cells(1,"A").Formula ="mój tekst"             Range("A1").Value = "mój tekst"             Cells(1).Value ="mój tekst"             Cells.Item(1).Value ="mój tekst"             Cels(1,1).Value ="mój tekst"             Cells(1,"A").Value ="mój tekst" Elementy programowania

242 Elementy programowania
Jak wstawić?    ...liczbę (na przykładzie A1)             Range("A1").Formula = 13             Cells(1).Formula =13             Cells.Item(1).Formula =13             Cels(1,1).Formula =13             Cells(1,"A").Formula =13             Range("A1").Value = 13             Cells(1).Value =13             Cells.Item(1).Value =13             Cels(1,1).Value =13             Cells(1,"A").Value =13 Elementy programowania

243 Elementy programowania
Jak wstawić? ...formułę =B1+C4 do komórki A1             Range("A1").Formula = "=B1+C4"             Cells(1).Formula = "=B1+C4"             Cells.Item(1).Formula = "=B1+C4"             Cels(1,1).Formula = "=B1+C4"             Cells(1,"A").Formula = "=B1+C4" ...format komórki w postaci np. ##.##0 Range("A1").NumberFormat = "##.##0"    Elementy programowania

244 Elementy programowania
Typy błędów programu W programie utworzonym w Visual Basic mogą zdarzyć się trzy typy błędów: błędy kompilacji (składni), błędy podczas działania programu, błędy logiczne. Elementy programowania

245 Błędy kompilacji (składni)
Błędy kompilacji to pomyłka programisty, która łamie zasady składni (błędne napisanie własności lub słowa kluczowego). Visual Basic zwraca uwagę na kilka typów składni w programach; nie pozwoli na uruchomienie programu, dopóki nie zostaną poprawione wszystkie błędy składni. Jeżeli opcja Auto Syntax Check (na stronie Editor okienka dialogowego Options) jest zaznaczona, błędy składniowe są wykrywane podczas wpisywania. W przeciwnym wypadku są wykrywane, podczas kompilacji projektu. Przykłady instrukcji, które mogą spowodować błędy kompilacji: Prnt "Hello!"  - niepoprawne słowo kluczowe (Prnt zamiast Print). Print ?Hello!" - niepoprawna interpunkcja (? zamiast "). If X=1 doSomething  - niepoprawna struktura (przed doSomething powinno wystąpić Then).

246 Błąd podczas działania programu
Błąd podczas działania programu to błąd, który powoduje nieoczekiwane zatrzymanie działania programu. Takie błędy powstają, gdy zewnętrzne zdarzenie lub nie wykryty błąd składni zmusza program do zatrzymania swojego działania. Pomyłka w pisowni nazwy lub np. stacja dyskietek nie zawierająca dyskietki są przyczynami, które mogą powodować błędy podczas działania programu. Kiedy pojawi się błąd podczas wykonania programu, zatrzymane jest wykonywanie programu, chyba że procedura, w której pojawił się błąd, będzie zawierała poprawny kod obsługi błędu. Elementy programowania

247 Elementy programowania
Błąd logiczny Błąd logiczny to błąd człowieka - pomyłka programisty, która powoduje, że kod programu generuje złe wyniki. Większość wysiłków przy usuwaniu błędów koncentruje się na znajdywaniu błędów logicznych wprowadzonych przez programistę. Błędy te są często trudniejsze do zlokalizowania i poprawienia. Elementy programowania

248 Sposoby wykrywania błędów
Visual Basic zapewnia szeroki asortyment narzędzi do wykrywania błędów i cech, które pomagają zlokalizować i poprawić błędy w kodzie: sprawdzanie błędów składni, tryb przerwania/edycji i kontynuacji, wyrażenia Watch, punkty przerwania, wykonywanie krokowe, wywołania. Elementy programowania

249 Sprawdzanie błędów składni
Sprawdzanie błędów składni kontroluje kod pod względem błędów składniowych podczas wpisywania, uruchamiania i kompilowania projektu. Jeżeli pojawi się błąd, zostanie podświetlone potencjalne źródło błędu i wyświetlony komunikat opisujący błąd. Aby włączyć sprawdzanie błędów składniowych należy: wybrać menu Tools  Options i na zakładce Edit zaznaczyć opcję Auto Syntax Check. Elementy programowania

250 Tryb przerwania/edycji i kontynuacji
Tryb przerwania zatrzymuje uruchomioną aplikację, ale pozostawia jej bieżące zmienne i ustawienia właściwości. Jest jakby zaprezentowaniem stanu programu w określonej chwili podczas jego działania. W trybie przerwania można zbadać i zmienić bieżące wartości i właściwości, wprowadzić znaczne modyfikacje kodu i określić, jakie instrukcje aplikacji będą uruchomione jako następne. Po zakończeniu edycji, można kontynuować uruchomienie programu. Ta bardzo przydatna cecha jest nazywana edytuj i kontynuuj. Aby wejść w tryb przerwania należy: Po uruchomieniu programu wybrać z menu Run, Break (nacisnąć Ctrl+Break lub kliknąć przycisk Break na pasku narzędziowym). Aby zbadać i zmienić zmienną i wartość właściwości, należy wprowadzić odpowiednie polecenie w oknie Immediate lub sprawdzić wartość w oknie Locals. Aby zbadać i zmienić kod, należy wyświetlić odpowiednie okno Code i zmienić go w miarę potrzeby. Aby kontynuować działanie programu, należy nacisnąć F5 lub wybrać z menu Run, Start lub kliknąć przycisk Start na pasku narzędziowym.

251 Wyrażenia Watch Wyrażenia Watch umożliwiają monitorowanie wartości określonych zmiennych, właściwości i wyrażeń w czasie działania programu. Wyrażenia Watch są wyświetlone w obszarze Watch okna Debug w trybie przerwania (poza wyrażeniami Watch, które pojawiają się w ich własnym okienku dialogowym). Można przerwać wykonanie programu, kiedy wyrażenie Watch ulega zmianie lub ma wartość True. Aby dodać wyrażenie Watch do programu należy: W czasie projektowania lub podczas trybu przerwania wybrać z menu Debug, Add Watch, aby otworzyć okienko dialogowe Add Watch. W okienku tekstowym Expression należy wpisać zmienną, właściwość lub wyrażenie, które ma być obserwowane. W Context należy wybrać moduł(y) i procedurę(y), w których ma być obserwowana zmienna, właściwość lub wyrażenie. Zawężenie zakresu obserwacji umożliwia przyśpieszenie działania wykrywacza błędów. W Watch Type należy wybrać Watch Expression (aby tylko obserwować), Break When Value Is True (aby przerwać działanie programu, kiedy wartość wyrażenia Watch ma wartość True) lub Break When Value Changes (aby zatrzymać, kiedy wartość wyrażenia ulega zmianie).

252 Elementy programowania
Aby przeprowadzić stałą obserwację - to znaczy, aby oglądać bieżącą wartość zmiennej, właściwości lub wyrażenia należy: Po wejściu w tryb przerwania, wybrać właściwą zmienną, właściwość lub wyrażenie w odpowiednim oknie Code lub na obszarze Code okna Debug, Wybrać z menu Debug, Quick Watch lub nacisnąć Shift+F9 albo kliknąć przycisk Quick Watch na pasku narzędziowym. Elementy programowania

253 Elementy programowania
Punkt przerwania Punkt przerwania określa konkretny wiersz kodu, gdzie Visual Basic zatrzyma działanie programu i wejdzie w tryb przerwania. Umożliwia to zbadanie stanu programu (wartości zmiennych, wydruku ekranu i tak dalej) w specyficznym miejscu działania programu. Aby ustawić lub usunąć punkt przerwania dla wiersza kodu należy: W czasie projektowania lub podczas trybu przerwania umieścić wskaźnik (kursor) w wierszu i wybrać z menu Debug, Toggle Breakpoint lub nacisnąć F9, albo kliknąć przycisk Toggle Breakpoint na pasku narzędziowym. Elementy programowania

254 Wykonywanie krokowe Wykonywanie krokowe umożliwia „przechodzenie przez” wykonywanie pojedynczej jednostki kodu - jednej instrukcji, jednej procedury, jednego modułu itd. Po wykonaniu określonej jednostki kodu VB automatycznie wchodzi w tryb przerwania, umożliwiając obserwowanie wyników. Może to ułatwić znalezienie części kodu, w której pojawił się błąd. Step Into Polecenie Step Into przechodzi do następnej instrukcji w programie. Jeżeli ta instrukcja jest wywołana z innej procedury, Step Into przechodzi do pierwszej instrukcji z tej procedury. Należy używać Step Into w celu znajdowania błędów programu na „mikroskopijnym” poziomie przez przechodzenie przez wszystkie jego instrukcje jedna po drugiej. Aby użyć polecenia Step Into należy w trybie przerwania wybrać z menu Debug, Step Into lub wcisnąć F8, lub kliknąć przycisk Step Into na pasku narzędziowym.

255 Elementy programowania
Wykonywanie krokowe Step Over Polecenie Step Over przechodzi do następnej instrukcji w procedurze. Jeżeli ta instrukcja jest wywołaniem następnej procedury, Step Over przechodzi „nad” tą procedurą i zatrzymuje się na następnej instrukcji bieżącej procedury. Można go używać do znajdowania błędów w programie na nieco wyższym poziomie niż Step Into, przez przechodzenie przez kolejne procedury jako całość. Aby użyć polecenia Step Over należy w trybie przerwania wybrać z menu Debug, Step Over lub nacisnąć Shift+F8, lub kliknąć przycisk Step Over na pasku narzędziowym. Elementy programowania

256 Elementy programowania
Wykonywanie krokowe Run To Cursor Polecenie Run To Cursor przechodzi do określonej instrukcji w dalszej części kodu. Należy go używać do szybkiego przechodzenia do właściwych instrukcji w programie. Aby użyć polecenia Run To Cursor należy w trybie przerwania wyświetlić instrukcję kodu, do której program ma przejść i kliknąć ją, aby tam umieścić kursor. Następnie wybrać z menu Debug, Run To Cursor lub nacisnąć Ctrl+F8. Elementy programowania

257 Elementy programowania
Wywołania Wywołania umożliwiają oglądanie - w trybie przerwania - spisu aktualnie aktywnych wywołań procedur programów. Kiedy wykonywany jest kod procedury, procedura jest dodawana do listy aktywnych procedur. Jeżeli procedura wywołuje inną procedurę Sub lub Function, wywołana procedura jest również dodawana do listy itd. dla wszystkich aktywnych procedur. Ta cecha może pomóc śledzić przebieg programu i wybrać możliwe lokalizacje błędów logicznych. Aby obejrzeć aktualnie aktywne odwołania do procedur należy w oknie Call Stack: w trybie przerwania wybrać z menu View, Call Stack lub nacisnąć Crl+L. Elementy programowania

258 Elementy programowania
Obsługa błędów Błędy pojawiają się kiedy programy są uruchamiane. Nawet jeżeli kod jest bez zarzutu, użytkownik może popełniać błędy. Może np. chcieć korzystać ze stacji dyskietek, w której nie ma dyskietki lub otwierać plik, który nie istnieje itd. Obowiązkiem programisty jest zapewnienie sposobu informowania o błędach, komunikowania się i (jeżeli to możliwe) poprawiania tych błędów. Można to zrobić przez dołączenie odpowiedniego kodu obsługi błędów w aplikacjach. Elementy programowania

259 Elementy programowania
Kod obsługi błędów Błędami pojawiającymi się w czasie działania programu można manipulować przez dołączenie instrukcji On Error w kodzie programu. Kiedy pojawi się błąd w czasie pracy i „winny temu” blok kodu nie zawiera instrukcji On Error, wykonywanie programu zostaje zatrzymane. Kiedy pojawi się błąd, a kod zawiera instrukcję On Error, działanie programu nie jest zatrzymywane; zamiast tego sterowanie programem jest przekazywane do bloku kodu obsługi błędu. Kiedy błąd zostanie usunięty, działanie programu będzie wznowione. Elementy programowania

260 Elementy programowania
Kod obsługi błędu Podstawowa struktura procedury zawierającej kod obsługi błędu: Sub NazwaProcedury     On Error GoTo MiejsceObslugiBledow     Rozkazy procedur      Exit Sub MiejsceObslugiBledow:      Rozkazy obslugi bledow      Exit Sub End Sub Elementy programowania

261 Elementy programowania
Instrukcja On Error jest pierwszą wykonywalną instrukcją w procedurze, ponieważ On Error włącza obsługę błędu dla wszystkich instrukcji, które następują po niej (w tej samej procedurze). Za instrukcją On Error znajduje się blok składający się z normalnych instrukcji procedury. Ostatnią instrukcją w tym bloku jest instrukcja Exit Sub, która umożliwia opuszczenie procedury przed kodem obsługi błędu, jeżeli błąd nie zostanie wykryty. Za nią znajduje się kod obsługi błędu (poprzedzony przez etykietę identyfikującą wiersz). Elementy programowania

262 Koniec Dziękuję za uwagę


Pobierz ppt ""

Podobne prezentacje


Reklamy Google