Izvršavanje makronaredbe. Razumijevanje makronaredbi i makronaredbi Učinite sami

MAKROS.

Većina korisnika izrađuje i koristi dokumente sustava Microsoft Office koristeći standardne mogućnosti aplikacija. Međutim, Office pruža široke mogućnosti za automatiziranje rada s dokumentima - to je programiranje u VBA -i i korištenje makronaredbi.

VBA, programski jezik Visial Basic for Applications, programski je jezik ugrađen u Officeove aplikacije koji se koristi za izradu makronaredbi.

Makro i makro snimač.

Umjesto ponavljanja monotonih naredbi u MS Office -u, možete stvoriti makro koji će automatski izvršiti ovaj niz naredbi. Makro vam omogućuje unos singl naredba koja izvršava isti zadatak kao i grupa naredbi.

Makro je program napisan u VBA. VBA je posebna verzija Visial Basic -a (za primjenu).

Postoje dva načina za stvaranje makronaredbi u sustavu Office:

§ Makro snimač bilježi radnje korisnika

§ otvaranje prozora VBA i unos izjava VBA

Najčešće korisnik koristi VBA za ispravljanje makronaredbi koje je snimio snimač.

Za rad s makronaredbama u MS Officeu 2007-13, otvorite karticu DEVELOPER na vrpci (gumb OFFICE / Word PARAMETERS / RIBBON SETTINGS).

Korisnik mora razmisliti o početnim uvjetima za makronaredbu, na primjer, ako je potrebno učiniti nešto s odabranim fragmentom, tada bi fragment trebao biti odabran prije snimanja ili pokretanja.

Makro snimanje.

§ Kartica DEVELOPER / RECORD MACRO, dajte naziv makronaredbi. Naziv ne smije sadržavati razmake, započinjati slovom i ne smije sadržavati posebne znakove. maksimalna duljina imena je 80 znakova. Ako stvorena makronaredba dobije naziv koji odgovara imenu ugrađene makronaredbe programa Microsoft Word, postojeća makronaredba zamjenjuje se novom.

§ izvršavati naredbe

§ Kartica DEVELOPER / STOP RECORD

Obično je makro dostupan za predložak Normal.dot, automatski se sprema s njim.

Pokretanje makronaredbe.

§ Kartica DEVELOPER / MACROS, odaberite željenu i IZVRŠI.



Dodjeljivanje makronaredbe gumbu na Alatnoj traci za brzi pristup i / ili prečacu na tipkovnici.

§ ili tipka OFFICE / PARAMETRI / Postavke riječi

§ ili odaberite odgovarajuće radnje pri dodjeljivanju imena makronaredbi.

Prilikom dodjeljivanja tipkovnih prečaca makroima imajte na umu da su mnogi prečaci rezervirani u Wordeu i nije lako pronaći "besplatnu" kombinaciju.

Brisanje makronaredbe.

§ Kartica DEVELOPER / MACROS, odaberite željenu i IZBRIŠI.

Promijenite tekst makronaredbe.

Prilikom snimanja makronaredbe, rekorder sprema niz tekstualnih uputa u VBA. Ovaj tekstualni opis naziva se izvorni kod. Može se pogledati i ispraviti:

§ Kartica DEVELOPER / MACROS, odaberite željenu i PROMJENITE.

Da biste pokrenuli makro iz VBA uređivača: gumb RUN ()

Izrada automatski izvedenih makronaredbi.

Word ima 5 posebnih naziva za makronaredbe

VBA - programi se sastoje od jednostavnog niza radnji: program pristupa objektu, daje mu svojstva i izvodi radnje s njim. Svaki dokument, odlomak, ... je objekt. Na primjer, objekt Odabir je odabir. Word je sam objekt aplikacije (vidi Dodatke 2,3)



Svaki objekt ima svoje karakteristike - svojstva.

Mnogi objekti izvode radnje koje se nazivaju metodama.

Na primjer,

ActiveDocument.Close (objekt - aktivni dokument, metoda - zatvori)

Prema VBA sintaksi, separator je točka.

Obično: objekt, točka, metoda i / ili svojstva (odvojena točkom)

Desni miš na objektu - popis metoda, svojstava (List Properties / Methods)

Slijed With… .. End With omogućuje vam da navedete više metoda / svojstava za jedan objekt bez ponavljanja njegova imena mnogo puta.

Praktični zadatak 1.

Napisimo makro pod nazivom "my_first_macro", u koji ćemo napisati sljedeće naredbe:

§ Pejzažno usmjerenje stranice

§ Prikaz ljestvice - 33%

Kao rezultat toga, dobivamo sljedeći kod

Sub my_first_macro ()

"

"moja_prva_makro makro

"Makro snimljen 03.12.07

S ActiveDocument.PageSetup

LineNumbering.Active = Netačno

Orijentacija = wdOrientLandscape

TopMargin = CentimetriToPoints (1.5)

BottomMargin = CentimetriToPoints (3)

Lijevi margin = CentimetriToPoints (2)

.RightMargin = Centimetri do bodova (2)

Oluk = CentimetriToPoints (0)

HeaderDistance = CentimetersToPoints (1.25)

FooterDistance = CentimetersToPoints (1.25)

Širina stranice = CentimetriToPoints (29.7)

PageHeight = CentimetriToPoints (21)

FirstPageTray = wdPrinterDefaultBin

OtherPagesTray = wdPrinterDefaultBin

