Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Visual Basic for Applications Poziom podstawowy Zajęcia 2 SGH IT 2014 1.

Podobne prezentacje


Prezentacja na temat: "Visual Basic for Applications Poziom podstawowy Zajęcia 2 SGH IT 2014 1."— Zapis prezentacji:

1 Visual Basic for Applications Poziom podstawowy Zajęcia 2 SGH IT

2 Plan zajęć Zmienne Sposoby na odwołanie do komórek Funkcje Instrukcje warunkowe MsgBox Dużo przykładów SGH IT

3 Definiowanie zmiennych SGH IT Pisząc funkcję lub procedurę w języku VBA należy pamiętać o zdefiniowaniu typów zmiennych

4 Podstawowe typy zmiennych SGH IT Boolean – zmienna logiczna (prawda/fałsz) Integer – wartości całkowite od do Double – wartości rzeczywiste od -1,79*10^308 do 1,79*10^308 Currency – kwoty pieniężne String – zmienna tekstowa Date – analogicznie jak w Excelu

5 Nazwy zmiennych Zasady nazywania zmiennych: – Pierwszy znak musi być literą – Nazwy nie mogą zawierać spacji i kropek – Mogą zawierać znak podkreślenia (interest_fate) – Litery mogą być różnej wielkości (InterestRate) – Nie mogą zawierać znaków specjalnych (#,$,%,!) – Maksymalna długość –254 znaki SGH IT

6 Zmienne tablicowe Służą do przechowywania dużych ilości podobnych do siebie danych (tego samego typu) i automatyzacji ich przetwarzania. Deklarowanie zmiennych tablicowych: Dim nazwa (, ) AS UWAGA: indeksowanie tablicy standardowo zaczyna się od 0! Aby ustawić indeksowanie od innej liczby, należy wpisać: Option Base SGH IT

7 Sposoby odwoływania do komórek Range(A1) – Range("A:A"), Range("1:1") Cells(1,1) – Range(Cells(1, 1), Cells(2, 3)) [A1] Activecell Range(total) SGH IT

8 Przykład Kopiowanie zawartości aktywnej komórki do komórki A1 Sub Makro1() ActiveCell.Copy Range("A1").Select ActiveSheet.Paste End Sub Zadanie 1(Excel): Wyciąć zawartość komórek A1:C2 i wkleić w E2:G4 SGH IT

9 Rozwiązanie 1 Sub Wycinanka() Range("A1", "C2").Cut Range("E2", "G4").Select ActiveSheet.Paste End Sub SGH IT

10 Funkcje Function (funkcje) – zwracają wartość – są uruchamiane identycznie jak formuły wbudowane w Excela Przykład: Zadanie 2: Napisać funkcję liczącą objętość (tzn. mnożącą trzy wymiary) ze zmiennymi w formacie Integer i wynikiem funkcji w formacie Single SGH IT

11 Rozwiązanie 2 Function Objetosc (X As Integer, Y As Integer, Z As Integer) As Single Objetosc = X * Y * Z End Function SGH IT

12 Instrukcje warunkowe Pozwalają na wykonywanie czynności w zależności od określonej sytuacji (położenia kursora, wartości zmiennej itp.) Najczęściej używane – If … Then … – If … Then … Else – Select case SGH IT

13 Instrukcje warunkowe - przykłady SGH IT

14 Zadanie 3 Procedura (Sub) sprawdzająca czy liczba w zaznaczonej komórce jest równa 0 – Jeśli tak to w komórce A1 pojawia się napis wartość wynosi zero – Jeśli nie to w A2 pojawia się wartość jest różna od zera Przydatne wyrażenia: – Activecell.Value – Range(XX").Value – If … Then… Else SGH IT

15 Rozwiązanie 3 Sub Makro1() If ActiveCell.Value = 0 Then Range("A1").Value = "wartość wynosi zero" Else Range("A2").Value = "wartość jest różna od zera" End If End Sub SGH IT

16 Message Box Służy do komunikowania użytkownikowi wybranych informacji Przykład: Zadanie 4: zmienić poprzedni kod tak, aby wiadomość pojawiała się w Message Box, a nie w komórkach A1 i A2 SGH IT

17 Rozwiązanie 4 Sub Makro1() If ActiveCell.Value = 0 Then MsgBox ("Liczba równa 0") Else MsgBox ("Liczba różna od 0") End If End Sub SGH IT

18 Zadanie Napisz funkcje prowizja, która będzie obliczała wartość prowizji jaką otrzyma handlowiec biorąc pod uwagę jego staż oraz jego wynik sprzedażowy Staż 0 : premia 0% Staż 1 : premia 1% Staż 2 : premia 3% Staż 3 : premia 4% Staż 4 i więcej : premia 5% Sprzedaż 0- 10k premia 2% Sprzedaż 10k- 20k premia 4% Sprzedaż 20k- 35k premia 5% Sprzedaż 35k- premia 8%

19 Function prowizja(sprzedaz As Double, staz As Double) As Double Dim premia As Double premia = 0 If staz < 1 Then premia = premia + 0 ElseIf staz < 2 Then premia = premia ElseIf staz < 3 Then premia = premia ElseIf staz < 4 Then premia = premia Else premia = premia End If Select Case prowizja Case 0 To premia = premia Case To premia = premia Case To premia = premia Case Else premia = premia End Select prowizja = sprzedaz * premia End Function Rozwiązanie, przekopiuj do edytora vba


Pobierz ppt "Visual Basic for Applications Poziom podstawowy Zajęcia 2 SGH IT 2014 1."

Podobne prezentacje


Reklamy Google