Služi za brisanje prethodno upisanih sadržaja u čitavom worksheetu. Opcija nije nužna, ali je korisna.

Similar documents
MS Excel VBA za studente kemije

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

SAS On Demand. Video: Upute za registraciju:

Uvod u relacione baze podataka

Podešavanje za eduroam ios

Tutorijal za Štefice za upload slika na forum.

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

Naredba je uputa računalu za obavljanje određene operacije.

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

Nejednakosti s faktorijelima

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

OTVARANJE BAZE PODATAKA I IZRADA TABLICE U MICROSOFT ACCESS-u

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

Upute za korištenje makronaredbi gml2dwg i gml2dgn

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

1. Instalacija programske podrške

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE

int[] brojilo; // polje cjelih brojeva double[] vrijednosti; // polje realnih brojeva

OTVARANJE BAZE PODATAKA U MICROSOFT ACCESSU XP

PASCAL - Skripta sa zadacima i rješenjima -

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports.

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE)

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a

PROJEKTNI PRORAČUN 1

Bušilice nove generacije. ImpactDrill

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

Otpremanje video snimka na YouTube

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

Implementacija sparsnih matrica upotrebom listi u programskom jeziku C

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

BENCHMARKING HOSTELA

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum:

VBA moduli. mr Milovan Milivojević dipl. ing. Visa Poslovno Tehnička Škola - Užice

KAKO GA TVORIMO? Tvorimo ga tako, da glagol postavimo v preteklik (past simple): 1. GLAGOL BITI - WAS / WERE TRDILNA OBLIKA:

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY

Struktura i organizacija baza podataka

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020.

UPITI (Queries) U MICROSOFT ACCESSU XP

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

Windows Easy Transfer

Microsoft Excel Moć tabličnog računanja

Direktan link ka kursu:

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION

Tablični kalkulator Excel 7.0 Klinča Sela 2005.

Programiranje kroz aplikacije. Subprocedure Opseg promenljivih Excel VBA objektni model

Port Community System

RANI BOOKING TURSKA LJETO 2017

Mindomo online aplikacija za izradu umnih mapa

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći:

RAZVOJNO OKRUŽENJE. PHP kod se izvršava ISKLJUČIVO na strani poslužitelja, korisnik u web preglednik dobiva gotov HTML kod

TEHNO SISTEM d.o.o. PRODUCT CATALOGUE KATALOG PROIZVODA TOPLOSKUPLJAJUĆI KABLOVSKI PRIBOR HEAT-SHRINKABLE CABLE ACCESSORIES

Office 365, upute za korištenje elektroničke pošte

Priprema podataka. NIKOLA MILIKIĆ URL:

Primjeri pitanja iz 1. ili 2. skupine (za 2 ili 4 boda po pitanju) -

Klasterizacija. NIKOLA MILIKIĆ URL:

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze

Advertising on the Web

PREDMET: Odgovor na upit u postupku jednostavne nabave za predmet nabave Najam multifunkcijskih fotokopirnih uređaja, Evidencijski broj nabave 10/18

Bear management in Croatia

IZRADA TEHNIČKE DOKUMENTACIJE

MASKE U MICROSOFT ACCESS-u

Osnove unosa i izmjene podataka

Sveučilište u Zagrebu Fakultet prometnih znanosti Zavod za inteligentne transportne sustave Katedra za primijenjeno računarstvo

Od igre s kockicama do programera LEGO Mindstorms

RAČUNALSTVO ZBIRKA ZADATAKA

Najnoviju verziju uputa skinite na: Stranica. barxprint upute (verzija 26/04/2012)

1.7 Predstavljanje negativnih brojeva u binarnom sistemu

3D GRAFIKA I ANIMACIJA

Programiranje za internet zimski semestar 2013/2014. Java kroz primjere (skripta je u fazi izradi)

RAZVOJ IPHONE APLIKACIJA POMOĆU PROGRAMSKOG JEZIKA SWIFT

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS

DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO DOO PODGORICA

Upotreba selektora. June 04

Uvod. Microsoft Office Excel

CRNA GORA

Vježba 4. Zadatak Ispod naslova napisati sljedeći tekst (bez okvira):

SVEUĈILIŠTE U ZAGREBU FAKULTET STROJARSTVA I BRODOGRADNJE ZAVRŠNI RAD. Lorena Vlah Zagreb, godina

MEĐIMURSKO VELEUČILIŠTE U ČAKOVCU RAČUNARSTVO ROBERT PRAŠNIČKI

WELLNESS & SPA YOUR SERENITY IS OUR PRIORITY. VAŠ MIR JE NAŠ PRIORITET!

UPUTSTVO. za ruter TP-LINK TD-854W/ TD-W8951NB

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU. Diplomski rad. Beograd, Novembar 2016.