SectionStart = wdSectionNewPage

OddAndEvenPagesHeaderFooter = Netačno

DifferentFirstPageHeaderFooter = Netačno

VerticalAlignment = wdAlignVerticalTop

SuppressEndnotes = Netačno

MirrorMargins = Netačno

TwoPagesOnOne = Netačno

GutterPos = wdGutterPosLeft

ActiveWindow.ActivePane.View.Zoom.Percentage = 33

Kraj podm

Možete ispraviti tekst ove makronaredbe, na primjer,

§ promijenite postotak, na primjer 33 u 42

§ promijeniti polja

§ zamijeniti False s True u retku.LineNumbering.Active = False (bit će automatsko numeriranje redaka)

§ zamijeniti u redu. Orijentacija = wdOrientLandscape na wdOrientPortrait, orijentacija papira bit će okomita

Nakon spremanja, ovaj se makro može ponovno pokrenuti za bilo koji drugi dokument.

Praktični zadatak 2.

Izradimo makronaredbu koja stvara okvir s porukom pri otvaranju datoteke.

MessageBox je okvir za poruku koji se pojavljuje na ekranu.

Za prikaz MessageBox -a kada otvorite bilo koju datoteku MS Word, morate stvoriti makronaredbu pod nazivom AutoOpen i pozvati unutar nje funkciju msgbox. To će izgledati ovako:

Sub AutoOpen ()

"Ova funkcija se poziva pri otvaranju dokumenta

"Prikaz MessageBox -a

MsgBox "Pozdrav prijatelju!"

Slijed radnji (jedna od opcija):

§ Kartica DEVELOPER / MACROS, dajte bilo koji naziv i KREIRAJ

§ U prozoru uređivača VBA promijenite naziv i ispišite tekst programa u VBA

§ Uštedjeti

§ Pokreni

Sada, nakon otvaranja svakog dokumenta, primit ćemo poruku.

Naredba za prikaz okvira s porukom izgleda ovako:

MsgBox (promt, gumb, naslov, datoteka pomoći)

Promt je obavezni argument koji navodi tekst koji će se pojaviti u okviru za poruku

Gumb - izborni argument koji definira vrstu okvira za poruku, prisutnost gumba U redu, Odustani, Zaustavi, Preskoči itd.

Naslov - izborni argument koji navodi naslov prozora

· Datoteka pomoći - izborni argument koji određuje koja će se datoteka pomoći otvoriti ako korisnik pritisne F1

Praktični zadatak 3.

Izrada jednostavnog dijaloškog okvira.

Da biste stvorili dijaloški okvir, morate stvoriti vizualni objekt koji se naziva obrazac. Obrazac je analogni prozor na koji možete postaviti kontrole (gumbe, radio tipke, potvrdne okvire itd.). Svaki je obrazac dio korisničkog sučelja. Svaki oblik je objekt, a zauzvrat sadrži mnogo objekata od kojih se svaki može zasebno kontrolirati.

Izrada obrasca:

§ VBA prozor (ALT + F11)

UMETI / Novi obrazac ili Korisnički obrazac (umetnite novi obrazac)

§ U prozoru Svojstva možete konfigurirati svojstva obrasca, na primjer, svojstvo Caption omogućuje vam da obliku date naziv

§ Pomoću ploče ToolBox postavite kontrole na obrazac:

· Oznaka - natpis

CommandButton - naredbeni gumb za izvođenje radnje

TextBox -tekstualno polje

Slika - crtež

ChtckBox - potvrdni okvir

§ Prilagođavamo rad svakog elementa. Na primjer, dva klika na CommandButton omogućit će vam da napišete one VBA izraze koje biste trebali izvršiti kada pritisnete ovaj gumb.

Da bi se takav dijaloški okvir pojavio pri pokretanju makronaredbe, morate dodati sljedeće retke u makronaredbu:

Učitajte korisnički obrazac1

Korisnički obrazac1.Prikaži

Jer ovladavanje VBA -om zahtijeva puno vremena i poznavanje osnova algoritama, korisnici obično snimaju naredbe programa Word pomoću snimača makronaredbi, zatim ispravljaju i / ili dodaju makronaredbu.


Stvorenu makronaredbu treba izvršiti. Postoji nekoliko načina za pokretanje makronaredbi:

1. Putem naredbe Makronaredbe -> Makro -> Usluga

2. Korištenjem kombinacije tipki dodijeljenih makronaredbi;

3. Pomoću naredbe izbornika dodijeljene ovoj makronaredbi;

4. Putem gumba dodijeljenog ovoj makronaredbi na alatnoj traci.

Izbor načina izvođenja makronaredbe određuje sam korisnik na temelju vlastitih potreba i sklonosti. Preporučljivo je upotrijebiti drugu metodu za pokretanje najčešće izvođenih makronaredbi. Treća ilustrira mogućnost unosa vlastitih naredbi u glavni izbornik i na taj način poboljšati izbornik. Potonja se metoda razlikuje po vidljivosti lansiranja.

Pogledajmo pobliže svaku od ovih metoda za pokretanje makronaredbi.

1. Tim Makronaredbe -> Makro -> Usluga- standardna verzija pozivanja makronaredbe radi izvođenja. U dijaloškom okviru Makronaredbe odaberite stvorenu makronaredbu i kliknite gumb [Pokreni]. Ova metoda je također prikladna za uređivanje i brisanje makronaredbi - gumbe [Uredi], [Izbriši].

