Kurssin tavoitteena on auttaa ihmisiä, jotka eivät ole koskaan kirjoittaneet ohjelmaa ennen oppimaan kirjoittamaan. Ei ole mitään syytä, miksi toimistotyöntekijät, kodinvalmistajat, ammattimaiset insinöörit ja pizzatoimittajat ei pitäisi pystyä hyödyntämään omia käsintehtyjä mukautettuja tietokoneohjelmia toimimaan nopeammin ja älykkäämpiä. "Ammattimaisen ohjelmoijan" (mitä se on) ei tarvitse tehdä työtä. Tiedät mitä on tehtävä paremmin kuin kukaan muu. Voit tehdä sen itse!
(Ja sanon tämän olevan henkilö, joka on viettänyt monta vuotta ohjelmia muille ihmisille... 'Ammattimaisesti'.)
Tämän sanomalla, tämä ei ole kurssi tietokoneen käyttöön.
Kurssi edellyttää, että osaat käyttää suosittuja ohjelmistoja ja erityisesti, että Microsoft Word 2007 on asennettu tietokoneellesi. Tietokoneen perustaidot, kuten tiedostot-kansioiden (eli hakemistojen) luonti ja tiedostojen siirtäminen ja kopioiminen, on oltava tiedossa. Mutta jos olet aina miettinyt, mikä tietokoneohjelma todella oli, se on OK. Näytämme sinulle.
Microsoft Office ei ole halpaa. Mutta voit saada lisäarvoa jo asennetusta kalliista ohjelmistoista. Se on iso syy, jota käytämme Visual Basic for Applications tai VBA yhdessä Microsoft Office -sovelluksen kanssa. On miljoonia, joilla on se, ja kourallinen (ehkä kukaan), joka käyttää kaikkea mitä voi tehdä.
Ennen kuin menemme pidemmälle, minun on kuitenkin selitettävä vielä yksi asia VBA: sta. Helmikuussa 2002 Microsoft teki 300 miljardin dollarin vedon täysin uudelle teknologiapohjalle koko yritykselleen. He kutsuivat sitä .NET. Siitä lähtien Microsoft on siirtänyt koko teknologiapohjansa VB.NET-verkkoon. VBA on viimeisin ohjelmointityökalu, joka käyttää edelleen VB6: ta, kokeiltua ja totta tekniikkaa, jota käytettiin ennen VB.NET. (Näet lauseen "COM-pohjainen" kuvaamaan tätä VB6-tasoteknologiaa.)
VSTO ja VBA
Microsoft on luonut tavan kirjoittaa VB.NET-ohjelmia Office 2007: lle. Sitä kutsutaan Visual Studio Tools for Office (VSTO). VSTO: n ongelmana on, että sinun täytyy ostaa ja oppia käyttämään Visual Studio Professional -sovellusta. Itse Excel on edelleen myös COM-pohjainen ja .NET-ohjelmien on toimittava Excelin kanssa käyttöliittymän (kutsutaan PIA, Primary Interop Assembly) kautta.
Niin... kunnes Microsoft saa heidän toimintansa yhteen ja antaa sinulle tavan kirjoittaa ohjelmia, jotka toimivat Wordin kanssa ja jotka eivät tee sinua liittymään IT-osastoon, VBA-makrot ovat vielä tie.
Toinen syy VBA: n käyttämiseen on, että se todella on "täysin paistettu" (ei puoliksi paistettu) ohjelmistokehitys ympäristö, jota ohjelmoijat ovat käyttäneet vuosia luomaan joitain olemassa olevista edistyneimmistä järjestelmistä. Ei ole väliä kuinka korkeita ohjelmointikohteet ovat asetettu. Visual Basicillä on valta viedä sinut sinne.
Mikä on makro?
Olet ehkä käyttänyt työpöytäsovelluksia, jotka tukevat aiemmin kutsuttua makro kieltä. Makrot ovat perinteisesti vain näppäimistötoimintojen skriptit, jotka on ryhmitelty yhteen nimeen, jotta voit suorittaa ne kaikki kerralla. Jos aloitat päivän avaamalla "MyDiary" -asiakirjan, kirjoittamalla tänään päivämäärän ja kirjoittamalla sanat "Rakas päiväkirja" - Miksi et anna tietokoneesi tehdä sitä puolestasi? Jotta se olisi johdonmukainen muiden ohjelmistojen kanssa, Microsoft kutsuu VBA: tä myös makrokieleksi. Mutta se ei ole. Se on paljon muuta.
Monet työpöytäsovellukset sisältävät ohjelmistotyökalun, jonka avulla voit tallentaa "näppäily" -makron. Microsoftin sovelluksissa tätä työkalua kutsutaan makrotallenntajaksi, mutta tulos ei ole perinteinen näppäilymakro. Se on VBA-ohjelma ja ero on siinä, että siinä ei vain toisteta näppäinpainalluksia. VBA-ohjelma antaa sinulle saman lopputuloksen, jos mahdollista, mutta voit myös kirjoittaa VBA: han hienostuneita järjestelmiä, jotka jättävät pölyn yksinkertaiset näppäimistömakrot. Voit esimerkiksi käyttää Wordin Excel-toimintoja VBA: n avulla. Ja voit integroida VBA: n muihin järjestelmiin, kuten tietokantoihin, verkkoon tai muihin ohjelmistosovelluksiin.
Vaikka VBA-makrotallennin on erittäin hyödyllinen yksinkertaisten näppäimistömakrojen luomiseen, ohjelmoijat ovat huomanneet, että on vielä hyödyllisempää antaa heille käynnistäminen kehittyneemmissä ohjelmissa. Sitä me aiomme tehdä.
alkaa Microsoft Word 2007 tyhjällä asiakirjalla ja valmistaudu kirjoittamaan ohjelma.
Word-sovelluksen Kehittäjä-välilehti
Yksi ensimmäisistä asioista, jotka sinun täytyy kirjoittaa Visual Basic -ohjelma Word 2007: ssä, on löytää Visual Basic! Word 2007: n oletus on, että käytettyä nauhaa ei näytetä. Lisää Kehittäjä napsauta ensin toimisto -painiketta (logo vasemmassa yläkulmassa) ja napsauta sitten Sana-asetukset. Klikkaus Näytä kehittäjä-välilehti nauhassa ja napsauta sitten kunnossa.
Kun napsautat Kehittäjä -välilehdessä on aivan uusi työkalusarja, jota käytetään VBA-ohjelmien kirjoittamiseen. Käytämme VBA-makrotallenninta ensimmäisen ohjelmasi luomiseen. (Jos nauha kaikilla työkaluillasi katoaa edelleen, kannattaa ehkä napsauttaa hiiren kakkospainikkeella nauhaa ja varmistaa Minimoi nauha ei ole valittuna.)
Klikkaus Tallenna makro. Nimeä makro: AboutVB1 kirjoittamalla kyseisen nimen Makro-nimi tekstilaatikko. Valitse nykyinen asiakirja makrojen tallennuspaikaksi ja napsauta OK. Katso alla oleva esimerkki.
(Huomaa: Jos valitset Kaikki asiakirjat (Normal.dotm) avattavasta valikosta tästä testi-VBA-ohjelmasta tulee käytännössä osa itse Wordia, koska se on sitten käytettävissä jokaiselle Wordissa luomallesi asiakirjalle. Jos haluat käyttää vain VBA-makroa tietyssä asiakirjassa tai jos haluat pystyä lähettämään sen jollekin toiselle, on parempi idea tallentaa makro osana asiakirjaa. Normal.dotm on oletus, joten sinun on muutettava se.)
Kun makrotallennin on kytketty päälle, kirjoita teksti "Hei maailma". Word-asiakirjaasi. (Hiiren osoitin muuttuu pienoiskuvaksi nauhakasetista osoittaen, että näppäinpainalluksia tallennetaan.)
(Huomaa: "Hello World" vaaditaan melkein "ensimmäiseen ohjelmaan", koska ensimmäinen ohjelmointiohje varhaiselle tietokonekieli "C" käytti sitä. Se on ollut perinne siitä lähtien.)
Klikkaus Lopeta tallennus. Sulje Word ja tallenna asiakirja nimellä: AboutVB1.docm. Sinun on valittava a Word-makro-käytössä oleva asiakirja alkaen Tallenna tyypiksi pudota alas.
Se siitä! Olet nyt kirjoittanut Word VBA -ohjelman. Katsotaan miltä se näyttää!
Ymmärtäminen, mikä VBA-ohjelma on
Jos olet sulkenut Wordin, avaa se uudelleen ja valitse AboutVB1.docm tiedosto, jonka olet tallentanut edellisessä oppitunnissa. Jos kaikki tehtiin oikein, sinun pitäisi nähdä asiakirjaikkunan yläosassa banneri, jossa on turvavaroitus.
VBA ja turvallisuus
VBA on todellinen ohjelmointikieli. Tämä tarkoittaa, että VBA pystyy tekemään kaiken mitä tarvitset sen tekemiseen. Ja se puolestaan tarkoittaa, että jos saat Word-asiakirjan, jossa on upotettu makro jostakin ”paholaiselta”, se voi tehdä myös melkein mitä tahansa. Joten Microsoftin varoitus on otettava vakavasti. Toisaalta, sinä kirjoitti tämän makron ja kaikki se on tyyppiä "Hello World", joten tässä ei ole riskiä. Ota makrot käyttöön napsauttamalla painiketta.
Käynnistä Visual Basic Editor, jotta voit nähdä, mitä makrotallennin on luonut (samoin kuin tehdä useimpia muita asioita, joihin liittyy VBA). Kehittäjänauhan vasemmalla puolella on kuvake sen tekemiseen.
Huomaa ensin vasen ikkuna. Tätä kutsutaan Projektien tutkija ja se ryhmittelee korkean tason esineet (puhumme niistä enemmän), jotka ovat osa Visual Basic -projektiasi.
Kun makrotallennin käynnistettiin, sinulla oli mahdollisuus valita normaali malli tai nykyinen asiakirja makroasi. Jos valitsit Normaali, sitten NewMacros moduuli tulee olemaan osa normaali Project Explorer -näytön haara. (Sinun piti valita nykyinen asiakirja. Jos valitsit normaali, poista asiakirja ja toista edelliset ohjeet.) Valitse NewMacros alla moduulit nykyisessä projektissasi. Jos koodinäyttöä ei vieläkään näy, napsauta Koodi alla näkymä valikko.
Word-asiakirja VBA-säilönä
Jokaisen Visual Basic -ohjelman on oltava jonkinlaista tiedostoa 'säilö'. Word 2007 VBA -makrojen tapauksessa tämä säilö on (.docm) Word-asiakirja. Word VBA -ohjelmat eivät voi toimia ilman Wordia, etkä voi luoda erillisiä (.exe) Visual Basic -ohjelmia kuten Visual Basic 6 tai Visual Basic .NET. Mutta se jättää silti koko maailman asioita, joita voit tehdä.
Ensimmäinen ohjelmasi on varmasti lyhyt ja suloinen, mutta se esittelee VBA: n ja Visual Basic Editorin tärkeimmät ominaisuudet.
Ohjelmalähde koostuu yleensä sarjasta aliohjelmia. Kun siirryt edistyneempään ohjelmointiin, huomaat, että muut asiat voivat olla osa ohjelmaa aliohjelmien lisäksi.
Tämä erityinen aliohjelma on nimetty AboutVB1. Aliohjelman otsikko on yhdistettävä End Sub pohjalla. Suluissa voi olla parametriluettelo, joka koostuu alirutiinille välitetyistä arvoista. Mitään ei välitetä täällä, mutta heidän on oltava siellä Sub lausunto joka tapauksessa. Myöhemmin, kun suoritamme makron, etsimme nimeä AboutVB1.
Aliohjelmassa on vain yksi todellinen ohjelmalausunto:
Valinta. TypeText Text: = "Hei maailma!"
Kohteet, menetelmät ja ominaisuudet
Tämä lausunto sisältää kolme suurta:
- esine
- menetelmä
- omaisuus
Lausunto itse asiassa lisää tekstin "Hei maailma". nykyisen asiakirjan sisältöön.
Seuraava tehtävä on suorittaa ohjelmamme muutaman kerran. Aivan kuten auton ostaminen, on hyvä ajaa ajaa sitä jonkin aikaa, kunnes se tuntuu hieman mukavalta. Teemme sen seuraavaksi.
Ohjelmat ja asiakirjat
Meillä on loistava ja monimutkainen järjestelmämme... joka koostuu yhdestä ohjelmalausunnosta... mutta nyt haluamme käyttää sitä. Tässä on mitä kyse on.
Tässä on opittava yksi käsite, joka on erittäin tärkeä ja se sekoittaa usein ensimmäiset ajastimet todellakin: ero ohjelmoida ja asiakirja. Tämä käsite on perusta.
VBA-ohjelmien on oltava isäntätiedostossa. Wordissa isäntä on asiakirja. Esimerkissämme se on AboutVB1.docm. Ohjelma tallennetaan tosiasiallisesti asiakirjaan.
Esimerkiksi, jos tämä oli Excel, puhumme ohjelmoida ja taulukkolaskentaohjelma. Access-sovelluksessa ohjelmoida ja tietokanta. Jopa erillisessä Visual Basic Windows -sovelluksessa meillä olisi ohjelmoida ja a muoto.
(Huomaa: Ohjelmoinnissa on suuntaus viitata kaikkiin korkean tason säilöihin "asiakirjana". Tämä on erityisesti tapaus, jossa XML... uusi tekniikka... käytetään. Älä anna sen sekoittaa sinua. Vaikka kyseessä on pieni epätarkkuus, voit ajatella "asiakirjoja" olevan suunnilleen samoja kuin "tiedostot".)
On... ummmmm... noin kolme päätapaa suorittaa VBA-makro.
- Voit suorittaa sen Word-dokumentista.
(Huomaa: Kaksi alakategoriaa on valita Makro työkaluvalikosta tai painaa Alt-F8. Jos olet määrittänyt makron työkalupalkkiin tai pikanäppäimeen, se on vielä yksi tapa.)) - Voit suorittaa sen Editorissa Suorita-kuvakkeen tai Suorita-valikon avulla.
- Voit suorittaa yhden askeleen ohjelman läpi debug-tilassa.
Sinun tulisi kokeilla kaikkia näitä menetelmiä vain saadaksesi viihtymään Word / VBA-käyttöliittymässä. Kun olet valmis, sinulla on koko asiakirja, joka täytetään toistamalla "Hei maailma!"
Ohjelman suorittaminen Wordista on melko helppoa. Valitse vain makro napsauttamalla makro -kuvaketta näkymä välilehti.
Voit suorittaa sen editorista avaamalla ensin Visual Basic -editorin ja napsauttamalla sitten Suorita-kuvaketta tai valitsemalla valikosta Suorita. Tässä on ero asiakirjan ja ohjelman välillä saattaa hämmentyä joillekin. Jos asiakirja on pienennetty tai ehkä ikkunat on järjestetty niin, että editori peittää sen, voit napsauttaa Suorita-kuvaketta uudestaan ja uudestaan, eikä mitään näytä tapahtuvan. Mutta ohjelma on käynnissä! Vaihda asiakirjaan uudelleen ja katso.
Yksi ohjelman läpi käyminen on luultavasti hyödyllisin ongelmanratkaisumenetelmä. Tämä tehdään myös Visual Basic -editorista. Kokeile tätä painamalla F8 tai valitse Astua sisään alkaen debug valikko. Ohjelman ensimmäinen lausunto Sub lausunto, on korostettu. F8-näppäimen painallus suorittaa ohjelmalausunnot yksi kerrallaan, kunnes ohjelma päättyy. Voit nähdä tarkalleen, milloin teksti on lisätty asiakirjaan tällä tavalla.
Siellä on paljon hienostuneempia virheenkorjaustekniikoita, kuten ”Breakpoints”, ”Program Window” -ohjelmaobjektien tutkiminen ja “Watch Window” -sovelluksen käyttö. Mutta toistaiseksi vain tiedä, että tämä on ensisijainen virheenkorjaustekniikka, jota käytät ohjelmoijana.
Olio-ohjelmointi
Seuraava luokkatunti on kyse Olio-ohjelmointi.
"Whaaaattttt!" (Kuulen sinun valittavan) "Haluan vain kirjoittaa ohjelmia. En ilmoittautunut tietokonetieteilijäksi! "
Älä pelkää! On kaksi syytä, miksi tämä on hieno liike.
Ensinnäkin, nykypäivän ohjelmointiympäristössä et voi yksinkertaisesti olla tehokas ohjelmoija ymmärtämättä oliopohjaisia ohjelmointikäsitteitä. Jopa hyvin yksinkertainen yksirivinen "Hello World" -ohjelma koostui esineestä, menetelmästä ja ominaisuudesta. Mielestäni esineiden ymmärtämättä jättäminen on suurin yksittäinen ongelma, joka ohjelmoijilla on alussa. Joten kohtaamme pedon edessä!
Toiseksi teemme siitä mahdollisimman kivutonta. Emme aio sekoittaa sinua tietotekniikan ammattikirjaan.
Mutta heti sen jälkeen, siirrymme takaisin takaisin ohjelmointikoodin kirjoittamiseen oppitunnilla, jossa kehitämme VBA-makron, jota voit todennäköisesti käyttää! Täydennämme tätä ohjelmaa hiukan enemmän seuraavassa oppitunnissa ja lopetamme osoittamalla sinulle, kuinka voit aloittaa VBA: n käytön useiden sovellusten kanssa kerralla.