DatoriProgrammatūra

VBA Excel: izlases programmas. Makro Excel

Tikai daži cilvēki zina, ka pirmā versija populāro Microsoft Excel produkts parādījās 1985. gadā. Kopš tā laika ir notikušas vairākas izmaiņas un pieprasījumu miljoniem lietotāju visā pasaulē. Tomēr daudzi strādā tikai ar mazliet iespējām šo izklājlapu un pat nezinu, kā viņi varētu padarīt dzīvi vieglāku spēju uz Excel programmu.

Kas ir VBA

Programmēšana Excel tiek darīts ar Visual Basic for Application programmēšanas valoda, kas sākotnēji tika uzcelta slavenāko izklājlapu no Microsoft.

Lai viņa nopelniem eksperti atribūts relatīvo vieglumu attīstību. Kā rāda prakse, VBA var apgūt pamatus, pat lietotājiem, kuriem nav profesionālās programmēšanas iemaņas. Par VBA funkcijas ietver skriptu izpildi birojā lietojumu vidē.

Programmas trūkums ir problēmas, kas saistītas ar saderību dažādās versijās. Tos izraisa fakts, ka VBA koda programmas attiecas uz funkcionalitāti, kas ir klāt jaunajā versijā produktu, bet ne ar veco. Ir arī liels trūkums un pārāk liela atklātība kodu, lai mainītu sejas svešinieks. Tomēr Microsoft Office, un IBM Lotus Symphony ļauj lietotājiem piemērot šifrēšanas ieejas kodu un paroļu iestatījumus, lai to aplūkotu.

Objekti, kolekcijas, rekvizīti un metodes

Tas ir ar šiem jēdzieniem, jums ir nepieciešams saprast, tiem, kas dodas strādāt uz VBA vidē. Pirmkārt, jums ir saprast, ko objekts ir. Excel, šajā darbojas kā lapas, grāmatas, un šūnu diapazonu. Šie objekti ir īpaša hierarhija, proti, paklausīt viens otru.

Galvenais no tiem ir pieteikums, atbilstošo Excel pati programma. Sekoja Darbgrāmatas, darba lapas, un diapazons. Piemēram, lai atsauktos uz šūnu A1 konkrētā lapā jānorāda ceļu, ņemot vērā hierarhiju.

Attiecībā uz jēdzienu "kolekciju", šīs grupas objektu un tā paša klases, kurā ieraksts tiek dota ChartObjects. Tās elementi ir arī objekti.

Nākamā lieta - īpašības. Tie ir nepieciešami iezīme jebkuru objektu. Piemēram, attiecībā uz Range - ir vērtība vai Formula.

Metodes - ir komanda, lai pierādītu, ka jūs vēlaties veikt. Rakstot kodu VBA tos jāatdala no objekta punkta. Piemēram, kā tiks parādīts vēlāk, ļoti bieži plānojot ar "Excel" izmantošanas kivetes komandu (1,1) .Select. Tas nozīmē, ka tas ir nepieciešams, lai izvēlētos šūnu ar koordinātēm (1,1), t.i. A1.

Tomēr tas bieži izmanto Selection.ClearContents. Tās īstenošana ir klīringa saturu atlasītajā šūnā.

Kā sākt

Pirmkārt, jūs vēlaties, lai izveidotu failu un saglabājiet to, piešķirt nosaukumu un atlasiet «grāmatu Excel tipa makro iespējots."

Tad dodieties uz VB pieteikumu, kas ir pietiekami, lai izmantotu kombināciju "Alt» taustiņu un «F11». Nākamais:

  • izvēlņu joslā loga augšdaļā noklikšķiniet uz ikonas blakus Excel ikonas;
  • Mudule izvēlēts komandu;
  • glabāt uzklikšķinot uz ikonas ar disketi;
  • rakstīt, teiksim, koda kontūru.

Tas izskatās šādi:

Sub programma ()

"Mūsu kods

end sub

Lūdzu, ņemiet vērā, ka līnija "" Mūsu kodu "tiks izcelts citā krāsā (zaļš). Iemesls šai apostrofs, piegādātas sākumā virknes, kas norāda, ka tas, kas šādi ir komentārs.

Tagad jūs varat rakstīt jebkuru kodu un izveidot sev jaunu rīku VBA Excel (skat paraugu programmas utt.). Protams, tiem, kuri ir pazīstami ar pamati Visual Basic, tas būs daudz vieglāk. Tomēr, pat tiem, kam nav, ja jūs vēlaties, lai varētu saņemt ērti diezgan ātri.

Makro Excel

Aiz šī nosaukuma slēpjas programmas uzrakstīts Visual Basic for Application valodā. Tādējādi programmēšana uz Excel - ir izveidot makro ar vēlamo kodu. Izmantojot šo iespēju, Microsoft izklājlapu sevis attīstās, piemērojoties konkrētā lietotāja prasībām. Strādājot ar to, kā veidot moduļus rakstīšanai makro, ir iespējams turpināt ar konkrētiem piemēriem VBA Excel programmā. Vislabāk ir sākt ar visvienkāršākajām kodiem.

Example 1

Uzdevums: Uzrakstiet programmu, kas tiks kopēti vērtību satura vienu šūnu, un pēc tam rakstīt uz citu.

Lai to izdarītu:

  • atveriet cilni "Skats";
  • pārvietot ikonu "makro";
  • krata uz "Record Macro";
  • aizpildiet atvērto formu.

Vienkāršības labad, jo "makro nosaukumu" pamest "Makros1", un, "īsinājumtaustiņu" tiek ievietots, piemēram, hh (tas nozīmē, ka jūs varat palaist piemērs programma būs «Ctrl + H» Blitz komanda). Nospiediet Enter.

Tagad, kad esat sāka ierakstīt makro, veido saturu šūnas uz otru. Atgriezties uz sākotnējo ikonas. Uzklikšķiniet uz "Record makro". Šī darbība iezīmē pabeigšanu applets.

Nākamais:

  • atkal pāriet uz virkni "Makro";
  • ir izvēlēts sarakstā "Macro 1";
  • noklikšķiniet uz "Run" (tie paši rīcības sākas Uzsākti īsceļu taustiņi «Ctrl + HH»).

Tā rezultātā prasība, kas ir veikta ieraksta makro laikā.

Tas ir jēga, lai redzētu, kā kods izskatās. Lai to izdarītu, dodieties atpakaļ uz virkni "Makro" un noklikšķiniet uz "Rediģēt" vai "Enter". Tā rezultātā, viņi atrod sevi VBA vidē. Patiesībā, kods pats atrodas starp līnijām makro Makros1 Sub () un End Sub.

Ja kopēšana tiek veikta, piemēram, no šūnu A1 šūnā C1, kas ir viens no koda rindiņas izskatās Range ( "C1"). Izvēlieties. Tulkojumā tas izskatās "Range (" C1 "). Izvēlieties", citiem vārdiem sakot, padara pāreju uz VBA Excel, jo šūnu C1.

Aktīvs koda daļu papildina ActiveSheet.Paste komandu. Tas nozīmē ieraksts saturu izvēlēto šūnu (šajā gadījumā, A1) izvēlētajā šūnu C1.

2. PIEMĒRS

VBA cikli palīdzēt veidot dažādus makro Excel.

VBA cikli palīdzēt izveidot dažādus makro. Pieņemt, ka tur ir funkcija y = x + x 3 + 3x 2 - cos (x). Jūs vēlaties, lai izveidotu makro tās grafiku. To var izdarīt, tikai izmantojot VBA ciklus.

Par sākotnējo un beigu vērtību argumentu funkciju veikt x1 = 0 un x2 = 10. Turklāt, ir nepieciešams ieviest konstantu - vērtība solim maina argumentu un sākotnējo vērtību letes.

Visi VBA Excel makro piemēri ir izveidoti, izmantojot to pašu procedūru, kā noteikts iepriekš. Šajā konkrētajā gadījumā, kods izskatās:

Sub programma ()

x1 = 1

x2 = 10

mahorka = 0.1

i = 1

Vai gan x1

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

Šūnas (i, 1) .Value = x1 (x1 vērtība rakstīts atmiņā ar koordinātēm (I, 1))

Šūnas (i, 2) .Value = y (y vērtība ir rakstīts šūnas ar koordinātēm (i, 2))

i = i + 1 (derīga skaits);

x1 = x1 + mahorka (arguments tiek mainīts uz soļa garums);

cilpa

End Sub.

Tā rezultātā šī palaist makro "Excel" iegūst divas kolonnas, no kuriem pirmais ir ierakstīti vērtības X, un otrais - uz y.

Tad grafiks varētu balstīties uz tām, tad standarts "Excel".

3. PIEMĒRS

Lai īstenotu ciklus VBA Excel 2010, kā arī citas versijas, kopā ar jau samazinātā darīt, kamēr dizains izmantots.

Apsveriet programmu, kas rada kolonnu. Katrā šūnā tiks ierakstīts kvadrāti atbilstošas līnijas numuru. Lai izmantotu dizaina ļaus ierakstīt ļoti īsi, neizmantojot letes.

Pirmkārt, ir nepieciešams izveidot makro, kā aprakstīts iepriekš. Tālāk, rakstīt kodu pats. Mēs uzskatām, ka mēs esam ieinteresēti vērtībām par 10 šūnām. Kods ir šāds.

I = 1 līdz 10 Next

Komanda tiek pārnests uz "cilvēku" valodā, kā "atkārtots no 1 līdz 10 ar soli viens."

Ja uzdevums saņemt kolonnu ar laukumiem, piemēram, visi nepāra veseli skaitļi starp 1 un 11, mēs rakstām:

Par i = 1 līdz 10 1 soli Next.

Lūk, soli - soli. Šajā gadījumā tas ir vienāds ar divi. Pēc noklusējuma trūkums vārda cilpa nozīmē to, ka ar vienu soli.

Rezultāti ir jāuzglabā šūnu skaita (i, 1). Tad katru reizi, kad sākat ciklu ar vērtības pieaugumu par i solis automātiski augt un līniju skaits. Tādējādi būs koda optimizāciju.

Kopumā kods varētu izskatīties šādi:

Sub programma ()

Par i = 1 līdz 10 Step 1 (var rakstīt tikai i = 1 līdz 10)

Šūnas (i, 1) .Value = i ^ 2 (t.i., kvadrātveida vērtība tiek rakstīts kivetē (i, 1) i)

Nākamais (savā ziņā spēlē lomu letei līdzekļu un citu cikla sākumā)

End Sub.

Ja izdarīts pareizi, tostarp reģistrācijas un darbības makro (skat. Iepriekš minētos norādījumus), tad to sauc katru reizi, kad, ņemot vērā lielumu, tiks iegūts kolonnu (šajā gadījumā, kas sastāv no 10 šūnām).

4. PIEMĒRS

Ikdienā bieži vien ir nepieciešams, lai šo vai šo lēmumu, atkarībā no dažiem nosacījumiem. Nevar iztikt bez tiem VBA Excel. Raidījumi ir, piemēram, kur turpmāka kurss algoritma tiek izvēlēti nevis sākotnēji iepriekš, visbiežāk izmanto dizainu, ja ... Tad (sarežģītos gadījumos) Ja ... Tad ... END Ja.

Aplūkosim konkrēto lietu. Pieņemsim, ka jūs vēlaties, lai izveidotu makro "Excel", lai šūnas ar koordinātēm (1,1) ir ierakstīts:

1, ja arguments ir pozitīvs;

0, ja arguments ir nulle;

1, ja arguments ir negatīvs.

Šādas makro "Excel" izveide sākas standarta veidā, izmantojot "karsto" atslēgas Alt un F11. Tālāk rakstīts šādu kodu:

Sub programma ()

x = šūnu skaits (1, 1) .Value (Šī komanda piešķir vērtību x koordinātēm šūnas saturu (1, 1))

Ja x> 0, tad šūnu skaits (1, 1) .Value = 1

Ja x = 0, tad šūnu skaits (1, 1) .Value = 0

Ja x <0, tad šūnu skaits (1, 1) .Value = -1

End Sub.

Tā joprojām ir, lai palaistu makro un saņemt "Excel" vēlamo vērtību argumentu.

VBA funkcijas

Kā Jums var būt ievērojuši, slavenākajā programmas Microsoft izklājlapu nav pārāk grūti. It īpaši, ja jūs uzzinātu, kā izmantot VBA funkcijas. Kopumā šis programmēšanas valoda, kas izveidota speciāli rakstīšanai lietojumprogrammas "Excel" un Word, apmēram 160 funkcijas. Tos var iedalīt vairākās lielās grupās. Tie ir:

  • Matemātiskās funkcijas. Piemērojot tos argumentu kosinuss vērtību iegūst, naturāllogaritmēšanas, un tā visu daļu.
  • Finanšu funkcijas. Sakarā ar to pieejamību un izmantošanu programmu Excel, jūs varat saņemt efektīvus rīkus grāmatvedības un finanšu norēķiniem.
  • Array apstrādes funkcijas. Tie ietver masīvs, IsArray; LBound; UBound.
  • VBA Excel funkcionēt līniju. Tas ir diezgan liela grupa. Tas ietver, piemēram, Space funkciju, lai izveidotu virkni ar vairākiem nepilnības ir vienāds ar skaitlim argumentu vai ASC pārvešanai simboliem ANSI kodu. Visi no tiem ir plaši lietots un ļauj jums strādāt ar stīgas ar "Excel", lai radītu pieteikumus daudz vieglāk strādāt ar šīm tabulām.
  • Datu tipa konversijas funkcijas. Piemēram, CVar atgriežas Expression argumentu, pārveidojot to variants datu tipu.
  • Datums funkcijas. Tie ievērojami paplašināt standarta funkcijas "Excel". Tātad, WeekdayName funkcija atgriež nosaukumu (pilnu vai daļēju) par nedēļas dienas pēc tā numura. Vēl vairāk noderīgs ir taimeris. Viņš dod sekunžu skaitu, kas pagājuši kopš pusnakts uz konkrētu brīdi dienas.
  • Funkciju, lai pārvērstu ciparu argumentu dažādās numuru sistēmu. Piemēram, oktobris izvada uz oktālo pārstāvniecību skaitu.
  • formatēšanas funkcijas. Svarīgākais no tiem ir formāts. Tā atgriež Variant ar izteiksmi formatēts saskaņā ar instrukcijām, kas dotas aprakstā formātā.
  • un tā tālāk.

No īpašības šīm funkcijām un to piemērošanu pētījums ievērojami paplašināt "Excel".

Example 5

Mēģināsim atrisināt sarežģītākas problēmas. Piemēram:

Dan papīra dokumenta faktiskais līmenis izmaksu uzņēmuma ziņojumā. Nepieciešams:

  • attīstīt savu modelis daļu izklājlapu "Excel";
  • padarīt VBA programmu, kas lūgs izejas datus, lai aizpildītu to, lai veiktu nepieciešamos aprēķinus un aizpildīt veidni atbilstošās šūnas.

Aplūkosim vienu no šiem risinājumiem.

Izveidojot veidni

Visas darbības tiek veiktas uz standarta lapai Excel. Bezmaksas šūnas rezervētas ievadot datus par mēnesi, gadu, virsrakstdrošām patēriņa uzņēmumu, summu izmaksu, to līmenis apgrozījuma. Kā skaitam uzņēmumu (uzņēmējsabiedrību), attiecībā uz kuru ziņojums nav ierakstīts, tad šūnas, lai, balstoties uz vērtībām un profesionālu nosaukumu nav rezervēta iepriekš. Darblapas piešķirts jaunu nosaukumu. Piemēram, "Օ pārskats".

mainīgie

Lai rakstītu programma automātiski aizpildīt veidni, izvēlieties apzīmējumu. Tie tiks izmantoti mainīgajiem:

  • NN- skaits no pašreizējās rindas tabulas;
  • TP un TF - plānotais un faktiskais apgrozījums;
  • SF un SP - faktiskās un plānotās kopējās izmaksas;
  • IP un IF - plānoto un faktisko izmaksu līmenim.

Mēs apzīmē ar tādiem pašiem burtiem, bet ar "prefiksu» Itog uzkrāšanas kopsummu šajā slejā. Piemēram, ItogTP - Attiecībā uz kolonnas nosaukumu, kā "plānotā apgrozījuma."

Problēmas risinājums, izmantojot VBA programmēšanu

Izmantojot šo pierakstu, mēs iegūt formulu dispersiju. Ja vēlaties veikt aprēķinu% mums ir (F - P) / P * 100, un par summu - (F - P).

Šo aprēķinu rezultāti var būt labākais vienkārši veikt "Excel", izklājlapu attiecīgajās šūnās.

Par rezultātiem un prognozi patiesībā iegūts ar formulām ItogP = ItogP + P un ItogF = ItogF + F

Par novirzes izmantot = (ItogF - ItogP) / ItogP * 100, ja aprēķins tiek veikts procentos, un, ja to kopējā vērtība - (ItogF - ItogP).

Rezultāti atkal reģistrēti attiecīgajās šūnās, tāpēc nav nepieciešams, lai piešķirtu tiem mainīgajiem.

Pirms sākt, lai izveidotu programmu, kuru vēlaties saglabāt darbgrāmatu, piemēram, ar nosaukumu "Otchet1.xls".

Nospiediet "Izveidot ziņošanas tabulu", jānospiež tikai 1 reizi ievadot galvenes informāciju. Jums vajadzētu zināt, un citus noteikumus. Jo īpaši, poga "Pievienot līnija" ir nospiests katru reizi pēc stāšanās tabulā vērtību katrai darbībai. Pēc ievadīšanas visus datus, kas nepieciešami, lai nospiediet pogu "Finish", un pēc tam pāriet uz "Excel" logā.

Tagad, ka jūs zināt, kā atrisināt problēmu Excel ar makro. Spēja izmantot VBA Excel (skat programmu paraugus. Iepriekš), un jums var būt nepieciešams strādāt vidē populārākais brīdī, teksta redaktoru "Word". Jo īpaši, reģistrējot, kā norādīts sākumā šo rakstu, vai rakstot kodu, lai izveidotu izvēlnes pogas, ar kuru daudzi no darbībām ar tekstu var izdarīt spiežot taustiņus no akcīzes nodokļa vai ar "View" ikonu un "Makro" tab.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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