ArvutidTarkvara

VBA Excel: proovi programmid. Makrod Excelis

Vähesed teavad, et esimene versioon populaarne Microsoft Excel toote ilmus 1985. aastal. Alates sellest ajast on läbi teinud mitmeid muudatusi ja nõudluse miljoneid kasutajaid üle maailma. Kuid paljud tööd ainult natuke võimete selle arvutustabeli ja isegi ei tea, kuidas nad võiksid teha elu lihtsamaks võime Excel programmeerimise.

Mis on VBA

Programmeerimine Excel tehakse Visual Basic for Application programmeerimiskeelt, mis oli algselt ehitatud kuulsaim arvutustabeli Microsoft.

Tema teeneid eksperdid atribuut suhteline lihtsus arengut. Nagu praktika näitab, VBA saab kapten põhitõdesid, isegi kasutajad, kes ei ole professionaalsed programmeerimise oskusi. VBA funktsioonide hulka skripti täitmise kontoris taotluse keskkond.

Puuduseks on programmi seotud probleeme ühilduvuse erinevate versioonide. Nad on tingitud asjaolust, et VBA koodi programmi viitab funktsionaalsuse, mis esineb uue versiooni toode, kuid mitte vana. Samuti on suur puudus ja ülemäära kõrge avatuse koodi muuta nägu võõras. Kuid Microsoft Office ja IBM Lotus Symphony võimaldab kasutajatel taotleda krüpteerimist kande kood ja parool seaded, et vaadata seda.

Objektid, kogud, omadused ja meetodid

On neid kontseptsioone, mida tuleb mõista neid, kes hakkavad töötama VBA keskkond. Esiteks, sa pead aru objekt on. Excelis käesolevas seaduses lehel, raamat ja lahtrivahemikku. Need eesmärgid on erilised hierarhia, st kuuletuda üksteist.

Põhilised neist on rakendus, vastava Exceli programm ise. Järgneb Töövihikud, töölehed ja Range. Näiteks selleks, et viidata lahter A1 konkreetse leht peab suuna, võttes arvesse hierarhia.

Seoses mõiste "kogumine" selle grupi objektide samasse klassi, kus salvestus antakse ChartObjects. Selle elemendid on ka objektide kohta.

Järgmine asi - omadused. Nad on vajalikud funktsioon mis tahes objekti. Näiteks Range - on valemi või väärtuse.

Meetodid - on käsk, et näidata, et soovite teha. Kui kirjutad koodi VBA neid eraldada objekti punkti. Näiteks kui näidatakse hiljem väga sageli, kui programmeerimine on "Excel" kasutamine Rakud käsk (1,1) .Select. See tähendab, et seda on vaja valida rakus koordinaatidega (1,1), st A1.

Siiski kasutatakse sageli Selection.ClearContents. Selle rakendamist puhastades sisu valitud lahtri.

Kuidas alustada

Esiteks, mida soovite luua faili ja salvestada see, määrata nime ja tüübi valimiseks «Book Exceli makro-toega."

Siis minge VB taotlust, mis on piisav, et kasutada kombinatsiooni «Alt» võtme ja «F11». Järgmine:

  • menüüribal tipus akna, klõpsake selle kõrval olevat ikooni Exceli ikoon;
  • Mudule valitud käsk;
  • hoida klõpsates ikoonil diskett;
  • kirjutada, ütleme, kood ülevaade.

Tundub järgmiselt:

Sub programmi ()

"Meie koodi

End Sub

Pange tähele, et rida "" Meie kood "esile tõstetud erinevat värvi (roheline). Selle põhjuseks ülakoma, tarnitud alguses string, mis näitab, et järgneb kommentaari.

Nüüd võite kirjutada mingi koodi ja luua ise uue tööriista VBA Excel (vt proovi programmid. Jne). Muidugi, need, kes on tuttav põhitõdesid Visual Basic, siis on see palju lihtsam. Kuid isegi need, kes ei ole, kui soovite, et oleks võimalik saada mugav üsna kiiresti.

Makrod Excelis

