Prikupljanje podataka uz pomoć VBA, Miloš Cvetković, konsultant, MCB

O prikupljanju podataka u Excelu uz pomoć VBA će nam govoriti Miloš Cvetković Konsultant u Menadžment Centru Boegrad.

IGO_5349

 

Kompletan rad u Excelu svodi se na tri faze:

  •  Prikupljanje i transformacija podataka
  •  Analiza podataka
  •  Tabelarno ili grafičko prikazivanje podataka u vidu izveštaja za menadžere

U prethodnom broju pisao sam o Power Queryju kao alatu za uvoz i transformaciju podataka. On je koristan kada radite sa velikom količinom podataka iz više izvora. Međutim, polaznici me u poslednje vreme sve više pitaju o korišćenju Userformi kroz VBA programiranje u Excelu. Ako imate izazov da prikupite podatke (anketiranje ili izrada budžeta) od velikog broja ljudi koji koriste osnovne funkcije u Excelu, onda jedno od rešenja može da bude izrada Userformi kroz Excel.

Userform se koristi i u Accessu i to mnogo produktivnije i bolje, zato što u Accessu možete mnogo detaljnije da formatirate podatke koji treba da se popune. Međutim, kad god imamo izazov sa prikupljanjem, transformacijom, analizom i prikazivanjem podataka, najčešće prvo pokrenemo Excel. Da bismo napravili formular u Excelu, prvo moramo da napravimo spisak podataka koji su nam potrebni. Za svako polje (ćeliju) u formularu moramo da obezbedimo kolonu u tabeli koju popunjavamo iz tog formulara. Takođe, podaci moraju da budu tipski. Najčešći tipovi podataka su: tekstualni podaci (imena, komentari), datumski podaci, podaci sa liste (spisak proizvoda), ocene na skali...

[caption id="attachment_24902" align="aligncenter" width="997"]Slika 1. Slika 1.[/caption] [caption id="attachment_24903" align="aligncenter" width="993"]Slika 2. Slika 2.[/caption] [caption id="attachment_24904" align="aligncenter" width="978"]Slika 3. Slika 3.[/caption]

Nakon što napravimo spisak svih podataka koji su nam potrebni, započinjemo sa dizajniranjem samog formulara. Važno je da formular bude pregledan i lak za korišćenje, bez detalja koji bi odvlačili pažnju od njegove osnovne namene, a to je unos podataka. Takođe su važni i pojavljivanje formulara, prenos podataka u bazu i zatvaranje koje treba da se programira.

Prvi izazov je da se omogući da se formular prikazuje kada otvorite Excel fajl i da u Userformi postoji dugme za zatvaranje Excel fajla. Da biste prikazali samo Userformu, potrebno je da dodate kod u delu ThisWorkbook u VBA Editoru, kao na slici 1.

Nakon toga potrebno je da se doda dugme za unos podataka i za zatvaranje Userforme, kao na slici 2. Duplim klikom na dugme „Zatvori“ pojaviće se prozor u koji je potrebno da se unese kod sa slike 2.

U okviru Toolboxa postoje različite vrste boksova koje možete da dodate, a u zavisnosti od tipa podatka koje je potrebno da unesete u tabelu. Ulazni boksovi koji se najčešće koriste su TextBox i ComboBox, a svaki je specifičan u pogledu formatiranja.

Kada prvi put otvorite formular za unos podataka on bi trebao da bude prazan, odnosno da ne sadrži prethodne unose. Za to je potrebno da formatiramo sve TextBoxove i ComboBoxove iz formulara, da bi im početna vrednost bila prazna. Ovaj kod unosimo tako što kliknemo desnim klikom na Userformu, a onda u padajućim listama biramo opcije „UserForm“ i „Initialize“, što znači da želimo da Userforma prilikom prikazivanja izvrši sledeće instrukcije sa slike 4 (svaki TextBox treba da bude prazan).

Vrednosti u ComboBoxevima možemo da unesemo tako što ćemo u posebnom Sheetu da ispišemo listu vrednosti koje želimo da nam se pojavljuju na ComboBoxu i da tu lisu imenujemo kao opseg ćelija u Excelu (Slika 5). Nakon toga je potrebno da u delu „Properties“ ComboBoxa unesemo u delu „RowSource“ naziv imenovanog opsega (u ovom slučaju to je „ComboList 1“).

Ostalo je još da se formatira i CommandButton 1 ili dugme „Unesi“. Njega formatiramo tako što duplim klikom kliknemo na dugme „Unesi“ i unesemo kod sa slike 6.

Kod sa slike 6 će da zada instrukcije da se vrednosti iz TextBoxova i ComboBoxova unesu u tabelu sa podacima. Tu tabelu i one iz drugih fajlova kasnije možemo da konsolidujemo, analiziramo i da ih unesemo u izveštajUserforme se koriste u mnogo komplikovanijim oblicima u kompanijama u Srbiji. Cilj ovog teksta bio je prikaz jednostavne Userforme i njenih najosnovnijih kodova. Ovaj fajl možete da preuzmete sa sajta www.mcb.rs

[caption id="attachment_24905" align="aligncenter" width="988"]Slika 4. Slika 4.[/caption] [caption id="attachment_24906" align="aligncenter" width="958"]Slika 5. Slika 5.[/caption] [caption id="attachment_24907" align="aligncenter" width="995"]Slika 6. Slika 6.[/caption] Tekst je preuzet iz Controlling magazina #12. Ceo magazin možete pročitati na ovom linku.