MsgBox i InputBox

MsgBox je interna VBA procedura (metod) koja se koristi za prikaz sadržaja unutar dijalog prozora koji se pojavljuje na ekranu. Može da se koristi za prikaz operanda koje smo direktno prosledili ili vrednosti promenljivih koje se izračunavaju unutar potprograma. InputBox je funkcija koju koristimo radi unosa vrednosti koje ćemo kasnije da iskoristimo prilikom računanja izraza.

Najjednostavniji način primene MsgBox ima ako mu direktno prosledimo neki parametar. Npr:

MsgBox „Zdravo svete!“

Ako smo prethodno deklarisali promenljivu i nad njom izvršili računsku operaciju napisaćemo sledeći kod:

Dim a As Integer
a = 2 + 2
MsgBox a

MsgBox može sadržati i više operanda spojenih u jedan pomoću znaka „&“. Na primer, ako želimo da prikažemo tekst koji ide u dva reda napisaćemo program:

MsgBox „Prvi“ & vbNewLine & „Drugi“

U sredini ovog izraza nalazi se interna konstanta vbNewLine koja se koristi za prebacivanje u novi red.

MsgBox može da se ponaša i kao funkcija. U tom slučaju, pored vrednosti koja se prikazuje, moguće je definisati i tip prozora, tekst u naslovnoj traci, lokaciju datoteke za pomoć itd. Pogledajte primer:

Dim a, b, c As Integer
a = 2
b = 2
c = MsgBox (a + b, vbOKOnly, „Zbir dva broja“)

InputBox vraća vrednosti tipa Variant, pa je zgodno deklarisati promenljivu dodelivši joj navedeni tip.

Sub Zbir()
‘Moj zbir dva programa
Dim a, b, c As Integer
a = Val(InputBox(„a=“, „Unos prve vrednosti“))
b = Val(InputBox(„b=“, „Unos druge vrednosti“))
c = a + b
MsgBox „Zbir: “ & c
End Sub

InputBox unete vrednosti tretira kao stringove, pa ako želimo da nad njima izvršavamo neke aritmetičke operacije korisno bi bilo da ih pomoću funkcije Val najpre pretvorimo u brojnu vrednost.