Možete koristiti funkciju InputBox za dodavanje dijaloških okvira vašim makronaredbama programa Excel 2013. Kada pokrenete makronaredbu, ova Visual Basic funkcija uzrokuje da Excel prikaže dijaloški okvir za unos u koji možete unijeti bilo koji naslov koji ima smisla za novi radni list. Makronaredba zatim stavlja taj tekst u trenutnu ćeliju i formatira ovaj tekst, ako je to ono za što ste svoju makronaredbu uvježbali sljedeće.
Da biste vidjeli koliko je jednostavno koristiti funkciju InputBox za dodavanje interaktivnosti inače postojanoj makronaredbi, slijedite korake za pretvaranje makronaredbe Company_Name koja trenutno unosi tekst "Mind Over Media" u onu koja vam zapravo traži ime koje želite ušao. Funkcija InputBox koristi sljedeću sintaksu:
InputBox(prompt[,naslov][,zadano][,xpos][,ypos][,datoteka pomoći,kontekst])
U ovoj funkciji potreban je samo prompt argument, dok su ostali argumenti izborni. Brz argument navodi poruku koja se pojavljuje unutar dijaloškog okvira za unos, što je navelo korisniku da unijeti nove vrijednosti (ili u ovom slučaju, novi naziv tvrtke).
Brz argument može biti do maksimalno 1.024 znakova. Ako želite da se poruka s promptom pojavi u različitim recima unutar dijaloškog okvira, u tekst unosite funkcije Chr(13) i Chr(10) (da biste u poruku umetnuli povratak na red i redak).
Neobavezni argument naslova određuje koji će se tekst prikazati u naslovnoj traci dijaloškog okvira Unos. Ako ne navedete argument naslova , Excel prikazuje naziv aplikacije na naslovnoj traci. Neobavezni zadani argument navodi zadani odgovor koji se automatski pojavljuje u tekstualnom okviru na dnu dijaloškog okvira Unos.
Ako ne navedete zadani argument, tekstni okvir je prazan u dijaloškom okviru Unos.
U xpos i ypos neobaveznih argumenata odrediti horizontalnu udaljenost od lijevog ruba ekrana na lijevom rubu dijaloškog okvira i vertikalne udaljenosti od gornjeg ruba zaslona na gornjem rubu okvira. Ako ne navedete ove argumente, Excel centrira dijaloški okvir za unos vodoravno i pozicionira ga okomito oko jedne trećine dolje na zaslonu.
U helpfile i kontekst izborni argumenti navesti naziv prilagođene pomoć datoteke koju stavlja na raspolaganje korisniku objasniti djelovanje dijaloškom okviru za unos, kao i vrsti podataka koji se prihvaća.
Kao dio procesa stvaranja prilagođene datoteke pomoći za korištenje u sustavu pomoći Excel, temi dodjeljujete broj konteksta prikladan njenom sadržaju, koji se zatim navodi kao argument konteksta za funkciju InputBox.
Kada navedete datoteku pomoći i argument konteksta za ovu funkciju, Excel dodaje gumb Pomoć u dijaloški okvir prilagođenog unosa koji korisnici mogu kliknuti za pristup prilagođenoj datoteci pomoći u prozoru pomoći.
Prije nego što možete dodati redak koda makronaredbi pomoću funkcije InputBox, morate pronaći mjesto u naredbama Visual Basica gdje bi linija trebala ići. Za unos teksta Mind Over Media u aktivnu ćeliju, makronaredba Company_Name koristi sljedeću naredbu Visual Basica:
ActiveCell.FormulaR1C1 = "Mid Over Media"
Da biste makronaredbi dodali interaktivnost, morate umetnuti funkciju InputBox u redak u prozoru Code odmah iznad ove izjave ActiveCell.FormulaR1C1, kako slijedi:
Postavite točku umetanja u prozoru Code na početku naredbe ActiveCell.FormulaR1C1 i pritisnite Enter za umetanje novog retka.
Sada kada ste dodali novi redak, morate pomaknuti točku umetanja do njega.
Pritisnite tipku sa strelicom prema gore da biste postavili točku umetanja na početak novog retka.
U ovom retku želite stvoriti varijablu koja daje argument prompt funkciji InputBox. Da biste to učinili, navedite naziv varijable (u ovom slučaju InputMsg) nakon čega slijedi njezin trenutni unos. Obavezno priložite tekst poruke s desne strane znaka jednakosti u zatvoreni par dvostrukih navodnika.
Upišite sljedeći kod za stvaranje varijable InputMsg u retku 8, a zatim pritisnite tipku Enter da biste započeli novi redak 9:
InputMsg = "Unesite naziv tvrtke ili naslov za ovaj radni list u tekstualni okvir ispod, a zatim kliknite U redu:"
Zatim stvarate varijablu pod nazivom InputTitle koja daje neobavezni argument naslova za funkciju InputBox. Ova varijabla čini da se tekst "Naslov proračunske tablice" pojavljuje kao naslov dijaloškog okvira za unos. Opet, svakako stavite naziv za naslovnu traku dijaloškog okvira u navodnike.
Upišite sljedeći kod za stvaranje varijable InputTitle u retku 9, a zatim pritisnite Enter da biste umetnuli novi redak 10:
InputTitle = "Naslov proračunske tablice"
Zatim stvarate naziv varijable DefaultText koji je opcijski zadani argument dao funkciji InputBox. Ova varijabla čini da se tekst "Mind Over Media" pojavljuje kao zadani unos u tekstualnom okviru na dnu prilagođenog dijaloškog okvira za unos naziva tvrtke.
Upišite sljedeći kod za stvaranje varijable DefaultText u retku 10, a zatim pritisnite Enter da biste umetnuli novi redak 11:
ZadaniText = "Razmišljanje o medijima"
Zatim kreirate konačnu varijablu pod nazivom CompanyName koja specificira funkciju InputBox kao svoj unos (koristeći varijable InputMsg, InputTitle i DefaultText koje ste upravo kreirali) i pohranjuje rezultate ove funkcije.
Upišite sljedeći kod da biste stvorili varijablu SpreadsheetTitle koja koristi funkciju InputBox u retku 11:
Naslov proračunske tablice = InputBox (InputMsg, InputTitle, DefaultText)
Konačno, zamjenjujete vrijednost, “Mind Over Media”, u svojstvu ActiveCell.FormulaR1C1 s varijablom SpreadsheetTitle (čija je vrijednost određena onim što je uneseno u dijaloški okvir Unos naslova proračunske tablice), čime se ova konstanta u makrou učinkovito zamjenjuje s način da se ovaj unos učini uistinu interaktivnim.
Odaberite "Mind Over Media" na 12. retku i zamijenite ga naslovom SpreadsheetTitle (bez navodnika).
Spremite uređenu makronaredbu klikom na gumb Spremi na alatnoj traci Visual Basica, a zatim se vratite na radni list klikom na gumb Prikaži Microsoft Excel ili pritiskom na Alt+F11. Zatim kliknite gumb Sakrij u grupi Prozor na kartici POGLED.
Sada ste spremni otvoriti novu radnu knjigu i pokrenuti uređenu makronaredbu pritiskom na Ctrl+N.
Slika prikazuje prozor Code s uređenom makronaredbom Company_Name nakon dodavanja izjava koje ga čine interaktivnim.
Sljedeća slika prikazuje dijaloški okvir Naslov proračunske tablice u akciji u radnom listu. Ovaj dijaloški okvir za unos sada se automatski pojavljuje i traži od vas unos kad god pokrenete uređenu i sada potpuno interaktivnu verziju makronaredbe Company_Name.
Da biste nastavili i unijeli Mind Over Media u trenutnu ćeliju, a zatim je formatirali korištenjem ostatka makronaredbi, samo kliknite U redu u ovom prilagođenom dijaloškom okviru. Da biste unijeli i formatirali naziv druge tvrtke, jednostavno upišite naziv tvrtke (koji automatski zamjenjuje Mind Over Media u tekstualni okvir) prije nego što kliknete U redu.