Sužinokite apie „VBA Macro Coding Word 2007“

Šio kurso tikslas yra padėti žmonėms, kurie niekada anksčiau neparašė programos, išmokti ją parašyti. Nėra jokios priežasties, kodėl biurų darbuotojai, namų gamintojai, profesionalūs inžinieriai ir picos tiekėjai neturėtų turėti galimybės naudotis savo rankomis sukurtomis pasirinktinėmis kompiuterių programomis, kad galėtų veikti greičiau ir protingesni. „Profesionaliam programuotojui“ (kad ir kas tai būtų) nereikia atlikti darbo. Jūs žinote, ką reikia padaryti geriau nei kas nors kitas. Tai galite padaryti patys!

(Aš tai sakau kaip tas, kuris daugelį metų praleido rašydamas programas kitiems žmonėms... „profesionaliai“.)

Turint tai mintyje, tai nėra kompiuterio naudojimo kursas.

Šis kursas daro prielaidą, kad jūs žinote, kaip naudoti populiarią programinę įrangą, ir visų pirma, kad savo kompiuteryje turite įdiegtą „Microsoft Word 2007“. Turėtumėte žinoti pagrindinius kompiuterio įgūdžius, tokius kaip failų aplankų (ty katalogų) kūrimas ir failų perkėlimas bei kopijavimas. Bet jei jūs visada domėjotės, kokia iš tikrųjų buvo kompiuterio programa, tai gerai. Mes jums parodysime.

instagram viewer

„Microsoft Office“ nėra pigi. Bet jūs galite gauti daugiau naudos iš tos brangios programinės įrangos, kurią jau esate įdiegę. Tai yra didelė priežastis, kurią naudojame Visual Basic programoms arba VBA kartu su „Microsoft Office“. Yra milijonai, kurie ją turi, ir saujelė (galbūt nė vieno), kuri naudojasi viskuo, ką gali.

Tačiau prieš eidamas toliau, aš turiu paaiškinti dar vieną dalyką apie VBA. 2002 m. Vasario mėn. „Microsoft“ padarė 300 milijardų dolerių statymą dėl visiškai naujos technologijos bazės visai jų įmonei. Jie tai pavadino .NET. Nuo to laiko „Microsoft“ perkelia visą jų technologinę bazę į VB.NET. VBA yra paskutinis programavimo įrankis, kuriame vis dar naudojamas VB6, išbandyta ir tikra technologija, kuri buvo naudojama prieš VB.NET. (Norėdami apibūdinti šią VB6 lygio technologiją, pamatysite frazę „COM pagrįstas“.)

VSTO ir VBA

„Microsoft“ sukūrė būdą, kaip rašyti VB.NET programas, skirtas „Office 2007“. Jis vadinamas „Visual Studio Tools for Office“ (VSTO). VSTO problema yra ta, kad jūs turite nusipirkti ir išmokti naudotis „Visual Studio Professional“. Pati „Excel“ vis dar yra pagrįsta COM ir .NET programos turi dirbti su „Excel“ per sąsają (vadinamą PIA, Primary Interop Assembly).

Taigi... kol „Microsoft“ nesutiks jų veiksmų ir nesuteiks jums būdo rašyti programas, kurios veiks su „Word“ ir neprivers jūsų prisijungti prie IT skyriaus, VBA makrokomandos vis dar yra tas kelias.

Kita priežastis, kodėl mes naudojame VBA, yra ta, kad ji yra visiškai iškepta (ne iškepta pusiau) programinės įrangos kūrimas aplinka, kuria ilgus metus naudojosi programuotojai, kad sukurtų pačias moderniausias egzistuojančias sistemas. Nesvarbu, kiek aukštai nustatyti jūsų programavimo taikiniai. „Visual Basic“ turi galią jus ten nuvežti.

Kas yra makrokomanda?

Galbūt anksčiau naudojote darbalaukio programas, palaikančias vadinamąją makro kalbą. Makrokomandos paprastai yra tik klaviatūros veiksmų scenarijai, sugrupuoti į vieną pavadinimą, kad galėtumėte juos visus vykdyti vienu metu. Jei visada pradedate dieną atidarę „MyDiary“ dokumentą, įvesdami šios dienos datą ir įvesdami žodžius „Mielas dienoraštis“ - kodėl gi neleidus kompiuteriui to padaryti už jus? Siekdama suderinti su kita programine įranga, „Microsoft“ VBA vadina ir makro kalba. Bet taip nėra. Tai daug daugiau.