24th International FIG Congress

Napredna obrada teksta Korištenje proširenog skupa znakova Pisanje teksta u stupcima

FER2.net. Tutorial za 1. međuispit iz Baza podataka. web verzija tutoriala: autor: christair. Sadržaj:

Uvod u MS Word. Nova znanja. Novi pojmovi

Dežurni nastavnik: Ispit traje 3 sata, prvih sat vremena nije dozvoljeno napuštanje ispita. Upotreba literature nije dozvoljena.

Croatian Automobile Club: Contribution to road safety in the Republic of Croatia

Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu

Sveučilište Jurja Dobrile u Puli Odjel za informacijsko-komunikacijske tehnologije ANTONIO VUK DATOTEKE U PROGRAMSKOM JEZIKU C++ Završni rad

1. Lekcija Pojam entiteta, podatka i informacije

EKSPLORATIVNA ANALIZA PODATAKA IZ SUSTAVA ZA ISPORUKU OGLASA

Iskustva video konferencija u školskim projektima

APLIKACIJA ZA RAČUNANJE N-GRAMA

Kristina Ricks ISYS 520 VBA Project Write-up Around the World

SIGURNOST APLIKACIJA I STRANICA IZRAĐENIH U PHP-U

Informacioni sistem za izvještavanje baziran na indikatorima (IRIS) Korisničko upustvo. Verzija 1.0

Transcription:

MS Excel VBA za studente kemije - podsjetnik - Ovaj podsjetnik sadrži kratka objašnjenja i pravilni način pisanja (sintaksu) za sve naredbe koje su obrađene tijekom održavanja Računalnog praktikuma. Dodatak podsjetniku je objašnjenje deklariranja varijabli uz prikaz svih tipova varijabli, te skraćeni podsjetnik namijenjen korištenju na kolokviju. Option Explicit Ova opcija nije nužna, ali kada je uključimo u program, tada će program zahtijevati da DEKLARIRAMO baš svaku varijablu koju koristimo. Deklaracija se vrši naredbom DIM (Dim dolazi od riječi "dimension"), u suprotnom se javlja greška. Za studente ova opcija je OBAVEZNA! Sub imeprograma() Početak svakog programa. Ime ne bi trebalo sadržavati RAZMAKE, SPECIJALNE ZNAKOVE ili HRVATSKA SLOVA. Velika i mala slova VBA ne razlikuje, pa je dovoljno pisati sve malim slovima, a ukoliko Excel sam postavi početno slovo Veliko, tada se radi o rezerviranoj riječi koja ne smije biti naziv programa. Ponekad se zbog iste greške javi i poruka "Compile Error: Expected: Identifier". Worksheets("Sheet1").Activate (Umjesto "Sheet1" dolazi ime radnog worksheeta) Ova opcija izričito daje programu do znanja gdje se točno nalaze podaci sa kojima se radi. Opcija nije nužna, ali je korisna kada radimo sa nekoliko worksheeta istovremeno. Ako ovu liniju izostavimo, program će raditi sa podacima iz worksheeta u kojemu je zadnje nešto napravljeno. Sheet1.Cells.Clear Služi za brisanje prethodno upisanih sadržaja u čitavom worksheetu. Opcija nije nužna, ali je korisna. Dim k As Integer (ili Long ili Single ili Double...) Obavezno dolazi prije prvog spominjanja varijable u programu. Najbolje odmah na početku. Ovisi o očekivanim vrijednostima varijable. Vidi tablicu "vrste podataka u VBA"! U praksi se najčešće koriste navedene četiri numeričke deklaracije. Const c As Single = 300000000 Na sličan način kao i varijable, deklariraju se i konstante. Treba paziti da vrsta podatka odgovara vrijednosti konstante: Ne može se pisati: Const pi As Integer = 3.14 Jer će u tom slučaju program zaokružiti pi na cijeli broj (3) i s njim raditi normalno, a rezultat će naravno biti pogrešan! 1