2. Pomoću kombinacije tipki (slika 2):

Riža. 2. Dijaloški okvir. Konfiguriranje tipkovnice za dodjeljivanje makronaredba

tipkovni prečaci u programu Microsoft Word.

2. Za pozivanje makronaredbe u dijaloškom okviru Prilagodba tipkovnice u kartici Nova tipkovna prečica prikazana je kombinacija upravljačkih tipki. Na primjer, zajedno s kombinacijom numeričkih ili abecednih tipki (na latinskom);

Zatim se pritisne gumb [Dodijeli], što čini dodjelu.

3. Pozivanje naredbom u izborniku - izvršava se standardna postavka izbornika: dodavanje stavke izbornika povezane s pozivanjem makro naredbe:

U dijaloškom okviru koji se pojavi Prilagođavanje, na kartici Naredbe iz kombiniranog okvira Kategorije izabran je tim Makronaredbe iza kojeg slijedi naziv makronaredbe;

nakon što kliknete lijevom tipkom miša na naziv makro naredbe, pojavljuje se točkasta slika gumba koju treba povući u izbornik da biste dodali stavku izbornika. Nakon toga se otpušta lijeva tipka miša.

4. Pomoću gumba dodijeljenog ovoj makronaredbi na alatnoj traci (slika 3):

U programu Word, kada pritisnete gumb [Panels] (vidi sliku 1) u dijaloškom okviru Snimanje pojavit će se dijaloški okvir makronaredbe Prilagođavanje u kojem je jezičak Naredbe iz kombiniranog okvira Kategorije odabran Makronaredbe iza kojeg slijedi naziv makronaredbe;

nakon što kliknete lijevom tipkom miša na naziv makronaredbe, pojavljuje se točkasta slika gumba koju treba povući na alatnu traku. Nakon toga se otpušta lijeva tipka miša;

klikom na gumb [Promijeni odabrani objekt] možete odabrati željenu ikonu za gumb pokretanjem naredbe ü Odaberite ikonu za gumb(slika 4). Ikonu možete urediti i pomoću naredbe Promijenite ikonu za gumb(prozor Uređivač gumba) (slika 5).

Riža. 3. Dijaloški okvir Postavke za dodjeljivanje makronaredbi
gumbi na alatnoj traci u programu Microsoft Word.

Riža. 4. Dijaloški okvir za odabir ikone za gumb

Riža. 5. Dijaloški okvir Gumbi uređivača

U Excelu je dodatno moguće pokrenuti makro pomoću simbola koji mu je dodijeljen.

Nakon odabira načina poziva, pojavljuje se mala alatna traka Zaustavi snimanje koji sadrži gumb:

- [Zaustavi snimanje] - završava snimanje makronaredbe;

[Pauza] - pauzira snimanje makronaredbi (slika 6).

Slika 6. Ploča za snimanje makroa u programu Microsoft Word

  1. Modificiranje makronaredbi

Makronaredbe se spremaju u predložak kao programski tekstovi. Svaki predložak može sadržavati bilo koji broj makronaredbi. Budući da se datoteke s točkama (točka je ekstenzija datoteke predloška) ne mogu čitati kao dokumenti, Word nudi posebne alate koji vam omogućuju pregled i uređivanje makronaredbi kao niz VBA izraza (slika 7). Tijekom uređivanja bilo koji makro predstavljen je kao niz VBA izraza. Bit uređivanja makronaredbi je brisanje, dodavanje i zamjena operatora, kao pri programiranju na bilo kojem drugom jeziku.

Slika 7. Dijalog uređivača VBA

Uređivanje makronaredbi izvodi se naredbom Makronaredbe... U dijaloškom okviru Makro, na terenu Ime odabran je naziv makronaredbe za uređivanje. Proces započinje klikom na gumb [Debug]. Možete navesti naziv nepostojeće makronaredbe. Ako zatim pritisnete gumb [Kreiraj], stvorit će se nova makronaredba, a korisnik će je moći snimiti u VBA.

Gumb [Debug] koristi se za otvaranje prozora za uređivanje makronaredbi koji prikazuje sadržaj makronaredbe u VBA -i. Prozor za uređivanje makronaredbi sličan je običnom prozoru za dokumente, ali se razlikuje po odsustvu ravnala koordinata i prisutnosti posebne alatne trake. Može se otvoriti nekoliko prozora za obradu makroa. Makro tekst uređuje se na isti način kao i redovni tekst programa VBA. U tom slučaju dostupna je većina naredbi za uređivanje teksta, na primjer, naredbe Kopirati i Izrezati.

Klikom na gumb [Izbriši] briše se navedena makronaredba.

Da biste zatvorili prozor za uređivanje makronaredbi, možete upotrijebiti izbornik sustava prozora za uređivanje ili naredbu Zatvoriti na jelovniku Datoteka... Određene naredbe za uređivanje i ispravljanje pogrešaka makronaredbe izvode se pritiskom na gumbe u retku za brisanje.

Bibliografija:

1. Musin K.A. "Tehnički dodatak Microsoft Wordu"

2. Borodin A.I "Makroprogramiranje"

