Podział języków programowania:
1. Języki niskiego poziomu (asembler)
2. Języki wysokiego poziomu (Basic, Cobol, Fortran, C, C++, Pascal, Visual Basic)
3. Języki poziomu aplikacji (Excel VBA, Word VBA, Power Point VBA)
BASIC – Beginner’a All-Purpose Symbolic Instruction Code (Wszechstronny Kod Instrukcyji, Symboliczny, dla Początkujących)
Alt + F11 – przejście Edytor VBA / Excel
Eksplorator projektów:
· moduły
MAKRO – ciąg poleceń zarejestrowanych przez rejestratora makr w wyniku działań użytkownika aplikacji lub stworzonych manualnie w edytorze Visual Basic
Adresowanie względne – makro wykonuje polecenia w dowolnie wybranej komórce arkusza
Adresowanie bezwzględne – makro wykonuje polecenia w komórkach w których było zarejestrowane
OBJEKT W VISUAL BASIC
· Właściwości
· Metody
· Kopiowanie
· Wybieranie
· Przesuwanie
· Sortowanie
· Wymazywanie zawartości, formatu komórki
Ogólny schemat odwołań do obiektu:
Obiekt.właściwość
Obiekt.metoda
· Range(„B7”).ClearContents
· Range(„C2”).ClearFormats
· Application.Workbooks(“abc.xls”).Worksheets(“dane”).Range(“C2”).Clear
Range(“C5”).Value = 7
Activecell.Font.Name = “Arial”
Activecell.Font.Bold = True
Zmienna = Range(“A6”).Value
PRZENIESIENIE (rozdzielenie na 2 linijki)
&_ tekst
_ instrukcje
Kiedy możemy:
· przed przecinkiem lub po przecinku
· przed lub po znaku :=
· przed lub po znaku =
· przed lub po operatorach &, +, like, NOT, AND
· Range(„A2”).Select
· Range(„A2:A5”).Select
· Range(“A2,A7,C7”).Select
· Range(“A2:A7,C7”).Select
· Range(Cells(3,1), Cells(3,6)).Select [Cells(rząd,kolumna)]
· Cells.Select
· Selection.Offset(2,4).Select
· Selection.Offset(-2,-4).Select
· Range(“A1”).Offset(2,2).Select
· Activecell.End(xlright).Select [ostatnia kolumna]
· Activecell.End(xldown).Select [ostatni wiersz]
· Activecell.End(xlleft).Select [pierwsza kolumna]
· Activecell.End(xlup).Select [pierwszy wiersz]
· Selection.EntireRow.Select
· Selection.EntireColumn.Select
· Selection.Rows.Count
· Selection.Columns.Count
· Range(„B5”).Value = „...”
· Range(“C5”).Formula = „…”
· Range(“B5”).Copy
· Destination := Range(„A1:A6”)
· Range(“B5”).Cut
· Destination := Range(„A1”)
· Range(“B5”).Clear
Nazwy składają się z liter, cyfr i znaków z wyjątkiem: , # $ % & @ !
Bez zarejestrowanych słów
TYPY DANYCH
Boolean, Byte, Integer, Long, Single, Double, Currency, Decimal, Date, String, Object (umożliwia dostęp do dowolnego objektu), Array, Variant, Variant
· wprost (na początku programu)
· bezpośrednio przed użyciem (bez wcześniejszej deklaracji – Variant)
Np.
· Dim x As Integer
· Dim data As Date
· Dim i As Double
· Dim Nazwisko As String
· Dim pseudo As String
Dim nazwisko As String
Dim data_rozpoczecia As Date
Dim ile_left As Byte
Nazwisko = “Kowalski”
Data_rozpoczęcia = # 01/10/2000 #
Ile_left = Year (Now())- Year(data_rozp)
MsgBox “Osoba” + nazwisko + “studiuje” + Ile_left + “lat”
String $
Integer %
Long &
Single !
Double #
Curray @
Dim znaki $
Dim i %
Dim x #
Dim x As Integer
Dim y %
Range(“A1”).Formula = ”WYNIK”
X = 5
Y = 3
With Range(“A2”)
.Value = “= 3 * 5”
.ColorIndex = 5
End With
Static x
Dim dane As Object
Set dane = _
Worksheets(„Arkusz1”).Range(Cells(1,1), Cells(5,5))
With dane.Interior
.Pattern = x(Solid)
· Const x = 3 As Byte
· Const y = 0.5
Początek i koniec programu:
Sub
...
End Sub
FUNKCJE (!!!)
Function nazwa (By Val x, By Ret y)
…
End Function
PRZYKŁAD
Public Function suma_1 (By Ref a, By Val b)
A = a * 2
B = b * 2
Suma_1 = a + b
Private Sub CommandButton 3_Clik()
Dim x,y As Integer
X = 2
Y = 5
Range(“A1”).Value = suma_1(x,y)
Range(“A2”).Value = x
Range(“A3”).Value = y
Public Function suma_1(a, b, Optional c)
If Is Missing (c) Then
C = 0
Suma_1 = a + b + c
MsgBox komunikat, argumenty
- Vb OKOnly
- Vb OkCancel
- Vb Critical
- Vb Question
- VB Information
OK. VbOK 1
Cancel VbCancel 2
Abort 3
Retry 4
Ignore 5
Yes 6
No 7
InputBox komunikat
Komunikat = „Podaj PIN”
= <> > < >= <= is [identyczne obiekty] like [równe, zgodne ze wzorem]
AND OR NOT
· If warunek Then instrukcja
If warunek Theninstrukcja_1instrukcja_2End If
· If warunek Then instrukcja_1 : instrukcja_2
· If warunek_1 AND warunek_2 Then instrukcja
· If warunek_1 OR warunek_2 Then instrukcja_1 instrukcja_2End If
· If NOT warunek Then instrukcja_1 : instrukcja_2
· If warunek Then instrukja_1 Else intrukcja_2
· If warunek Then instrukcja_1 instrukcja_2Else instrukcja_3 instrukcja_4End If
Winterek69