Makro salvestamine Excelis - TechTV artiklid

Need on minu saatemärkused alates ilmumisest TechTV Kanada abikõne 33. osas.

VBA makrosalvesti

Iga Exceli eksemplar, mida on müüdud alates 1995. aastast, sisaldab rakkude taga peituvat uskumatult võimsat Visual Basic for Applications (VBA). Kui teil on Excel, on teil VBA.

VBA võimaldab teil automatiseerida kõike, mida saate Excelis teha, pluss teha rohkem asju, mis pole Excelis üldiselt võimalikud.

Meie õnneks lisas Microsoft Exceli juurde makrosalvesti. See võimaldab teil kirjutada VBA-koodi programmeerijata olemata. Kahjuks on makrotallikas vigane. See ei tooda koodi, mis töötab iga kord. Makrosalvesti viib teid lähedale, kuid paljudel juhtudel peate koodi usaldusväärselt töötamiseks natuke parandama. Muudel juhtudel peate teadma, millal suhtelist salvestust kasutada, et makro toimiks.

Tracy Syrstad ja mina kirjutasime VBA ja makrosid Microsoft Excel 2016, et aidata teil mõista salvestatud koodi piiranguid ja õpetada, kuidas salvestatud koodi parandada millekski, mis töötab alati.

Saates demonstreerisin makro salvestamise protsessi, mis töötab suurepäraselt, kui teate, kuidas kasutada nuppu Suhteline viide. Keegi oli andnud mulle Exceli töölehe sadade nimede ja aadressidega. Nad tahtsid postitussilte. Kui olete kunagi kasutanud Microsoft Wordi postiühendamise funktsiooni, teate, et vajate iga välja töölehel uues veerus. Selle konkreetse töölehe andmed olid hoopis A-veerus.

Ühe sildi parandamise protsess on üsna tüütu.

  • Alustage veerus A oleva nime lahtrikursoriga.
  • Aadressile liikumiseks vajutage allanoolt
  • Ctrl + x lõikamiseks
  • Üles nool, parem nool, et liikuda nime kõrval olevasse veergu B
  • Ctrl + v kleepimiseks
  • Linna liikumiseks allanool kaks korda, vasaknool üks kord
  • Ctrl + x lõikamiseks
  • Nool üles kaks korda, parem nool kolm korda
  • Ctrl + v kleepimiseks
  • Vasak nool kaks korda, allanool üks kord, et nüüd tühjale reale liikuda.
  • Hoidke all klahvi Shift, kui vajutate kaks korda allanoolt
  • Alt + edr tühjade ridade kustutamiseks
  • Nool üles ja alla, et valida uuesti nimi.

Siin on animatsioon, mis näitab neid samme:

Exceli seadistamine makrode lubamiseks

Ehkki iga Exceli eksemplar sisaldab VBA-d, lülitab Microsoft vaikimisi makrode käitamise võimaluse välja. Makrode töötamiseks peate tegema ühekordse korrigeerimise. Avage Excel. Valige menüüst Tööriistad> Makro> Turvalisus. Kui teie makro turvalisuse tase on praegu kõrge, muutke see keskmiseks.

Ettevalmistus makro salvestamiseks

Mõelge ülesande saavutamiseks vajalikele sammudele. Soovite olla kindel, et alustate lahtrikursorit nimega ja lõpetate selle järgmise nimega. See võimaldab makrot mitu korda korduvalt käivitada. Kui teil on toimingud valmis, lülitage makrofailisalvesti sisse. Valige menüüst Tööriistad> Makro> Salvesta uus makro.

Kui kasutate seda makrot mitu päeva, peaksite andma makrole kasuliku nime. Kui ühekordse ülesande automatiseerimine on ühekordne makro, siis on makro nime jätmine Macro1 arvatavasti korras. Oluline väli on siin kiirklahv. Kui loote makrot ühekordseks kasutamiseks, määrake makro otseteeklahvile nagu Ctrl + a - Ctrl + a on üsna lihtne vajutada, kuna klahvid on üksteise lähedal. Kui kavatsete luua makro, mida kasutate iga päev, siis soovite makro määrata võtmele, mis pole veel oluline kiirklahvide kombinatsioon. Ctrl + j või Ctrl + k on head valikud.

Ühekordsed makrod tuleks sellesse tööraamatusse salvestada. Kui peate makrot korduvalt kasutama paljudel erinevatel töövihikutel, saate makro salvestada isikliku makro töövihikusse.

Nüüd kuvatakse teile kogu Exceli väikseim tööriistariba; lõpetage salvestamise tööriistariba. Sellel on ainult kaks ikooni ja see näeb välja selline:

Kui see tööriistariba satub teie teele, ärge vajutage selle sulgemiseks X-i. Selle asemel haarake sinine riba ja lohistage tööriistariba uude asukohta. Tööriistariba teisaldamise toimingut makros ei registreerita. Kui sulgete tööriistariba kogemata, hankige see uuesti, kasutades valikuid Vaade> Tööriistaribad> Lõpeta salvestamine. See toiming aga salvestatakse.

Tööriistariba esimene nupp on nupp "Salvestamise peatamine". See on iseenesestmõistetav. Kui olete makro salvestamise lõpetanud, vajutage salvestamise peatamise tööriistariba.

Tähtsam (ja harva mõistetav) nupp on nupp "Suhteline viide".

Meie praeguses näites peate enne alustamist vajutama suhtelise viite nuppu. Kui salvestate makro, mille suhtelised viited on sisse lülitatud, salvestab Excel järgmised toimingud:

  • Liigutage üks lahter allapoole
  • Lõika praegune lahter
  • Liigutage üks lahter üles
  • Liigutage üks lahter paremale
  • Kleepige
  • jne.

Kui te selle asemel salvestaksite makro ilma suhteliste viideteta, salvestaks makro järgmised toimingud:

  • Liikuge lahtrisse A4
  • Lõika lahter A4
  • Liikuge lahtrisse A3
  • Liikuge lahtrisse B3
  • Kleebi lahtrisse B3
  • jne.

See oleks kohutavalt vale - vajame, et makro töötaks lahtritega, mis on makro alguspunktist 1 ja 2 lahtrit. Makro korduvalt käivitamisel on lähtepunktiks rida 4, rida 5, rida 6 jne. Makro salvestamisel ilma sisse lülitatud suhteliste viideteta oleks makro alati lähtepunktiks 3. real.

Järgige neid samme:

  • Valige tööriistaribal Salvestamise peatamine suhteline viitenupp
  • Lahtrikursor peaks juba olema veerus A oleval nimel.
  • Aadressile liikumiseks vajutage allanoolt
  • Ctrl + x lõikamiseks
  • Üles nool, parem nool, et liikuda nime kõrval olevasse veergu B
  • Ctrl + v kleepimiseks
  • Linna liikumiseks allanool kaks korda, vasaknool üks kord
  • Ctrl + x lõikamiseks
  • Nool üles kaks korda, parem nool kolm korda
  • Ctrl + v kleepimiseks
  • Vasak nool kaks korda, allanool üks kord, et nüüd tühjale reale liikuda.
  • Hoidke all klahvi Shift, kui vajutate kaks korda allanoolt
  • Alt + edr tühjade ridade kustutamiseks
  • Loendis järgmise nime valimiseks üles- ja allanool.
  • Vajutage tööriistariba Salvestamise peatamine
  • Salvestage töövihik
  • Testige makrot, vajutades ülal määratud kiirklahvi. See peaks loendis järgmise nime ideaalselt fikseerima

Kui näete, et makro töötab soovitud viisil, võite klahvikombinatsiooni Ctrl + a all hoida, et paar sekundit kiiresti parandada. Kogu 500-nimelise loendi saab fikseerida ühe või kahe minuti jooksul.

Boonusenõu - pole saates

Makro saab hõlpsasti keerata lihtsasse silmusse, et see parandaks kõik 500 nime, ilma et peaksite mitusada korda klahvi Ctrl + vajutama.

Makroredaktori avamiseks vajutage klahvi Alt + F11.

Kui te ei näe paani Projekt - VBAProject, vajutage klahvikombinatsiooni Ctrl + r.

Paremklõpsake moodul1 ja valige Kuva kood. Näete koodi, mis näeb välja selline:

Nüüd ei pea te aru saama, mida see kood teeb, kuid teate küll, et me tahame selles makros kõike käitada üks kord iga meil oleva nime jaoks. Kui teate, et seal on 462 nime, saate koodi 2 462 korra käivitamiseks lisada 2 rida. Lisage makro ülaossa uus rida sõnadega " For i = 1 to 462". Lisage makro alaossa rida, mis ütleb " Next i". See käsib VBA-l käivitada kood 462 korda.

Järeldus

Pärast seda lihtsat makrot näitasin saates väga keerulise makro näidet. Selle makro abil loodi ettevõtte 46 osakonna jaoks pöördtabelid ja -diagrammid. Varem võttis see aruanne iga kuu 40 tundi. VBA makro töötab ja loob kõik 46 aruannet vähem kui 2 minutiga.

Raamat VBA ja makrod Microsoft Excel 2016 juhatab teid õppimiskõveral ülespoole, nii et saate lihtsate makrode salvestamisest kuni väga keeruliste aruannete koostamiseni, mis võib säästa sadu tunde aastas. Muidugi, kui te ei soovi õppida VBA-d, palgake Exceli konsultant, kes koostab teile aruande.

Huvitavad Artiklid...