Kuidas

Täpsemad makrod Wordis

Mõned Wordi kasutajad võivad teada, kuidas salvestada ja automaatselt korrata rea ​​toiminguid, teksti ja manipulatsioone, mida saab korrata ühe klahvikombinatsiooniga: Wordi makro. Mõistmata asusid nad tööle väga võimsa funktsionaalsusega, mis on Microsoft Office'i iga mooduli taga: Visual Basic for Applications või lühidalt VBA. Nii avaneb uks vidinate, trikkide ja muu leidlikkuse maailma, mida saate ise arendada.

Menüü või klaviatuuri kaudu

Wordis 2003/2007 vajutage Alt + F11 ja me siseneme VBA redaktorisse. Seda tehakse ka lindi Word 2007 (vahekaart Arendaja / nupp Visual Basic) või Word 2003 ja varasemate versioonide menüü kaudu (valige Tööriistad / Makro / Visual Basic Editor). Sama Alt + F11 abil vahetame edasi Wordi ja VBA redaktori vahel. Varem salvestatud makro või enda loodud VBA programmi käivitamiseks vajutage klahvikombinatsiooni Alt + F8 või klõpsake programmis Word 2007 lindil vahekaardil Arendaja nuppu Makrod (või rakenduses Word 2003: Tööriistad / Makrod / makrod). Makrosalvestuse alustamine saab seejärel uuesti nupu Salvesta makro kaudu (Word 2003-s ja varasemates versioonides: Tööriistad / Makro / Salvesta uus makro), kuid see on palju kiirem, kui topeltklõpsame aknaikoonil (Word 2003-s ja varasemates versioonides: OPN kast).

Operatsiooni salvestamine makrona on lihtsaim viis VBA-koodi loomiseks.

Mitte ainult Wordis

Peaaegu kõik selles ekspertkursuses kirjeldatud põhioskused kehtivad ka mis tahes muus Microsoft Office'i moodulis: proovige asju Excelis, PowerPointis, Outlookis, Accessis, Projectis või Visios. Tegelikult on palju teiste osapoolte tarkvara, kes on otsustanud pakkuda VBA makrokeelena koos VBA redaktori ja kõigi mainitud otseteedega, sealhulgas AutoCAD, iGrafx FlowCharter, CorelDRAW, WordPerfect Office, BusinessObjects jne .

Esimesed sammud

Lihtsaim viis VBA maailma juurde pääsemiseks on makrosse salvestada muudatus, mida seejärel laiendate ja täpsustate täiendavate funktsioonide kodeerimisega. Oletame näiteks, et otsustate olemasolevas dokumendis, et iga lause jääb tekstiplokki, millele järgneb ühe asemel kaks tühikut. Esimene lähenemisviis on funktsiooni otsing / asendamine korduv kutsumine (vt ka eelmises arvuti! Totaali väljaandes asjatundjate kursust „Otsi ja asenda”): otsige perioodi, millele järgneb tühik, ja asendage see punktiga kahe tühikuga. Seejärel alustage küsimärgi, hüüumärgi jne otsast. See peaks olema kiirem ja elegantsem, eks? Edasi VBA-le!

VBA toimetaja

Lisame selle esimese asendustõmbe makrosse, mille puhul aktsepteerime vaikimisi soovitatud tähist Macro1 ja märkime, et soovime selle praegusesse dokumenti1 salvestada. Seejärel vajutame Alt + F11 ja jõuame VBA redaktorisse. Siit tuleb leppida kakskeelse maailmaga: kasutajaliides jääb hollandi keelde (või mis iganes keeles Wordi kasutatakse), kuid kood on alati inglise keeles, isegi kui see on mõeldud hollandikeelse sõna automatiseerimiseks. Peamised VBA-redaktori tööruumid on aken Kood ja Project Explorer. Viimane näitab puustruktuuris kõiki aktiivseid dokumente ja malle. Laiendame projekti (Document1) ja näeme kolme haru: Microsoft Wordi objektid, moodulid ja viited, millel mõlemal on üks aluseks olev tase. Moodulite all on see NewMacros. Lõpuks, kui me topeltklõpsame NewMacros, ilmub meie (teadmatult) loodud kood koodiaknasse

Alt + F11 viib meid igast Microsoft Office'i moodulist VBA-redaktorisse.

Struktuur

Iseseisvat tarkvara nimetatakse VBA-s alamprogrammiks. Seega jääb kogu selles sisalduv kood juhiste vahele Alam ja Lõpeta alam riik. Algaja Alam järgneb rutiiniks teie valitud nimi. Kui see on salvestatud makro, on see nimi valitud Wordi dialoogis enne salvestamise algust. Kuid seda saab redaktoris siiski muuta. Kasutatav nimi kuvatakse olemasolevate makrode loendis, mille avate klahvidega Alt + F8.

Juhised ja deklaratsioonid võivad olla nende kahe rea vahel, põhimõtteliselt üks rea kohta, välja arvatud juhul, kui need on eraldatud koolonitega. Apostroofiga (') algav rida tähistab kommentaaririda. Sellistel tekstilõikudel pole programmi kulgu mõjutada: need jäetakse vahele ja on seetõttu ainult dokumentidena. VBA-redaktor paneb need automaatselt roheliseks. Reserveeritud märksõnad kuvatakse sinisega, ülejäänud tekst mustaga, veadega read punase värviga. Lähtekoodi rida suletakse vajutades Enter: ärge kasutage punkte ega muid kirjavahemärke, välja arvatud juhul, kui kood jätkub (näiteks loetavuse huvides) järgmisel real: siis lõpetame rea tühiku ja alljooniga "(lame kriips: _).

Deklaratsioonid on esialgsed teadaanded muutujatest, mida kavatseme kasutada, koos nende tüübiga. Sellised teated algavad märksõnast Dim, millele järgneb teie valitud nimi muutuja jaoks Ash ja tüüp (vt kasti). Need on valikulised, välja arvatud juhul, kui vahekaardil Redaktor Tööriistad / suvandid on märgitud Deklareerige muutujad kohustuslikuks või kui teeme seda koodi alguses (st enne esimest Alamrida) juhis Koha valik selge.

Redaktori VBA suvandites näitame, kas soovime, et muutujad oleksid selgesõnaliselt deklareeritud.