Daugelyje stalinių kompiuterių programų yra programinė įranga, leidžianti įrašyti „klavišo paspaudimo“ makrokomandą. „Microsoft“ programose šis įrankis vadinamas „Macro Recorder“, tačiau rezultatas nėra tradicinė klaviatūros makrokomanda. Tai VBA programa ir skirtumas yra tas, kad joje ne tik pakartojami klavišų paspaudimai. Jei įmanoma, VBA programa pateikia tą patį galutinį rezultatą, tačiau VBA taip pat galite parašyti sudėtingas sistemas, kurios dulkėse palieka paprastas klaviatūros makrokomandas. Pvz., Galite naudoti „Excel“ funkcijas „Word“ naudodami VBA. Ir jūs galite integruoti VBA su kitomis sistemomis, tokiomis kaip duomenų bazės, internetas ar kitos programinės įrangos programos.

Nors „VBA Macro Recorder“ yra labai naudingas tiesiog kuriant paprastas klaviatūros makrokomandas, programuotojus atrado, kad dar naudingiau jiems pradėti veikti sudėtingesnėse programose. Tai mes ketiname daryti.

Pradėti „Microsoft Word 2007“ su tuščiu dokumentu ir pasiruoškite parašyti programą.

„Word“ skirtukas „Kūrėjas“

Vienas iš pirmųjų dalykų, kurį turite padaryti rašydami „Visual Basic“ programą „Word 2007“, yra rasti „Visual Basic“! Numatytasis „Word 2007“ yra nerodyti naudojamos juostos. Norėdami pridėti Programuotojas skirtuką, pirmiausia spustelėkite Biuras mygtuką (logotipas viršutiniame kairiajame kampe), tada spustelėkite Žodžių parinktys. Spustelėkite Rodyti skirtuką Kūrėjas juostelėje tada spustelėkite Gerai.

Kai spustelėsite Programuotojas skirtuke, turite visiškai naują įrankių rinkinį, naudojamą VBA programoms rašyti. Mes ketiname naudoti „VBA Macro Recorder“ kurdami savo pirmąją programą. (Jei juostelė su visais jūsų įrankiais ir toliau dingsta, galbūt norėsite dešiniuoju pelės mygtuku spustelėkite juostelę ir įsitikinkite Sumažinkite juostelę nėra pažymėtas.)

Spustelėkite Įrašykite makrokomandą. Pavadinkite savo makrokomandą: ApieVB1 įvesdami tą vardą Makropavadinimas teksto dėžutė. Pasirinkite dabartinį dokumentą kaip vietą, kur norite išsaugoti makrokomandą, ir spustelėkite Gerai. Žiūrėkite žemiau pateiktą pavyzdį.

(Pastaba: jei pasirinksite Visi dokumentai (Normal.dotm) iš išskleidžiamojo meniu ši bandomoji VBA programa iš tikrųjų taps pačios „Word“ dalimi, nes tada ji bus prieinama kiekvienam „Word“ sukurtam dokumentui. Jei norite naudoti VBA makrokomandą tik konkrečiame dokumente arba norite ją nusiųsti kam nors kitam, geriau idėją išsaugoti makrokomandą kaip dokumento dalį. Normalus.dotm yra numatytasis, todėl jūs turite jį pakeisti.)

Įjungę „Macro Recorder“, įveskite tekstą „Sveikas pasaulis“. į savo „Word“ dokumentą. (Pelės žymeklis pasikeis į miniatiūrinį juostos kasetės paveikslėlį, kad būtų parodyta, kad įrašomi klavišų paspaudimai.)

(Pastaba: „Hello World“ beveik reikalinga „Pirmajai programai“, nes pats pirmasis programavimo vadovas skirtas ankstyvajai programai kompiuterio kalba „C“ naudojo. Nuo to laiko tai buvo tradicija.)

Spustelėkite Sustabdyti įrašymą. Uždarykite „Word“ ir išsaugokite dokumentą pavadinimu: ApieVB1.docm. Jūs turite pasirinkti a „Word Macro-Enabled“ dokumentas nuo Išsaugoti kaip tipą išskleidžiamasis.

Viskas! Dabar jūs parašėte „Word VBA“ programą. Pažiūrėkime, kaip tai atrodo!

Supratimas, kas yra VBA programa

Jei uždarėte „Word“, vėl atidarykite jį ir pasirinkite ApieVB1.docm failą, kurį išsaugojote ankstesnėje pamokoje. Jei viskas buvo padaryta teisingai, dokumento lango viršuje turėtumėte pamatyti reklamjuostę su saugos įspėjimu.