Selle taga nimi peidab programmid kirjutatud Visual Basic for Application keeles. Seega programmeerimine Excel - on luua makro soovitud koodi. Selle võime, Microsoft tabelisse ise arendab, millega kohandatakse nõuetele konkreetse kasutaja. Olles käsitlenud kuidas luua moodulid kirjutamiseks makrosid, siis on võimalik jätkata konkreetsete näidete VBA Excel programmi. See on kõige parem alustada kõige elementaarsem koodid.

NÄIDE 1

Ülesanne: Koostada programm, mis kopeerib väärtus ühe lahtri sisu ja seejärel kirjutada teise.

Selleks:

  • avada vahekaart "View";
  • liikuda ikoon "makrod";
  • raputada "Record Macro";
  • täita avatud kujul.

Lihtsuse "makro nimi" lahkuda "Makros1" ja "Kiirklahv" järele, näiteks hh (see tähendab, et saate käivitada näiteks programm on «Ctrl + h» Blitz meeskond). Press Enter.

Nüüd, kui olete hakanud salvestamise makro, moodustavad sisu rakust teise. Tagasi algse ikooni. Kliki "Record Macro". See tegevus tähistab lõpetamist apletid.

Järgmine:

  • jälle liiguvad string "Makrod";
  • valitakse nimekirjas "Macro 1";
  • vajuta "Run" (sama tegevuse algust Käivitatud kiirklahve «Ctrl + hh»).

Selle tulemusena tegevus, mis on läbi viidud salvestamise ajal makro.

On mõistlik, et näha, kuidas kood välja näeb. Selleks mine tagasi string "Makrod" ja vajuta "Edit" või "Enter". Selle tulemusena nad satuvad VBA keskkond. Tegelikult, kood ise asub ridade vahele makro Makros1 Sub () ja End Sub.

Kui kopeerimine on tehtud, näiteks rakust A1 raku C1, üks rida koodi näeb Range ( "C1"). Vali. Tõlkes, tundub "Range (" C1 "). Vali", teisisõnu, teeb ülemineku VBA Excel, raku C1.

Aktiivne osa kood lõpetab ActiveSheet.Paste meeskond. See tähendab salvestamist sisu valitud lahtri (antud juhul, A1) valitud lahtri C1.

NÄIDE 2

VBA tsüklit aitavad luua erinevaid makrosid Excel.

VBA tsüklit aitavad luua erinevaid makrosid. Oletame, et on olemas funktsioon y = x + x 3 + 3x 2 - cos (x). Soovite luua makro oma graafika. Seda saab teha ainult kasutades VBA tsüklit.

Sest esimest ja viimast väärtus argumendi funktsioone võtta x1 = 0 ja x2 = 10. Lisaks on vaja kehtestada pidev - väärtus samm muudab argument ja algväärtuse counter.

Kõik näited VBA Excel makrosid on loodud, kasutades sama menetlust, nagu on sätestatud eespool. Sel juhul, kood näeb välja selline:

Sub programm ()

x1 = 1

x2 = 10

shag = 0,1

i = 1

Ära Kuigi x1

y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - Cos (x 1)

Rakud (i, 1) .Value = x1 (x1 väärtus kirjutatud mälu koordinaadid (i, 1))

Rakud (i, 2) .Value = y (y väärtus on kirjutatud raku koordinaatidega (i, 2))

i = i + 1 (kehtiv arv);

x1 = x1 + shag (argumendi muutumisel sammu suurus);

silmus

End Sub.

Selle tulemusena käesoleva perspektiivis makro "Excel" saada kaks veergu, millest esimene on salvestatud väärtusi x ja teine - et y.

Siis ajastada võimalik ehitada neile, standard "Excel".

Näide 3

Rakendada tsüklite VBA Excel 2010, samuti teistes versioonides koos juba vähendatud Do Kuigi disaini kasutatavatest.

Mõtle programm, mis loob veerus. Igas rakus on see registreeritud ruudud vastavad rea number. Kasutamise disain võimaldab salvestada see väga lühidalt, ilma kasutamise counter.

Kõigepealt on vaja luua makro, nagu eespool kirjeldatud. Järgmine, kirjutada koodi ise. Me usume, et me oleme huvitatud väärtused 10 rakku. Kood on järgmine.

I = 1 kuni 10 Järgmine

Käsk üle "inimese" keeles, nagu "korrata 1 kuni 10 ühe sammu kaupa."

Kui ülesanne saada kolonni väljakud, näiteks kõik paaritu täisarvu vahemikus 1 ja 11, me kirjutada:

I = 1 kuni 10 etapist 1 Edasi.

Siin samm - sammult. Sel juhul on võrdne kahega. Vaikimisi puudumisel sõna lingu tähendab, et ühe etapina.

Tulemused peavad olema salvestatud rakkude arvu (i, 1). Siis iga kord, kui alustate tsükli tõusuga väärtus i samm automaatselt kasvada ja liini number. Seega tekib koodi optimeerimine.

Üldiselt, kood näeks:

Sub programmi ()

I = 1 kuni 10 Etapp 1 (saab kirjutada ainult i = 1 To 10)

Rakud (i, 1) .Value = i ^ 2 (st ruutkeskmine väärtus on kirjutatud rakku (i, 1) i)

Järgmine (mõnes mõttes mängib rolli leti vahendid ja uus tsükkel algusest)

End Sub.

Kui teha õigesti, sealhulgas registreerimise ja Makrode (vt. Ülaltoodud juhised), siis nimetatakse seda iga kord, kui antud suurusega saadakse kolonni (antud juhul koosneb 10 rakud).

Näide 4

Igapäevaelus väga tihti on vaja seda või et otsuse sõltuvalt mõned tingimused. Ei saa ilma neid VBA Excel. Näited programmid, kus edasine algoritmi asemel valitakse esialgu kindlaksmääratud, kõige sagedamini kasutatakse projekteerimise Kui ... Siis (raskesti juhtudel) Kui ... Siis ... END Kui.

Mõtle konkreetsel juhul. Oletame, et soovite luua makro "Excel" raku koordinaatidega (1,1) on registreeritud:

1, kui argument on positiivne;

0, kui argument on null;

1, kui argument on negatiivne.

Loomine sellise makro "Excel" algab tavapärasel viisil, kasutades "kuum" võtmed Alt ja F11. Muud kirjalikud järgmine kood:

Sub programmi ()

x = Cells (1, 1) .Value (Käsk loovutab väärtus x koordinaadid lahtri sisu (1, 1))

Kui x> 0, siis Cells (1, 1) .Value = 1

Kui x = 0, siis Cells (1, 1) .Value = 0

Kui x <0 Siis Cells (1, 1) .Value = -1

End Sub.

Jääb makro ja saada "Excel" soovitud väärtus argument.

VBA funktsioonid

Nagu te võib-olla märganud, et kõige kuulsam programmi Microsoft tabelarvutusrakendust ei ole liiga raske. Eriti kui sa õpid, kuidas kasutada VBA funktsioone. Kokku on selles programmeerimiskeeles loodud spetsiaalselt kirjalikult rakendused "Excel" ja Word, umbes 160 funktsioone. Neid võib jagada mitmesse suurde rühma. Need on:

  • Matemaatiline funktsioone. Rakendades neid argument koosinuse väärtus saadakse, naturaallogaritm, ja nii kogu osa.
  • Financial funktsioone. Tänu nende kättesaadavust ja kasutamist programmeerimine Excel, saad tõhusaid vahendeid raamatupidamise ja finantsaruandluse asulates.
  • Array funktsioonid. Nendeks Array, IsArray; LBound; UBound.
  • VBA Excel funktsiooni joon. See on üsna suur rühm. Siia kuuluvad näiteks Space funktsioon luua stringi mitmeid puudusi võrdne täisarv argumenti või ASC ülekanded sümbolid ANSI koodi. Kõik nad on laialdaselt kasutatud ja võimaldab teil töötada stringid "Excel", et luua rakendusi palju lihtsam töötada need tabelid.
  • Andmed tüübi muutmise funktsioonid. Näiteks CVaR tagastab Expression argument, muutub see variant andmete tüüp.
  • Kuupäev funktsioone. Nad oluliselt laiendada kindlad omadused "Excel". Niisiis, WeekdayName tagastab nimi (täielik või osaline) nädalapäeval oma number. Veelgi kasulik on Timer. Ta annab sekundite arvu, mis on möödunud keskööl konkreetse hetk päevas.
  • Funktsiooni teisendada numbriline argument erinev arv süsteeme. Näiteks Okt väljund on suunatud kaheksand esindatuse arvu.
  • vormindamisvõimalusi. Kõige olulisem neist on Format. See tagastab variant väljendus vormindatud vastavalt juhistele ja kirjeldus formaadis.
  • ja nii edasi.

Uuring omadused nende funktsioonid ja nende kohaldamine oluliselt laiendada "Excel".

Näide 5

Proovime lahendada keerulisemad probleemid. Näiteks:

Dan paberdokumendi tegelikku taset kulud ettevõtte aruandes. nõuab:

  • arendada oma muster osa arvutustabelite "Excel";
  • teha VBA programm, mis küsib algandmed täita see, et teostada vajalikud arvutused ja malli täita vastava raku.

Mõtle üks järgmistest lahendusi.

Malli loomine

Kõik tegevused on teostatud standard lehel Excel. Tasuta lahtritesse sisestades andmeid kuu, aasta, pealkiri ja tarbija ettevõtted, summa kulud, nende tase käive. Nagu mitmed ettevõtted (ettevõtted), mille suhtes aruandes ei kajastata, rakud teha põhjal väärtusi ja professionaalne nimi ei ole eelnevalt reserveerida. Tööleht määratud uus nimi. Näiteks "Օ aruanne".

muutujad

Kirjutada programm automaatselt malli täita valige märge. Neid kasutatakse muutujate:

  • FAW number praegune rida tabeli;
  • TP ja TF - kavandatud ja tegeliku käibe;
  • SF ja SP - tegeliku ja kavandatud kogukuludest;
  • IP ja IF - planeeritud ja tegelike kulude tase.

Me tähistame sama tähed, kuid "eesliide» Itog kogunemine kokku, et veerus. Näiteks ItogTP - Seoses veerus pealkirjaga, nagu "planeeritud käibest."

Lahendus probleemile, kasutades VBA programmeerimise

Kasutades seda märge, saame valemi dispersiooni. Kui soovite teha arvutuste% meil (F - P) / P * 100 ja summas - (F - P).

Nende tulemused arvutused saab parim lihtsalt teha "Excel" tabelisse vastavasse rakke.

Tulemuse ja prognoosi tegelikult saadud valemid ItogP = ItogP + P ja ItogF = ItogF + F.

Suhe kõrvalekalded kasutada = (ItogF - ItogP) / ItogP x 100 Kui arvutus teostatakse protsendina ning kui koguväärtusest - (ItogF - ItogP).

Tulemused taas registreerida vastavates rakkudes, mistõttu ei ole vaja määrata need muutujad.

Enne luua programm, mida soovite salvestada töövihiku näiteks nime all "Otchet1.xls".

Vajuta "Loo aruandetabelist" tuleb vajutada ainult 1 kord pärast sisenemist kaudu teavet. Sa peaksid teadma, ja muud eeskirjad. Eelkõige nuppu "Lisa rida" tuleb vajutada iga kord pärast sisenemist tabeli väärtused iga tegevuse jaoks. Pärast sisenemist kõik nõutavad andmed vajutada nuppu "Finish" ja seejärel minna "Excel" aknas.

Nüüd, kui sa tead, kuidas probleemi lahendada Excel makrosid. Võime kasutada VBA Excel (vt näiteprogrammid. Ülal) ja te peate töötama keskkonnas populaarsemaid hetkel, tekstiredaktor "Word". Eelkõige salvestades, nagu on näidatud käesoleva artikli alguses, või kirjutades koodi luua nupud, mille kaudu paljud tehingud teksti saab teha vajutades klahve tööl või "View" ikoon ja "Makrod" alt.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 et.birmiss.com. Theme powered by WordPress.