Ako vam se svidio makro Okvir od prskanja, tada ćete neizbježno imati želju prilagoditi ga u skladu sa svojim potrebama. Neki od ovih poslova mogu se obaviti bez promjene makronaredbi. Na primjer, možete promijeniti parametre filtra za kontrolu količine hrapavosti na rubovima. Prema zadanim postavkama, ova makronaredba ne traži nikakve parametre prilikom izvođenja, već koristi parametre navedene prilikom pisanja. Makronu možete reći da izdaje upite za bilo koju naredbu koja ima bilo koje parametre. Pokažimo na primjeru parametara filtra Prskanje.

  1. Odaberite prvi snimak u paleti Povijest... Ovo će vratiti sliku u izvorno stanje.
  2. Pronađite u paleti Radnje naredbeni redak Prskanje i kliknite prazan pravokutnik lijevo od naziva naredbe. U njoj će se pojaviti ikona koja predstavlja dijaloški okvir prikazan na slici.
  3. Osipni okvirb.
  4. Radnje.
  5. Prilikom izvršavanja naredbe Prskanje Photoshop će otvoriti dijaloški okvir za filtriranje u kojem možete odabrati željene opcije. Pokušajte, na primjer, smanjiti vrijednost Glatkoća do 2.
  6. Pritisnite gumb u redu... Makro će se nastaviti s izvršavanjem.

Imajte na umu da svako novo izvršavanje makronaredbe stvara novi snimak izvornog stanja dokumenta. Ovo je vrlo korisno, ali nije uvijek potrebno. Na primjer, ako odaberete naredbene parametre, sa svakim uzorkom pojavit će se novi snimak. S druge strane, brisanje naredbe za izradu snimke također je nepoželjno - možete nepovratno izgubiti rezultate prethodnog rada ako naredba makronaredbe nije prikladna. Rješenje je privremeno otkazati izvršavanje nepotrebne naredbe.

  1. Pritisnite kvačicu s lijeve strane naziva naredbe Napravite snimku u paleti Radnje.
  2. Odaberite naziv cijele makronaredbe Okvir za prskanje.
  3. Pokrenite makro naredbu klikom na odgovarajuću ikonu u paleti Radnje.
  4. Otvorite paletu Povijest i provjerite nije li snimljen novi snimak. Privremeno onemogućavanje naredbe vrlo je korisno pri stvaranju vlastitih makronaredbi i pri njihovom uklanjanju pogrešaka. Daljnje promjene zasigurno će utjecati na samu makronaredbu te će zahtijevati snimanje novih naredbi i uklanjanje postojećih.

Makro snimanje.

Ovaj odjeljak opisuje kako stvoriti jednostavan, ali vrlo koristan makro koji vam omogućuje centriranje slike na trenutni sloj. Upotrijebimo jednu značajku naredbe Zalijepiti: postavlja sliku točno u središte sloja. Svaka slika sa slojem prikladna je za snimanje makro naredbe. Pozadina i još jedan sloj. Slika koja je već na ekranu zadovoljava ove kriterije. Prilikom izrade makro naredbe pretpostavit ćemo da je sloj koji zahtijeva centriranje aktivan do trenutka pokretanja naredbe makronaredbe.

  1. Aktivirajte sloj Sloj 1.
  2. Postavimo makro u novi skup makronaredbi. U paleti Radnje kliknite gumb za stvaranje novog skupa makronaredbi Stvorite novi skup.
  3. U otvorenom dijaloškom okviru Novi set unesite naziv za novi skup, na primjer "Moje radnje".
  4. Pritisnite U redu. U paleti se pojavio novi set.
  5. U paleti Radnje odaberite ikonu za stvaranje nove makronaredbe Izradite novu radnju.
  6. U dijaloškom okviru koji se pojavi Nova akcija u polje unesite naziv makronaredbe Ime npr. "Centar (sloj)". Ispod ovog polja nalazi se popis svih skupova makronaredbi prisutnih u paleti. Prema zadanim postavkama u njemu je odabran odabrani skup, Moje radnje. Ostatak elemenata ovog dijaloškog okvira bavit ćemo se malo kasnije.

Savjet. Prilikom izrade makronaredbe navedite s čime radi. Ako makronaredba zahtijeva da slika radi na zasebnom sloju, u zagradama navedite "Sloj". Ako je za rad potreban odabir, navedite "Odabir". Takve se oznake prihvaćaju prilikom razmjene makronaredbi.

  1. Pritisnite gumb Snimiti... Od sada će sve vaše radnje u programu biti zabilježene u makronaredbi Center (Layer). Nakon izvršavanja svake naredbe, odmah pogledajte paletu Radnje provjeravajući rezultat svog snimanja. Ikona zapisa na paleti označena je crvenom bojom.
  2. Odaberite tim svi Jelovnik Izaberi ili pritisnite tipke CTRL + A... U paleti Radnje pojavio se prvi tim Postavi odabir s parametrom Da odgovara odabiru cijelog platna ( svi).
  3. Odaberite tim Izrezati Jelovnik Uredi Radnje.
  4. Odaberite tim Zalijepiti Jelovnik Uredi... Odgovarajuća naredba pojavit će se u paleti. Radnje.

Savjet. Ako ste tijekom snimanja makronaredbe pogrešno učinili pogrešnu radnju i odmah je pronašli, odaberite naredbu Poništi Jelovnik Uredi... Pogrešna naredba s palete Radnje neće nestati, već će se slika vratiti u prijašnje stanje. Zatim samo unesite ispravnu naredbu. Neispravna naredba preostala u paleti lako se briše nakon dovršetka snimanja. Da biste to učinili, samo trebate povući naredbeni redak do ikone za brisanje.

  1. Sve radnje makronaredbe su dovršene i vrijeme je da prekinete snimanje. Pritisnite ikonu za zaustavljanje snimanja u paleti Radnje.

Toplo preporučujemo da svakoj naredbi makronaredbe koju kreirate dostavite komentar koji opisuje njezine zahtjeve za početno stanje dokumenta, jer jednoj je za rad potreban objekt koji se nalazi na sloju, drugoj je potrebno odabrano područje, trećoj nisu potrebni slojevi, itd. Kad budete imali knjižnicu makronaredbi, vjerojatno ćete se teško sjetiti pojedinosti o funkcioniranju svake funkcije.

  1. Odaberite u paleti Radnje naslov stvorene makronaredbe.
  2. Izvršite naredbu Umetni stop ... iz izbornika paleta Radnje... U otvorenom dijaloškom okviru Zaustavi snimanje vidi polje Poruka, u koji možete unijeti nekoliko redaka komentara i potvrdni okvir Dopustite Nastavi koji određuje hoće li dopustiti daljnje izvršavanje makronaredbe. Unesite tekst komentara i potvrdite okvir Dopustite Nastavi.
  3. Pritisnite gumb u redu.
  4. Pomaknite naredbu Stop u paleti Radnje na prvo mjesto u našoj makronaredbi na isti način na koji smo promijenili redoslijed slojeva u paleti slojeva - Povucite i ispustite. U makronaredbu smo dodali komentar koji će moći zaustaviti izvršavanje makronaredbe ako korisnik klikne Stop u dijaloškom okviru koji se otvara.

U programiranju, čak i ovom elementarnom, potrebno je da program oslobodi sve zauzete računalne resurse. Ova makronaredba ne zadovoljava ovaj zahtjev jer sav sadržaj sloja ostaje u međuspremniku. Ako je slika dovoljno velika, zauzeta memorija negativno će utjecati na izvedbu programa; S druge strane, pri prelasku na bilo koji drugi program i natrag, sadržaj međuspremnika prenosit će se između njih. Ego će dovesti do dosadnog kašnjenja. Kao samostalni rad, naredbu dopuni makro naredbom Čišćenje s izbornika Uredi.

Bilješka. Da biste napisali konturu makro naredbi, morate je prvo stvoriti, a zatim koristiti naredbu Umetni putanju izbornik paleta Radnje... Prilikom izvođenja naredbe makro, obris će se reproducirati na novoj slici. Snimanje makronaredbi u Photoshopu ima značajna ograničenja. Prvo, radnje alata za crtanje (četka, pečat, gumica itd.) Se ne bilježe. Drugo, ne postoji način da se kontrolira napredak makronaredbe. Makro naredba ne može pozivati ​​različite naredbe ovisno o bilo kojim uvjetima, nemoguće je organizirati ciklično izvršavanje grupe naredbi, primati i koristiti informacije o stanju dokumenta (veličina, razlučivost, model boje, broj i vrste slojeva i kanali itd.).

1. Koncept makronaredbe.

2. Pregled događaja

3. Stvaranje makronaredbi.

3.1. Postavljanje uvjeta za izvršavanje makronaredbi.

3.2. Stvaranje grupe makronaredbi.

4. Pokretanje makronaredbe.

1. Koncept makronaredbe

Za automatiziranje operacija u MS Access DBMS -u postoje dva alata: makronaredbe i moduli... Pomoću ovih alata moguće je utvrditi reakciju aplikacije na različite događaje koji se javljaju u obrascima i izvješćima: klik na gumb, primanje fokusa pomoću kontrole, prebacivanje na novi zapis, mijenjanje podataka, otvaranje obrasca, otvaranje izvješće itd.

Makro Je objekt baze podataka MS Access, koji je skup jedne ili više makronaredbi i dizajniran je za automatiziranje često obavljanih zadataka.

Makro - glavna komponenta makronaredbe, zatvorena instrukcija, neovisno ili u kombinaciji s drugim makronaredbama, koja određuje radnje izvedene u makronaredbi. Svaka makronaredba ima određeni naziv i eventualno jedan ili više argumenata koje su dostavili korisnici.

Funkcionalno, makroi se mogu podijeliti u nekoliko kategorija:

- rad s podacima u obrascima i izvješćima;

- izvršavanje naredbi, makronaredbi, procedura i upita;

- rad s predmetima;

- uvoz / izvoz podataka i objekata;

- drugi.

Tablica 11.1 prikazuje 56 makronaredbi MS Access DBMS -a grupiranih po kategorijama.

Tablica 11.1

Ugovoreni sastanak

Makro

Rad s podacima u obrascima i izvješćima

Uzorkovanje podataka

ApplyFilter

Kretanje po podacima

NextRecord (FindNext).

FindRecord,

Do upravljačkog elementa

Idi na stranicu,

OnRecord (GoToRecord)

Osvježite podatke ili zaslon

Ažuriraj (zahtjev)

ShowAllRecords

Izvođenje

Izvršavanje naredbe

RunCommand

Izvođenje makronaredbe, procedure ili upita

RunProgram (RunCode), RunMacro (RunMasgo), OpenQuery (OpenQuery), RunSQLQuery (RunSQL)

Izvršavanje druge aplikacije

RunApp

Prekid izvršenja

CancelEvent

StopAllMacros (StopAIIMacros),

Zaustavi makro

Odjavite se iz programa Microsoft Access

Prestati

Uvoz/
izvoz

Prosljeđivanje Microsoft Access objekata drugim aplikacijama