VBA ir saugumas

VBA yra tikra programavimo kalba. Tai reiškia, kad VBA gali padaryti beveik viską, ko jums reikia. O tai, savo ruožtu, reiškia, kad jei iš kažkokio „blogo vaikino“ gausite „Word“ dokumentą su įdėta makrokomanda, ši makrokomanda taip pat gali padaryti bet ką. Taigi į „Microsoft“ įspėjimą reikia žiūrėti rimtai. Iš kitos pusės, tu parašė šią makrokomandą ir viskas, ką ji daro, yra „Hello World“, taigi čia nėra jokios rizikos. Spustelėkite mygtuką, kad įgalintumėte makrokomandas.

Norėdami pamatyti, ką sukūrė „Macro Recorder“ (taip pat atlikti daugumą kitų dalykų, susijusių su VBA), turite paleisti „Visual Basic“ redaktorių. Kūrėjo juostelės kairėje pusėje yra piktograma, kurią tai galite padaryti.

Pirmiausia atkreipkite dėmesį į kairįjį langą. Tai vadinama Projekto tyrinėtojas ir jis sugrupuoja aukšto lygio objektus (apie juos daugiau kalbėsime), kurie yra jūsų „Visual Basic“ projekto dalis.

Kai buvo paleistas „Macro Recorder“, jūs turėjote pasirinkti iš: Normalus šabloną arba dabartinį dokumentą kaip makrokomandos vietą. Jei pasirinkote Normalus, tada „NewMacros“ modulis bus modulio dalis Normalus „Project Explorer“ ekrano šaka. (Jūs turėjote pasirinkti dabartinį dokumentą. Jei pasirinkote Normalus, ištrinkite dokumentą ir pakartokite ankstesnes instrukcijas.) Pasirinkite „NewMacros“ pagal Moduliai jūsų dabartiniame projekte. Jei vis tiek nerodomas kodo langas, spustelėkite Kodas po Vaizdas Meniu.

„Word“ dokumentas kaip VBA talpykla

Kiekviena „Visual Basic“ programa turi būti kažkokiame faile „konteineris“. „Word 2007“ VBA makrokomandų atveju tas talpykla yra (.docm) „Word“ dokumentas. „Word VBA“ programos negali veikti be „Word“ ir negalite sukurti atskirų („.exe“) „Visual Basic“ programų, kaip galite naudodamiesi „Visual Basic 6“ ar „Visual Basic .NET“. Bet tai vis tiek palieka visą pasaulį dalykų, kuriuos galite padaryti.

Jūsų pirmoji programa tikrai yra trumpa ir miela, tačiau ji padės pristatyti pagrindines VBA ir „Visual Basic“ redaktoriaus funkcijas.

Programos šaltinį paprastai sudarys iš paprogramių. Baigę sudėtingesnį programavimą, pamatysite, kad be paprogramių programos dalis gali būti ir kiti dalykai.

Šis konkretus paprogramė yra pavadintas ApieVB1. Paprogramos antraštė turi būti suporuota su Pabaigos poskyris apačioje. Skliausteliuose gali būti parametrų sąrašas, kurį sudaro vertės, perduodamos į paprogramę. Čia niekas neperduodama, bet jie turi būti ten Sub pareiškimas vistiek. Vėliau, kai vykdysime makrokomandą, ieškosime pavadinimo ApieVB1.

Paprogramoje yra tik vienas tikras programos teiginys:

Pasirinkimas. TypeText Text: = "Sveikas pasaulis!"

Objektai, metodai ir savybės

Šiame teiginyje yra trys pagrindiniai dalykai:

  • objektas
  • metodas
  • nuosavybė

Pareiškimas iš tikrųjų prideda tekstą „Sveikas pasaulis“. prie dabartinio dokumento turinio.

Kita užduotis - keletą kartų paleisti mūsų programą. Kaip ir perkant automobilį, pravartu juo kurį laiką važiuoti, kol jis pasidarys šiek tiek patogus. Mes tai darome toliau.

Programos ir dokumentai

Mes turime savo šlovingą ir sudėtingą sistemą... sudarytas iš vienos programos pažymos... bet dabar mes norime tai paleisti. Štai ką apie tai reikia pasakyti.

Čia reikia išmokti vienos sąvokos, kuri yra labai svarbi ir dažnai iš tikrųjų supainioja pirmuosius laikmačius: skirtumas tarp programa ir dokumentas. Ši koncepcija yra pamatinė.

VBA programos turi būti pagrindiniame faile. Žodžiu, pagrindinis kompiuteris yra dokumentas. Mūsų pavyzdyje tai yra ApieVB1.docm. Programa iš tikrųjų išsaugoma dokumento viduje.

Pvz., Jei tai būtų „Excel“, mes kalbėtume apie programa ir skaičiuoklę. Prieiga, programa ir duomenų bazę. Net autonominėje „Visual Basic Windows“ programoje turėtume programa ir a forma.

(Pastaba: Yra tendencija programuoti visus aukšto lygio konteinerius vadinti „dokumentais“. Tai ypač pasakytina apie atvejus, kai XML... dar viena naujausia technologija... yra naudojamas. Neleisk, kad tavęs supainiotų. Nors tai yra nedidelis netikslumas, jūs galite galvoti apie „dokumentus“ maždaug taip, kaip „failus“.)

Yra... ummmmm... apie tris pagrindinius VBA makrokomandos paleidimo būdus.

  1. Galite paleisti jį iš „Word“ dokumento.
    (Pastaba: dvi subkategorijos yra meniu „Įrankiai“ pasirinkti makrokomandas arba tiesiog paspausti „Alt-F8“. Jei makrokomandą priskyrėte įrankių juostai arba klaviatūros klavišams, tai yra dar vienas būdas.))
  2. Galite paleisti jį iš redagavimo priemonės naudodami „Run“ piktogramą arba „Run“ meniu.
  3. Derinimo režimu galite atlikti vieną žingsnį per programą.

Turėtumėte išbandyti kiekvieną iš šių metodų, kad tik jums patiktų „Word“ / VBA sąsaja. Kai baigsite, turėsite visą dokumentą, užpildytą kartojant „Sveikas pasaulis!“

Paleisti programą iš „Word“ yra gana lengva. Tiesiog pasirinkite makrokomandą spustelėję Makro piktogramą po Vaizdas skirtukas.

Jei norite paleisti jį iš redaktoriaus, pirmiausia atidarykite „Visual Basic“ redaktorių ir tada spustelėkite piktogramą Vykdyti arba meniu pasirinkite Vykdyti. Štai kur skirtumas tarp dokumento ir programos kai kuriems gali painioti. Jei dokumentą sumažinote arba galbūt langus sutvarkėte taip, kad redaktorius jį apimtų, galite spustelėti „Run“ piktogramą vėl ir vėl, ir atrodo, kad nieko neatsitiks. Bet programa veikia! Vėl pereikite prie dokumento ir pamatysite.

Vienas žingsnis per programą yra tikriausiai naudingiausia problemų sprendimo technika. Tai daroma ir iš „Visual Basic“ redaktoriaus. Norėdami tai išbandyti, paspauskite F8 arba pasirinkite Įžengti nuo Derinti Meniu. Pirmasis programos teiginys Sub pareiškimas, yra paryškintas. Paspaudus F8, programos teiginiai vykdomi po vieną, kol programa baigsis. Galite tiksliai pamatyti, kada tekstas tokiu būdu pridedamas prie dokumento.

Yra daugybė patobulintų derinimo būdų, tokių kaip „Breakpoints“, programos objektų nagrinėjimas „Neatidėliotiname lange“ ir „Žiūrėjimo lango“ naudojimas. Tačiau kol kas tiesiog žinokite, kad tai yra pagrindinė derinimo technika, kurią naudosite kaip programuotoją.

Objektinis programavimas

Kita klasės pamoka yra apie viską Objektinis programavimas.

"Whaaaattttt!" " Aš nepasirašiau būti informatiku! “

Nebijok! Yra dvi priežastys, kodėl tai puikus žingsnis.

Pirma, šiuolaikinėje programavimo aplinkoje jūs tiesiog negalite būti efektyvus programuotojas, nesuprasdamas objektinio programavimo sąvokų. Net mūsų labai paprastą vienos eilutės „Sveikas pasaulis“ programą sudarė objektas, metodas ir nuosavybė. Mano nuomone, nesuprasti objektų yra didžiausia problema, kurią turi programuotojai. Taigi mes susidursime su žvėrimis tiesiai iš priekio!

Antra, mes padarysime tai kuo neskausmingesnį. Mes nesupainiosime jūsų su krūviu informatikos žargono.

Bet iškart po to mes vėl grįšime prie programavimo kodo rašymo kartu su pamoka, kur mes sukursime VBA makrokomandą, kurią greičiausiai galėsite naudoti! Tolesnę programą tobuliname kitoje pamokoje ir užbaigiame parodydami, kaip pradėti naudoti VBA keliomis programomis vienu metu.