Sub Makro() Dim A, B As Integer Const A1 = 150 Const B1 = 120 If B1 < 150 Then A = A1 * 0.5 ElseIf B1 > 100 Then A = A1 + 25 ElseIf B1 < A1 Then A = A1 + 200 Else A1 = A1 + B1 End If Range(2, 3).Value = A1 End Sub
mateuszl1995
Po pierwsze przedostatnia linijka jest błędna: piszemy albo: a) Range("C2").Value = A1 albo b) Cells(2,3).Value = A1
A teraz przeanalizujmy procedurę If: Czy B1 (=120) jest mniejsze od 150? Tak, zatem A=A1*0,5=150*0,5=75 Następne kroki procedury If zostaną pominęte.
Zatem wartość A zostanie ustawiona na 75 (tego nie zobaczymy w arkuszu) A wartość komórki C2 (3 kolumna, 2.wiersz) zostanie ustawiona na 150, jeśli zmienimy błędny kod w przedostatniej linijce.
piszemy albo:
a) Range("C2").Value = A1
albo
b) Cells(2,3).Value = A1
A teraz przeanalizujmy procedurę If:
Czy B1 (=120) jest mniejsze od 150?
Tak, zatem A=A1*0,5=150*0,5=75
Następne kroki procedury If zostaną pominęte.
Zatem wartość A zostanie ustawiona na 75 (tego nie zobaczymy w arkuszu)
A wartość komórki C2 (3 kolumna, 2.wiersz) zostanie ustawiona na 150, jeśli zmienimy błędny kod w przedostatniej linijce.