OutputIn Format (OutputTo),

SendObiect

Pretvorba formata podataka

ConvertDatabase (TransferDatabase), ConvertElectronicSheet (TransferSpreadsheet)

TransferText

Rad s objektima

Kopirajte, preimenujte ili spremite stavku

CopyObject, Preimenuj,

CopyDatabaseFile
(CopyDatabaseFile)

Brisanje objekta

DeleteObject

Promijenite veličinu ili postavite prozor

Proširi (povećaj),

Minimiziraj

MoveSize,

Vratiti

Otvaranje ili zatvaranje objekta

OpenForm, OpenModule, OpenQuery, OpenReport, OpenTable,

OpenFunction

Otvorena stranica (OpenDataAccessPage)

Otvoreni dijagram (OpenDiagram)

OpenStoreProcedure

OpenView

Zatvoriti

Ispis objekta

Ispis (PrintOut)

Odabir objekta

OdaberiteObjekt

Postavljanje vrijednosti polja, kontrole ili svojstva

SetValue

Ažuriranje objekta

UpdateObject

Izradite prilagođenu ili opću traku izbornika, prilagođeni ili globalni kontekstni izbornik

AddMenu

Postavljanje stanja stavki izbornika na namjenskoj ili općoj traci izbornika

SetMenultem

Prikaz informacija na ekranu

OutputOnScreen (odjek),

Pješčani sat,

Poruka (MsgBox),

SetWarnings

Generiranje pritisaka na tipke

Naredbe tipkovnice (SendKeys)

Prikažite ili sakrijte ugrađenu ili namjensku alatnu traku

Alatna traka (ShowToolbar)

Zvučni signal

Signal (ventilator)

Potpunije informacije o makroima možete pronaći u odjeljku referencaMicrosoft Pristup| Programiranje uMicrosoft Pristup| Makro naredbe.

Radnje koje se mogu izvesti pomoću makronaredbi vrlo su raznolike, stoga je za stvaranje makronaredbi potrebno poznavanje makronaredbi. Poznavanje makronaredbi također će biti korisno pri kreiranju postupaka u VBA, budući da su mnoge makronaredbe metode DoCmd objekta.

Prema mjestu skladištenja, makronaredbe su podijeljene u dvije vrste:

jednostavan(objekt koji se sastoji od skupa makronaredbi);

skupina(objekt koji se sastoji od skupa logički povezanih makronaredbi, od kojih svaka ima svoje ime i skup makronaredbi).

Prema načinu izvođenja, makronaredbe su podijeljene u dvije vrste:

linearni(svaki makro u makrou izvršava se uzastopno jedan za drugim);

s uvjetom(makronaredbe se izvršavaju ovisno o ispunjenosti određenih uvjeta).

2. Pregled događaja

Događaj Je li svaka radnja koju objekt prepoznaje. Događaji se javljaju kao rezultat radnji korisnika, izvršavanja VBA uputa ili generiranih od strane sustava. Primjeri događaja su: otvaranje obrasca, prelazak s jednog zapisa na drugi u obrascu, zatvaranje izvješća, klik na naredbeni gumb u obrascu itd.

Gotovo sve programiranje u MS Accessu svodi se na pisanje makronaredbi ili postupaka koji obrađuju događaje, odnosno programira se reakcija objekata na događaje. Događaji različitih MS Access objekata prikazani su na slikama 11.1 - 11.3.

Događaji se mogu podijeliti u sljedeće kategorije, grupirajući ih prema funkcionalnim karakteristikama (izvedene operacije):

- otvaranje i zatvaranje obrazaca i izvješća;

- promjena podataka;

- promijeniti fokus unosa;

- događaji rada s tipkovnicom;

- događaji miša;

- pečat;

- praćenje grešaka;

- istek određenog vremenskog razdoblja.

Slika 11.1. Kartica Događaji prozora svojstava obrasca.

Slika 11.2. Kartica Događaji prozora svojstava podređenog obrasca / kontrole izvješća.

Slika 11.3. Kartica Događaji prozora kontrolnih svojstava. Gumb (a) i kombinirani okvir (b).

3. Stvaranje makronaredbi

Izrada makronaredbi sastoji se od dva koraka:

1. U prozoru baze podataka idite na karticu Makronaredbe i kliknite na gumb Stvoriti .

2. U prozoru koji se pojavi Konstruktor makronaredbi stvoriti makronaredbu.

Prozor Konstruktor makronaredbe sastoji se od dva područja (slika 11.4):

- gornje područje namijenjeno je opisivanju logičke strukture makronaredbe;

- donje područje služi za opisivanje argumenata makronaredbi.

U gornjem području Konstruktor makronaredbe prema zadanim postavkama prikazuju se dva stupca Makro i Bilješka... Prikaz kolone Naziv makronaredbe i Stanje provodi pomoću odgovarajućih gumba na alatnoj traci Konstruktor makronaredbe.

Stanice u stupcu Makro koriste se za odabir s popisa makronaredbi uključenih u makro.

Stanice u stupcu Bilješka koriste se za opisivanje radnje koju izvodi makro (može biti prazan).

Stanice u stupcu Naziv makronaredbe koriste se za imenovanje makronaredbi u skupini makronaredbi.

Stanice u stupcu Stanje koriste se za određivanje slijeda izvođenja makronaredbi.

Slika 11.4. Prozor dizajnera makroa

