Kako pokrenuti makro u Excelu

Iako pokretanje makronaredbi u Excelu nije teško, postoji mnogo načina za njihovo pokretanje. Neki su načini namijenjeni olakšavanju korištenja makronaredbi, dok drugi načini mogu u potpunosti promijeniti način na koji korisnik komunicira s vašom radnom knjigom. U ovom ćemo članku obraditi neke očite načine izvođenja makronaredbi poput kontrola popisa makronaredbi i gumba, te neke opskurnije načine poput VB uređivača i događaja.

Prvo: Provjerite jesu li makronaredbe omogućene

Excelove sigurnosne značajke prema zadanim će postavkama onemogućiti makronaredbe. Prilikom otvaranja radne knjige s omogućenim makroima korisnici se obično pitaju žele li omogućiti makronaredbe.

Ako ne možete pokrenuti makronaredbe, pokušajte slijediti ove upute:

  • Spremite radnu knjigu
  • Zatvorite radnu knjigu, a zatim je ponovo otvorite
  • Kad se radna knjiga učita, vidjet ćete a Sigurnosno upozorenje prompta (na slici ispod). Klik Omogući sadržaj.

Pokrenite makro s popisa makronaredbi

Popisu makronaredbi možete pristupiti s kartice Pogled. Za pregled ovog popisa:

  • Odaberite Pogled tab
  • Pritisnite gumb s oznakom Makronaredbe za prikaz makro popisa

  • Odaberite makro koji želite pokrenuti s popisa, a zatim kliknite Trčanje dugme

Također možete u bilo kojem trenutku prikazati popis makronaredbi pritiskom na ALT+F8.

Pokrenite makro pomoću tipkovnog prečaca

Makronaredbi koju često koristite možete dodijeliti tipkovnički prečac u obliku CTRL+ili CTRL+SHIFT+. Uraditi ovo:

  • Otvorite popis makronaredbi (Pogled > Makronaredbeili ALT+F8)
  • Odaberite makronaredbu na koju želite primijeniti prečac
  • Klik Opcije… pokazati Opcije makronaredbi pod-dijalog

  • U okviru za tekst ispod Prečac, upišite jedno slovo, a zatim kliknite u redu. Ako držite tipku SHIFT tijekom upisivanja slova, oznaka pored okvira prikazat će SHIFT kao dio prečaca

BILJEŠKA: Preporučuje se korištenje SHIFT pri stvaranju tipke prečaca! Excel za sebe koristi prečace CTRL+, npr. CTRL+C za kopiranje ili CTRL+V za spremanje. Ako stvorite prečac makronaredbe pomoću ovih ili drugih prečaca u Excelu, prebrisat ćete prečac u Excelu dok ponovno ne dodijelite prečac makronaredbe.

Pokrenite makro iz VB uređivača

Makroe možete pokrenuti i iz VB Editor -a. VB Editor omogućuje vam pregled koda makronaredbe i unošenje bilo kakvih promjena prije nego što ga pokrenete.

Da biste pokrenuli makro u VB Editoru:

  • Otvorite VB Editor (kartica Developer> Visual Basic ili ALT+F11)

  • U Projekt dvaput kliknite na modul koji sadrži makronaredbu koju želite testirati
  • U prozoru koda modula, postavite kursor bilo gdje na kodu makronaredbe između "Sub" i "End Sub"
  • Kliknite na Trčanje gumb na alatnoj traci ili pritisnite tipkovni prečac F5

Pokrenite makro pomoću gumba ili oblika

Često je korisno imati kontrolu na radnom listu koju korisnik može kliknuti za pokretanje makronaredbe, poput kontrole gumba ili oblika. To je krajnjim korisnicima mnogo brže od otvaranja popisa makronaredbi ili kopanju koda makroa u VB Editoru.

Informacije o tome kako stvoriti gumb ili oblik koji se može kliknuti mogu se pronaći ovdje: Dodajte gumb i dodijelite makronaredbu u Excelu.

Automatski pokrenite makro pomoću Events u VBA

Moguće je pokrenuti makronaredbu kada se nešto dogodi u Excelu - na primjer, kada se otvori radna knjiga ili kada se promijeni vrijednost ćelije. Ovi se zovu Događaji, i možete im napisati VBA kôd za pozivanje makronaredbi ili izvođenje drugih operacija.

Da biste napisali kôd za događaj, morat ćete koristiti VB Editor. Na primjer, za pregled događaja za radnu knjigu:

  • Otvorite VB Editor (ALT+F11)
  • Dvaput kliknite na Ova radna knjiga objekt u VB Editor -u Prozor projekta
  • Odaberite "Radna knjiga" s padajućeg izbornika u gornjem lijevom kutu prozora koda
  • Kliknite padajući izbornik s desne strane da biste vidjeli popis događaja

Slijedi mali, ali koristan uzorak Excel događaja iz kojih možete pokrenuti makronaredbe.

Radna knjiga_Otvoreno ()

Događaj Workbook_Open () aktivira se kada se radna knjiga otvori. Ako dobijete sigurnosno upozorenje nakon otvaranja radne knjige, ovaj se događaj aktivira nakon klika na "Omogući sadržaj".

12345 Privatna pomoćna radna knjiga_Open ()MsgBox "Radna sveska je otvorena!"Kraj podm

Workbook_BeforeClose (Odustani kao logičko)

Workbook_BeforeClose () se aktivira kada korisnik pokuša zatvoriti radnu knjigu. To se događa prije nego što se provere provjere treba li spremiti radnu knjigu.