Tijek rada većine programa je (redom): UNOS (podataka) OBRADA (računanje) IZLAZ (ispis rezultata) [ unos i izlaz podataka na engleskom se kažu INPUT i OUTPUT ] UNOS PODATAKA Dva su osnovna načina unosa: 1.) upisivanje podataka u ćeliju worksheeta 2.) traženje od korisnika da unese podatke u formular za unos podataka (inputbox) k = Range("A1").Value 1. DOHVAT PODATAKA IZ ĆELIJE WORKSHEETA prijevod: "Neka varijabla k bude ono što je upisano u ćeliju A1". Pošto smo prethodno aktivirali "Sheet1", podrazumijeva se da se ćelija "A1" nalazi u tom worksheetu. Ukoliko želimo dohvatiti vrijednost ćelije iz nekog drugog sheeta, pišemo: k = Worksheets("Sheet2").Range("A1").Value Drugi način definiranja položaja ćelije (ili skupa ćelija koje tvore pravokutnik): k = Range(Cells(1, 1), Cells(1, 1)).Value ( ćelija "A1" ) Prva označena ćelija je gornja lijeva, a druga je donja desna. Oznaka položaja svake ćelije sastoji se od dva parametra, prvi je redni broj RETKA, a drugi je redni broj STUPCA (stupac "A" je 1, "B" je 2...). Čak i kada se radi samo o jednoj ćeliji MORAJU se definirati obje ćelije, koje su u tom slučaju jednake: Ovim načinom zapisivanja omogućeno je povezivanje adrese ćelije sa varijablom u programu. 2. FORMULAR ZA UNOS PODATAKA INPUTBOX k = Inputbox("Molim unesite jedan broj") prijevod: "Neka varijabla k bude ono što korisnik upiše u formular". Tekst upita je proizvoljan i ovisi o onome što tražite od korisnika. 2

OBRADA PODATAKA Obuhvaća sve matematičke i logičke operacije koje možemo izvršiti na i sa unesenim podacima kako bi smo dobili željeni rezultat. Osim osnovnih matematičkih operacija, često su nam potrebne konstrukcije petlje FOR-NEXT, IF-THEN, WHILE itd. 1. ARITMETIČKE OPERACIJE Dim n As Long (deklariranje nove varijable) Dim k As Long (deklariranje nove varijable) k = Worksheets("Sheet2").Range("A1").Value n = (k + 1) ^ 2 U ovom slučaju program će pročitati "k" iz ćelije "A1", dodati mu "1" i rezultat kvadrirati. Mogu se koristiti operatori standardnih matematičkih operacija (+ - / *), te funkcije potenciranja (broj^potencija) i vađenja kvadratnog korijena SQR(broj). Vađenje svih drugih korijena radi se upotrebom funkcije potenciranja na razlomak ( 8^(1/3) = 2). a = 19 \ 6 Ova operacija daje cjelobrojni kvocijent: 19 \ 6 = 3 a = 19 Mod 6 Ova operacija daje ostatak od cjelobrojnog dijeljenja: 19 Mod 6 = 1 Dakle 19 / 6 = 3 i ostatak 1 Treba razlikovati znak dijeljenja "/" od znaka cjelobrojnog dijeljenja "\" (Alt Gr + Q) Dim a As Integer 2. FOR-NEXT PETLJA (brojač) (deklariranje nove varijable) For a = 1 To 10 u prijevodu znaci: "Neka (varijabla) a ima vrijednost redom od 1 do 10" Dodatak naredbi FOR koji omogućava određivanje redoslijeda brojanja je STEP: For a = 1 To 10 Step 2 (samo neparne brojeve [1,3,5,7,9]) For a = 2 To 10 Step 2 (samo parni brojevi [2, 4, 6, 8,10]) For a = 10 To 1 Step -1 (brojanje unatrag [10, 9, 8,...]) Next a Završetak svake FOR-NEXT petlje. U prijevodu znači "Vrati se na FOR i uzmi sljedeću po redu vrijednost a, zatim s njom ponovi sve operacije između FOR i NEXT ". Ukoliko programiranje zahtijeva petlju u petlji, valja paziti na redoslijed naredbi NEXT, koji je obrnut od redoslijeda slaganja naredbi FOR: For a = 1 To 10 For b = 1 To 10 (ovdje se nalaze naredbe koje u sebi sadrže varijable a i b) Next b Next a 3

3. WHILE PETLJA While a < 10 U prijevodu znaci: "sve dok je varijabla a manja od 10, neka se izvršavaju sve naredbe koje se nalaze između While i Wend". Wend (završetak While petlje) 4. IF-THEN NAREDBA GRANANJA If a < 10 Then U prijevodu znaci: "Ako je varijabla a manja od 10, neka se izvršavaju naredbe koje slijede" ElseIf a = 10 Then "Ako je varijabla a jednaka 10, neka se izvršavaju naredbe koje slijede" Ovo je drugi uvjet, a na isti način može se nanizati jedan za drugim više uvjeta ElseIf. Else "U svim preostalim slučajevima neka se izvršavaju naredbe koje slijede" Ovo je posljednji uvjet, a obuhvaća sve preostale mogućnosti. End If (Završetak IF-THEN naredbe.) OPERATORI USPOREĐIVANJA su: =, >, <, >=, <=, <>, a više uvjeta moguće je i povezivati LOGIČKIM OPERATORIMA. Uz ostale, najčešće su u upotrebi AND i OR. If a < 10 AND a > 5 Then (moraju biti ispunjena oba uvjeta) If a < 10 OR a = 15 Then (mora biti ispunjen jedan od dva uvjeta) 4

