(Strona testowana w przeglądarce Internet Explorer)
Zastosowanie VB w excel’u.
Z5_1.
Przekopiować plik „proba z makrem” na własny nośnik z nazwą „proby z makrem nazwisko_imię” a następnie otworzyć go w excelu włączając makra.
Przeanalizować działanie
makra „nowe”.
W tym samym
module napisać makro „nowe_1”, które
będzie działało tak samo jak makro „nowe”
lecz w którym, zamiast
instrukcji wyboru CASE, będą
zastosowane instrukcje warunkowe proste a następnie kolejne makro: „nowe_2”,
w którym zamiast instrukcji warunkowych prostych będzie jedna instrukcja
warunkowa rozbudowana: if...elseif...end
if.
Zapisać skoroszyt opcją: „Zapisz jako – z obsługą makr”. Działanie makra
„nowe”:
OPTION EXPLICIT Sub nowe() '’deklaracje zmiennzch Dim
etat As String Dim i As Integer For
i = 1 To 7 etat = Cells(1 +
i, 1).Value Select Case
etat Case "sprzedawca" Cells(1 + i, 3).Value = 8 ‘(1) Case "kierownik" Cells(1 + i, 3).Value = 15 ‘(2) Case "asystent" Cells(1 + i, 3).Value = 10 ‘(3) End Select Next
i End
Sub |
|
Z5_2. W tym skoroszycie zarejestrować
makro o nazwie: „Imię”, które komórki
A1:J1 wypełni kolejnymi liczbami naturalnymi. Przeanalizować jego
kod a następnie uruchomić go w arkuszu 2.
Zapisać
skoroszyt opcją: „Zapisz jako – z obsługą makr”.
Z5_3. W module 1 dopisać podprogram (makro)
o nazwie „Nazwisko”, które, stosując
pętle for:
a) zakres A1:J1 wypełni kolejnymi
liczbami naturalnymi. Zastosować metodę: Cells(w,k).Value.
b) zakres A2:J2 wypełni pierwiastkami
kwadratowymi z tych liczb. Zastosować metodę: Cells(w,k).Value.
c) zakres A3:J3 wypełni kolorami o
indeksach jak odpowiednie powyższe liczby. Zastosować metodę: Cells(w,k).Interior.Colorindex.
Uruchomić go
w arkuszu 3. Zapisać skoroszyt opcją: „Zapisz jako – z obsługą makr”.
Z5_4. W arkuszu 4 postawić przycisk o
nazwie: „cmdRK” i opisie: ”Rozwiązywanie równania kwadratowego” Do kodu
programu utworzonego do tego przycisku przekopiować kod program na obliczanie
pierwiastków równania kwadratowego (Z2_3), poprawić i przerobić go, aby
działał w ten sposób,
że: współczynniki: a, b, c będzie pobierał z komórek: C5, C6, C7 a wyniki x1,
x2, „brak pierwiastków” wypisze odpowiednio w komórkach:
E5, E6, E7.
Uruchomić go
w arkuszu 3. Zapisać skoroszyt opcją: „Zapisz jako – z obsługą makr”.
Z5_5. Przykładowe zadanie na kolokwium
(trudniejsze).
Stwórz
program, który będzie liczył kolejne przybliżenia liczny Eulera „e”
z następującego wzoru:
gdzie,
n zadaje użytkownik w programie poprzez pole tekstowe (textbox) jako wartość
naturalną większą od zera, czyli np. dla n=3, „e” ma być obliczone z wzoru:
Na
formularzu ma się znajdować: przycisk (button) „Oblicz”, który uruchamia
procedurę obliczeniową i etykiety zapewniające czytelność programu a wyniki:
„obliczone „e” dla kolejnych wartości „n” mają być wyświetlone w listboxach.
Dodatkowo w labelu i w MessageBoxie wyświetlić również końcową
obliczoną wartość liczby „e”.
Silnia ma w
programie być liczona ze wzoru:
lste lstn lble lbln lblekon lblek txtn lblwprn
Option Explicit
Private Sub cmdOblicz_Click()
Dim ekon, suma As Single
Dim silnia As Long
Dim i, j, n As Integer
Dim odp As Byte
n = Val(txtn.Text)
if (n < 1 Or n > 11) Then
odp = MsgBox("n ma być w zakresie od 1 do 11", vbExclamation,
"Błąd")
End
End If
lstn.Clear
lste.Clear
lblekon.Caption = ""
suma = 2
For i = 1 To n
silnia = 1
For j = 1 To i+1
silnia = silnia * j
Next j
suma = suma + 1 / silnia
lstn.AddItem j-2
lste.AddItem suma
Next i
ekon = suma
lblekon.Caption = str(ekon)
MsgBox ("e=" + Str(ekon))
End
End Sub