Za brzo prebacivanje između gornjeg i donjeg područja prozora Konstruktor makronaredbi možete koristiti ključ < Ž 6> .

Postoji još jedan način unosa makronaredbi.

U prozoru baze podataka odabire se objekt: obrazac, izvješće, makro, upit ili tablica i pomoću miša se povlači u prozor Konstruktor makronaredbi... U okviru stupca Makro automatski će se pojaviti makro (na primjer, OpenForm), a neki argumenti naredbe makroa automatski će se popuniti (naziv objekta, način rada, način prozora).

Postoje dva načina za unos vrijednosti za argumente makronaredbe:

- odabir vrijednosti s popisa prihvatljivih vrijednosti;

- ručni unos vrijednosti ili pomoću dijaloškog okvira Graditelj izraza.

Primjer makronaredbe koja vam omogućuje otvaranje obrasca "Klijenti" u načinu obrasca, samo za čitanje i prikazivanje klijenata samo iz Španjolske, prikazan je na slici 11.5.

Slika 11.5. Prozor konstruktora makroa s ispunjenim vrijednostima argumenta

3.1. Postavljanje uvjeta za izvršavanje makronaredbi

Da biste stvorili makronaredbe za nelinearnu strukturu, morate prikazati stupac Stanje i navedite uvjet za izvršavanje makronaredbi u njemu.

Izvođenje makronaredbi počinje od prve naredbe makronaredbe i nastavlja se sve dok se ne pojavi prazan redak (znak kraja makronaredbe), naziv drugog makronaredbe ili makronaredbe StopMacro... Makroi za koje su definirani uvjeti izvršit će se samo ako uvjet zapisan u retku makronaredbe ima vrijednost Pravi... Za propagiranje uvjeta na sljedeće makroe potrebno je u stupcu Stanje označite tri točke ( ).

Primjer stvaranja makronaredbe nelinearne strukture

U obliku Dobavljači postoje dva polja Zemlja i Indeks... Prije ažuriranja zapisa (prije spremanja) potrebno je provjeriti ispravnost unesenog indeksa za neke zemlje.

Ako je polje Zemlja je NULL, tada spremite zapis, jer je nemoguće provjeriti da li indeks pripada zemlji, inače provjerite vrijednost u polju Indeks:

- ako je polje Zemlja ima značenje Francuska, Italija ili Španjolska, i na terenu Indeks nije uveden 5 znakova, tada nemojte spremiti unos ako 5 - uštedjeti;

- ako je polje Zemlja ima značenje Australija ili Singapur, i na terenu Indeks nije uveden 4 znak, tada nemojte spremati zapis ako 4 - uštedjeti;

Makro algoritam u obliku blok dijagrama prikazan je na slici 11.6, a implementacija makroa u prozoru Konstruktor makronaredbi, prikazano na slici 11.7.

Ova je makro povezana s svojstvom Prije ažuriranja u kartici Događanja oblik Dobavljači.

Slika 11.6. Algoritam makronaredbe

Slika 11.7. Implementacija makroa s nelinearnom strukturom

3.2. Stvaranje makro grupe

Za automatizaciju aplikacije potreban je značajan broj makronaredbi. Ako kreirate makronaredbe za svaku pojedinačnu operaciju, u ovom slučaju stotine različitih makronaredbi će se akumulirati u bazi podataka.

Da biste smanjili broj makronaredbi kao objekata baze podataka, postoji još jedan način njihova organiziranja - kombiniranjem nekoliko makronaredbi u grupu. Kombiniranje makronaredbi u grupu može se izvršiti na dva načina:

- koji pripadaju objektu automatizacije (za svaki obrazac i izvješće);

- pripadaju vrsti automatiziranih operacija.

Grupa makronaredbi pohranjena je u jednom objektu i stoga ima jedno zajedničko ime - naziv objekta. Da biste pokrenuli makronaredbu uključenu u grupu, upotrijebite puno ime: [Ime_ grupe]. [Ime_makrona_u_skupini].

Da biste stvorili grupu makronaredbi, slijedite ove korake:

1. Otvorite Konstruktor makronaredbi.

2. Prikažite stupac Naziv makronaredbe.

3. U ćeliji stupca Naziv makronaredbe unesite naziv makronaredbe jedinstvene za grupu.

4. U ćelijama kolone Makro počevši od retka koji sadrži naziv makronaredbe, unesite sve makronaredbe koje čine makro i njihove argumente.

5. Preskočite jedan redak.

6. Ponovite korake 3 - 5 za svaki makro.

Primjer stvaranja grupe makronaredbi prikazan je na slici 11.8.

Slika 11.8. Implementacija grupe makronaredbi

4. Pokretanje makronaredbe

Postoji mnogo načina za pokretanje makronaredbi.

Među njima postoje načini na koje korisnik vodi makronaredbu. Ove se metode uglavnom koriste pri testiranju makronaredbi.

Nakon ispravljanja pogrešaka makronaredbe stvara se naredbeni gumb u obrascu za njegovo pokretanje, naredba izbornika ili gumb na alatnoj traci ili je makronaredba povezana s događajem u obrascu ili izvješću. Makro se može pokrenuti iz drugog makroa, kao i programski - iz VBA postupka.

Pokretanje makronaredbi iz programa Macro Designer.

Da biste pokrenuli jednostavnu makronaredbu ili prvu makronaredbu iz grupe, kliknite gumb Pokreni na alatnoj traci Konstruktor makronaredbi.

Da biste pokrenuli bilo koji makro iz grupe, izvedite naredbu Usluga | Makro | Pokreni makro ... i u dijalogu Pokreni macro odaberite naziv makronaredbe.

Pokretanje makronaredbe iz prozora baze podataka.

Da biste pokrenuli jednostavnu makronaredbu ili prvu makronaredbu iz grupe, idite na karticu Makronaredbe, odaberite makro i kliknite gumb Pokreni u prozoru baze podataka.

Za pokretanje bilo koje makronaredbe iz grupe pogledajte gore.

1. Otvorite obrazac ili izvješće u načinu rada Konstruktor.

2. Odaberite objekt automatizacije (kontrola, obrazac ili izvješće, odjeljak obrasca ili izvješća).

3. Otvorite dijaloški okvir Svojstva objekta.

4. Odaberite događaj na kartici Događanja kojoj je dodijeljena makronaredba.

5. Odaberite puni naziv makronaredbe s popisa.

Makronaredba će se izvoditi svaki put kada se dogodi događaj kojem je dodijeljena makronaredba. Primjer dodjeljivanja makronaredbe događaju prikazan je na slici 11.9.

Slika 11.9. Dodjeljivanje makronaredbe događaju

Makronazvan Autoexec pokreće se automatski pri otvaranju baze podataka. Da biste otkazali radnje navedene u ovoj makronaredbi, morate otvoriti bazu podataka pritiskom na tipku > .

Makro odnosi se na skup jedne ili više naredbi koje izvode određene često korištene operacije, poput otvaranja obrazaca ili ispisa izvješća. Makroi mogu biti korisni za automatiziranje često izvedenih radnji. Ako ove radnje snimite kao makro, one će se automatski izvesti kada pokrenete makro. Na primjer, kada korisnik klikne gumb, možete pokrenuti makronaredbu koja ispisuje izvješće ili prikazuje obrazac. Makro- glavna komponenta makronaredbe, instrukcija koja, sama ili u kombinaciji s drugim makronaredbama, određuje radnje izvedene u makronaredbi (ponekad se makronaredbe jednostavno zovu makro naredbe). Niz makronaredbi koje čine makro izvršava se svaki put kada se pokrene.

Za stvaranje makronaredbe u prozoru baze podataka odaberite karticu Makronaredbe i pritisnite tipku Stvoriti... Pojavit će se prozor dizajnera makronaredbi (slika 3.37). Ima dva stupca: Makro i Napomena. U koloni Makro navodi naredbe koje treba izvršiti. Tako da u ćeliji stupca Makro postavite potrebnu makro naredbu, treba je odabrati s popisa. Stupac Bilješka, sadrži komentare za naredbe. Zanemaruje se prilikom izvršavanja makronaredbe, ali ispunjavanjem postaje jasniji tekst makronaredbe.

Riža. 3.37. Pogled makro prozora.

Izvođenje svakog makronaredbe ovisi o njegovu argumenti(neke makronaredbe nemaju argumente). Argumenti se unose u posebno označena polja koja se nalaze pri dnu prozora makronaredbe. Argumenti se mogu unijeti pomoću tipkovnice, međutim, ako je moguće, bolje ih je odabrati s popisa kako biste izbjegli netočne vrijednosti. Upamtite da se radnja makro naredbe koja ne navodi ciljni objekt primjenjuje na aktivni objekt.

Postoji sljedeće tehnika brzog stvaranja makronaredbi koji izvršava radnje na određenom objektu baze podataka. Morate odabrati objekt u prozoru baze podataka i premjestiti ga mišem u makro ćeliju u prozoru makronaredbe.

Da biste to učinili, postavite prozor baze podataka i prozor makronaredbe na zaslon pomoću naredbe Odozgo prema dolje ili S lijeva na desno s izbornika Prozor... Zatim odaberite odgovarajuću karticu u prozoru baze podataka, odaberite objekt i premjestite njegovu ikonu mišem u makro ćeliju. Na primjer, da biste stvorili makronaredbu koja otvara obrazac, pomoću miša povucite ikonu obrasca iz prozora baze podataka u ćeliju makronaredbe. Kada povučete ikonu makronaredbe u ćeliju makronaredbe, unesite naredbu makronaredbe koja pokreće ovu makronaredbu, a kada povučete ikone za druge objekte (tablice, upite, obrasce, izvješća ili module), makronaredba se dodaje makronaredbi koja otvara ovaj objekt.

Izvođenje makronaredbi može započeti korisničkom naredbom, kada se pozove iz drugog postupka makronaredbe ili događaja, ili kao odgovor na događaj na obrascu, izvješću ili kontroli. Na primjer, možete dodijeliti pokretanje makronaredbe gumbu na obrascu, zbog čega će se makronaredba izvršiti kada se pritisne ovaj gumb. Također je dopušteno stvoriti posebnu naredbu izbornika ili gumb na alatnoj traci koji pokreće makronaredbu; definiranje tipkovnog prečaca za pokretanje makronaredbe i automatsko pokretanje makronaredbe pri otvaranju baze podataka.

Za pokretanje makronaredbe iz prozora Konstruktor makronaredbi, morate pritisnuti gumb. Za pokretanje makronaredbe iz prozora baze podataka odaberite karticu Makronaredbe, aktivirajte naziv makronaredbe i pritisnite gumb Pokreni u prozoru baze podataka (također možete dvaput kliknuti na naziv makronaredbe za pokretanje).