IZLAZ REZULTATA (ispis) Dva su osnovna načina ispisa rezultata rada programa: 1.) ispisivanje rezultata u ćeliju worksheeta 2.) ispisivanje rezultata izravno u prozorčiću na ekranu (msgbox) Range("A1").Value = k 1. ISPISIVANJE REZULTATA U ĆELIJE WORKSHEETA prijevod: "Neka se u ćeliju A1 upiše vrijednost koju ima varijabla k". Kao što postoji i drugi način definiranja položaja ćelije (ili skupa ćelija koje tvore pravokutnik) pri unosu podataka, tako isti način možemo koristiti i za ispis: Range(Cells(1, i), Cells(2, i)).value = k Ovim načinom zapisivanja omogućeno je povezivanje adrese ćelije sa varijablom u programu. Primjerice, izraz koji obuhvaća prvih i ćelija u stupcu A: Range(Cells(1, 1), Cells(i, 1)).Value = k Adresiranje više ćelija: Range("A1:A7").Value = k NE može se pisati: Range("A1:Ai").Value = k 2. ISPIS REZULTATA U PROZORČIĆU NA EKRANU MSGBOX (message box) Msgbox("Rezultat je: " & k) Na ekranu se pojavljuje prozorčić sa porukom "Rezultat je: (vrijednost varijable k)" Znak "&" (Shift + 6) služi za povezivanje (nizanje) teksta i varijable u jednu rečenicu. Varijabla se ne smije stavljati pod "" jer Excel sve što je pod navodnim znacima ispisuje doslovno onako kako je upisano. 5

Posebne funkcionalnosti Excela Excel VBA sadrži ugrađen velik broj funkcija od kojih smo izdvojili neke zanimljive: 1.) Svojstva: Date, Time, Now 2.) Svojstva: Count, Column, Row Range("A1").Value = Date U ćeliju A1 ispisuje današnji datum Range("A1").Value = Time U ćeliju A1 ispisuje trenutno vrijeme 1. DATE, TIME, NOW Range("A1").Value = Now U ćeliju A1 ispisuje i današnji datum i trenutno vrijeme 2. COUNT, COLUMN, ROW Range("A1").Value = Range("A2:D56").Count U ćeliju A1 ispisuje koliko ćelija ima u pravokutniku čija je gornja lijeva ćelija A2, a donja desna D56. Range("A1").Value = Range("A2:D56").Column U ćeliju A1 ispisuje broj najljevijeg stupca u navedenom rasponu (njegov indeks). Range("A1").Value = Range("A2:D56").Row U ćeliju A1 ispisuje broj najgornjeg retka u navedenom rasponu (njegov indeks). 6

POLJA Polje se može zamisliti kao varijabla koja u sebi sadrži više različitih vrijednosti. Polje može biti jednodimenzionalno (niz varijabli) i dvodimenzionalno (nalik matrici). Obična varijabla može se zamisliti kao nul-dimenzionalno polje. Prilikom definiranja polja mora mu se odrediti najveća moguća veličina, a unos vrijednosti najjednostavnije je napraviti korištenjem FOR-NEXT petlje. Unesene vrijednosti su memorirane, ali ukoliko to izričito ne želimo, nigdje se ne ispisuju. 1D-POLJE Dim niz(1 To 50) As Single Ovime je definirano 1D polje niz sa max 50 vrijednosti (ne moraju sve vrijednosti biti popunjene). Unos m vrijednosti pomoću For-Next petlje (uz ispis u worksheet): For i = 1 To m niz(i) = InputBox(" ") Worksheets("Sheet1").Range(Cells(i,1),Cells(i,1)).Value = niz(i) Next i Pojedinoj vrijednosti u polju pristupa se pomoću indeksa u zagradi, npr.: Range("A1").Value = niz(5) ispisuje vrijednost 5. člana polja u ćeliju A1 2D-POLJE Dim matrica(1 To 5, 1 To 5) As Single Ovime je definirano 2D polje pod nazivom matr max veličine 5 x 5. Unos m*n vrijednosti pomoću dvostruke For-Next petlje (uz ispis u worksheet): For i = 1 To m For j = 1 To n matrica(i, j) = InputBox(" ") Worksheets("Sheet1").Range(Cells(i,j),Cells(i,j)).Value = matrica(i,j) Next j Next i Element polja u ovom slučaju označava se sa dva indeksa: matrica(i, j) 'Komentar Opaske koje programer radi lakšeg kasnijeg snalaženja piše u sam program počinju znakom '. Sve što se nalazi iza tog znaka Excel ne čita. End Sub Kraj programa. Excel automatski dodaje ovu liniju. 7