The Otkazati parametar se može postaviti na True kako bi se spriječilo zatvaranje radne knjige.

123456789 Private Sub Workbook_BeforeClose (Otkaži kao logičko)Ako je MsgBox ("Jeste li sigurni?", VbYesNo + vbQuestion, "Close") = vbNo TadaOdustani = IstinaZavrši akoKraj podm

Radni list_ Promjena (ByVal cilj kao raspon)

Radni list_Change () aktivira se kada se promijeni vrijednost ćelije - bilo da je promijenjena makronaredbom, operacijom kopiranja/lijepljenja ili vanjskom vezom. Međutim, ne aktivira se kada se vrijednost ponovno izračuna po formuli.

The Cilj parametar predstavlja ćelije čija se vrijednost promijenila.

Ako promijenite vrijednost drugih ćelija unutar ovog događaja, događaj će se ponovno aktivirati. To može uzrokovati beskonačnu petlju. Ako trebate promijeniti vrijednosti ćelija bez pokretanja ovog događaja, razmislite o postavljanju Application.EnableEvents do Netočno prvo, a zatim ga vratite na Pravi na kraju postupka događaja.

123456789 Privatni podradni list_Promjena (ByVal cilj kao raspon)MsgBox "Stanice su promijenjene:" & Target.AddressApplication.EnableEvents = NetačnoRaspon ("A2"). Vrijednost = Raspon ("A2"). Vrijednost + ciljna stanica. BrojApplication.EnableEvents = IstinaKraj podm

Radni list_SelectionChange (ByVal cilj kao raspon)

Ovaj se događaj aktivira kad god se odaberu različite ćelije s končanicom za ciljanje. Parametar Target predstavlja nove ćelije koje su odabrane.

Ovaj događaj možete pokrenuti i kodom, npr. "Raspon (" A1 "). Odaberite". Kao i kod Worksheet_Change (), trebali biste biti oprezni pri odabiru drugih ćelija unutar ovog događaja jer možete uzrokovati beskonačnu petlju. Upotrijebite Application.EnableEvents.

123456789 Privatni podradni list_SelectionChange (ByVal cilj kao raspon)Ako je Target.Address = "$ A $ 1" ZatimMsgBox "Kursor u početnom položaju."Završi akoKraj podm

Zaustavite pokrenutu makro

Pokrenuta makronaredba može se prekinuti pritiskom na ESC ili CTRL+BREAK. Prema zadanim postavkama, prekinuta makronaredba prikazat će sljedeći dijalog:

Klikom Kraj će zaustaviti makro, dok Nastaviti nastavit će ga. Klikom Otklanjanje pogrešaka otvorit će makronaredbu u VB Editoru i usredotočiti redak koda na koji je pauzirana izvedba. (Unutar VB uređivača možete zaustaviti ili nastaviti makronaredbu pomoću gumba Pokreni ili Završi na alatnoj traci.)

Application.EnableCancelKey

Možete onemogućiti mogućnost zaustavljanja makronaredbi pomoću tipki ESC ili CTRL+BREAK postavljanjem Application.EnableCancelKey imovine. Ovo svojstvo ima tri moguće vrijednosti:

  • xlPrekinite - ovo je zadana vrijednost zbog koje Excel prikazuje gornji dijalog
  • xlOnesposobljeno - uklanja mogućnost zaustavljanja pokrenute makronaredbe
  • xlErrorHandler - prilikom pokušaja prekida dolazi do greške koja se može riješiti u kodu

Kad god se izvršavanje koda zaustavi, Excel uvijek vraća vrijednost Application.EnableCancelKey natrag na xlPrekinite.

Dobar razlog za korištenje ove nekretnine je sigurnost. Na primjer, ako ste imali makronaredbu koja je privremeno nezaštićene dijelove vaše radne knjige, korisnik bi potencijalno mogao zaustaviti makronaredbu odmah nakon uklanjanja zaštite i dobiti pristup sadržaju koji niste namjeravali imati. Postavljanjem Application.EnableCancelKey možete u potpunosti onemogućiti njihovu sposobnost da to učine ili ljubazno obraditi njihov prekid pomoću Rukovatelja pogreškama koji ponovno štiti radnu knjigu.

1234567891011 Sub UpdateBaseData (ByVal NewData As Range, ByVal Target As Range)Application.EnableCancelKey = xlDisabledTarget.Worksheet.Unprotect "MyPassword"NewData.Copy TargetTarget.Worksheet.Protect "MyPassword"Application.EnableCancelKey = xlInterruptKraj podm

Prisilno zatvorite Excel pomoću upravitelja zadataka sustava Windows

Ako je makronaredba 'obješena' ili je Excel postao previše zauzet da bi potvrdio pokušaj prekida, možda ćete morati prisilno zatvoriti sam Excel pomoću Windows upravitelj zadataka. (NAPOMENA: ako to učinite, možete izgubiti bilo koji nespremljeni rad i morat ćete se osloniti na verziju radne knjige koja se automatski oporavlja.)

  • Otvorite Upravitelj zadataka izravno pomoću CTRL+SHIFT+ESC
  • Odaberite “Procesi”Kartica
  • Proširite stavku "Microsoft Excel" da biste prikazali sve radne knjige
  • Odaberite radnu knjigu koju želite zatvoriti, a zatim kliknite Završi zadatak u donjem desnom kutu

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave