Kuidas Excelis makro käivitada

Kuigi makro käivitamine Excelis pole keeruline, on nende käivitamiseks palju võimalusi. Mõned viisid on mõeldud makrode kasutamise hõlbustamiseks, teised aga võivad muuta seda, kuidas kasutaja teie töövihikuga suhtleb. Selles artiklis käsitleme mõningaid ilmselgeid viise, kuidas makrosid käitada, nagu makroste loend ja nuppude juhtelemendid, ning mõningaid varjatumaid viise, nagu VB redaktor ja sündmused.

Esiteks: veenduge, et makrod on lubatud

Exceli turvafunktsioonid keelavad makrod vaikimisi. Makrotoega töövihiku avamisel küsitakse kasutajatelt tavaliselt, kas nad soovivad makrosid lubada.

Kui te ei saa makrosid käitada, proovige järgida neid juhiseid.

  • Salvestage töövihik
  • Sulgege töövihik ja avage see uuesti
  • Töövihiku laadimisel näete a Turvahoiatus kiire (pildil allpool). Klõpsake nuppu Sisu lubamine.

Käivitage makro loendist Makro

Makrode loendile pääseb juurde vahekaardilt Vaade. Selle loendi vaatamiseks tehke järgmist.

  • Valige Vaade vahekaart
  • Klõpsake nuppu sildiga Makrod Makroloendi avamiseks

  • Valige loendist makro, mida soovite käivitada, seejärel klõpsake nuppu Jookse nuppu

Makroloendit saate igal ajal kuvada ka vajutades ALT+F8.

Käivitage makro, kasutades kiirklahvi

Sageli kasutatavale makrole saate määrata kiirklahvi CTRL+või CTRL+SHIFT+kujul. Selleks tehke järgmist.

  • Avage makroloend (Vaade > Makrodvõi ALT+F8)
  • Valige makro, millele soovite otsetee rakendada
  • Klõpsake nuppu Valikud… näitama Makro valikud alamdialoog

  • Allolevas tekstikastis Kiirklahv, tippige üks täht ja seejärel klõpsake Okei. Kui hoiate tähe sisestamise ajal all klahvi SHIFT, kuvatakse kasti kõrval oleval sildil otsetee osana SHIFT

MÄRGE: on väga soovitatav kasutada kiirklahvi loomisel SHIFT! Excel kasutab enda jaoks CTRL+ otseteid, nt. CTRL+C kopeerimiseks või CTRL+V salvestamiseks. Kui loote makro otsetee nende või muude Exceli otseteede abil, kirjutate Exceli otsetee üle, kuni määrate makro otsetee uuesti.

Käivitage VB redaktorist makro

Makroid saab käivitada ka VB redaktorist. VB redaktor võimaldab teil enne makro käivitamist makro koodi üle vaadata ja teha soovitud muudatusi.

Makro käitamiseks VB redaktoris toimige järgmiselt.

  • Avage VB redaktor (vahekaart Arendaja> Visual Basic või ALT+F11)

  • Aastal Projekt topeltklõpsake testitavat makro sisaldavat moodulit
  • Mooduli koodi aknas asetage kursor kõikjal makro koodis „Sub” ja „End Sub” vahel
  • Klõpsake Jookse nuppu tööriistaribal või vajutage kiirklahvi F5

Käivitage makro nupu või kuju abil

Sageli on kasulik töölehel juhtnupp, millel kasutaja saab makro käivitamiseks klõpsata, näiteks nupu juhtelement või kuju. Lõppkasutajate jaoks on see palju kiirem kui makroloendite avamine või VB-redaktoris makrikoodi otsimine.

Teavet klõpsatava nupu või kuju loomise kohta leiate siit: nupu lisamine ja makro määramine Excelis.

Käivitage makro automaatselt VBA sündmuste abil

Makro saab käivitada, kui Excelis midagi juhtub - näiteks kui töövihik avatakse või kui lahtri väärtust muudetakse. Neid nimetatakse Sündmusedja saate neile kirjutada VBA -koodi, et helistada makrodele või teha muid toiminguid.

Sündmuse koodi kirjutamiseks peate kasutama VB redaktorit. Näiteks töövihiku sündmuste vaatamiseks tehke järgmist.

  • Avage VB redaktor (ALT+F11)
  • Topeltklõpsake ikooni See tööraamat objekt VB redaktoris Projekti aken
  • Valige koodiakna vasakus ülanurgas olevast rippmenüüst „Töövihik”
  • Sündmuste loendi vaatamiseks klõpsake paremal olevat rippmenüüd

Järgnevalt on toodud väike, kuid kasulik näide Exceli sündmustest, millest saate makrosid käivitada.

Töövihik_Avatud ()

Sündmus Workbook_Open () käivitub töövihiku avamisel. Kui pärast töövihiku avamist kuvatakse turvahoiatus, käivitatakse see sündmus pärast nuppu „Luba sisu”.

12345 Privaatne alamtöövihik_Avatud ()MsgBox "Töövihik on avatud!"End Sub

Workbook_BeforeClose (Tühista kui Boolean)

Workbook_BeforeClose () käivitub, kui kasutaja proovib töövihiku sulgeda. See juhtub enne kontrollide tegemist, et näha, kas töövihik tuleb salvestada.

The Tühista parameetri saab seada väärtusele Tõene, et peatada töövihiku sulgemine.

123456789 Privaatne alamtöövihik_BeforeClose (Tühista kui Boolean)Kui MsgBox ("Kas olete kindel?", VbYesNo + vbQuestion, "Close") = vbNo SiisTühista = TõsiLõpp KuiEnd Sub

Worksheet_Change (ByVal Target kui vahemik)

Tööleht_muutus () käivitub, kui lahtri väärtust muudetakse - olenemata sellest, kas seda muudab makro, kopeerimise/kleepimise toiming või väline link. Siiski ei käivitu see, kui väärtus valemi abil ümber arvutatakse.

The Sihtmärk parameeter tähistab lahtreid, mille väärtus on muutunud.

Kui muudate selle sündmuse teiste lahtrite väärtust, käivitatakse sündmus uuesti. See võib põhjustada lõpmatu tsükli. Kui peate muutma lahtrite väärtusi ilma seda sündmust käivitamata, kaaluge seadistamist Application.EnableEvents et Vale esmalt ja seejärel seadke see tagasi Tõsi üritusprotseduuri lõpus.

123456789 Privaatne alamlehe muutmine (ByVal Target kui vahemik)MsgBox "Lahtrid on muudetud:" & Target.AddressApplication.EnableEvents = ValeVahemik ("A2"). Väärtus = vahemik ("A2"). Väärtus + sihtmärk.rakud.arvApplication.EnableEvents = TõsiEnd Sub

Worksheet_SelectionChange (ByVal Target as Range)

See sündmus käivitub alati, kui sihtimisvõrguga on valitud erinevad lahtrid. Parameeter Sihtmärk tähistab valitud uusi lahtreid.

Selle sündmuse saate käivitada ka koodiga, st „Vahemik („ A1 ”). Valige”. Nagu Worksheet_Change () puhul, peaksite ka selle sündmuse teiste lahtrite valimisel olema ettevaatlik, kuna võite põhjustada lõpmatu tsükli. Kasutage Application.EnableEvents.

123456789 Privaatne alamlehe_valikKui Target.Address = "$ A $ 1" SiisMsgBox "Kursor koduasendis."Lõpp KuiEnd Sub

Peatage jooksev makro

Jooksvat makro saab katkestada, vajutades ESC või CTRL+BREAK. Vaikimisi kuvatakse katkestatud makro järgmine dialoog:

Klõpsates Lõpp peatab makro Jätka jätkab seda. Klõpsates Silumine avab makro VB redaktoris ja keskendub koodireale, mille täitmine peatati. (VB redaktoris saate makro peatada või jätkata tööriistariba nuppude Käivita või Lõpeta abil.)

Application.EnableCancelKey

Makro peatamise funktsiooni ESC või CTRL+BREAK abil saate keelata, määrates Application.EnableCancelKey vara. Sellel atribuudil on kolm võimalikku väärtust:

  • xlKatkestus - see on vaikeväärtus, mis paneb Excel näitama ülaltoodud dialoogi
  • xlPuuetega - eemaldab jooksva makro peatamise võimaluse
  • xlErrorHandler - katkestamiskatse korral visatakse viga, mida saab koodis käsitleda

Kui koodi täitmine peatub, lähtestab Excel alati rakenduse väärtuse. EnableCancelKey tagasi xlKatkestus.

Hea põhjus selle vara kasutamiseks on turvalisus. Näiteks kui teil oli makro, mis ajutiselt kaitses teie töövihiku osi, võis kasutaja makro kohe pärast kaitset eemaldada ja pääseda juurde sisule, mida te ei kavatsenud omada. Seadistades Application.EnableCancelKey, saate täielikult keelata nende võime seda teha või käsitleda nende katkestust graatsiliselt veakäitlejaga, mis kaitseb töövihikut uuesti.

1234567891011 Alam UpdateBaseData (ByVal NewData As Range, ByVal Target As Range)Application.EnableCancelKey = xlDisabledTarget.Worksheet.Tühista "MyPassword" kaitseNewData.Copy TargetTarget.Worksheet.Protect "MyPassword"Application.EnableCancelKey = xlInterruptEnd Sub

Sulgege Excel jõuga Windowsi tegumihalduri abil

Kui makro on „rippunud” või Excel on katkestuskatse tunnistamiseks liiga hõivatud, peate võib-olla Exceli ise sundlülitama Windowsi tegumihaldur. (MÄRKUS. Kui te seda teete, võite salvestamata töö kaotada ja peate lootma oma töövihiku automaatse taastamise versioonile.)

  • Avage Task Manager otse, kasutades CTRL+SHIFT+ESC
  • Valige "Protsessid”Vahekaart
  • Laiendage üksust „Microsoft Excel”, et kuvada kõik töövihikud
  • Valige töövihik, mille soovite sulgeda, ja seejärel klõpsake Lõpeta ülesanne paremas alanurgas

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave