Kọmputa, Software
VBA tayo: awọn ayẹwo eto. Macros ni tayo
Diẹ ti awon eniyan mo wipe akọkọ ti ikede ti awọn gbajumo Microsoft tayo ọja han ni 1985. Niwon lẹhinna ti o ti koja orisirisi awọn iyipada ati eletan ti milionu ti awọn olumulo kakiri aye. Sibẹsibẹ, ọpọlọpọ awọn iṣẹ nikan pẹlu kekere kan bit agbara ti yi lẹja ki o si ma ko paapaa mọ bi ti won le ṣe aye rọrun fun awọn agbara lati tayo siseto.
Ohun ti o jẹ VBA
Siseto ni tayo wa ni ṣe nipa wiwo Ipilẹ fun elo siseto ede ti a ti akọkọ itumọ ti ni awọn julọ olokiki lẹja lati Microsoft.
To rẹ anfani amoye ikalara awọn ojulumo Ease ti idagbasoke. Bi asa fihan, VBA le Titunto si awọn ni ibere, ani awọn olumulo ti o ko ni ọjọgbọn siseto ogbon. Fun VBA ẹya ara ẹrọ ni akosile ipaniyan ni awọn ọfiisi ohun elo ayika.
Awọn daradara ti awọn eto ni o wa ni isoro ni nkan ṣe pẹlu awọn ibamu ti o yatọ si awọn ẹya. Wọn ti wa ni ṣẹlẹ nipasẹ awọn daju wipe awọn VBA koodu ti awọn eto ntokasi si awọn iṣẹ-ti o jẹ bayi ni titun ti ikede ti awọn ọja, ṣugbọn ko si ni awọn atijọ ọkan. Wa ti tun ńlá kan daradara ati ki o excessively ga openness ti koodu lati yi awọn oju ti a alejo. Sibẹsibẹ, Microsoft Office, ki o si Emu Lotus Symphony gba awọn olumulo lati waye ìsekóòdù titẹsi koodu ati ọrọigbaniwọle eto lati wo o.
Ohun, collections,-ini, ati awọn ọna
O ti wa ni pẹlu awọn agbekale ti o nilo lati ni oye awon ti o ti wa ni lilọ lati sise ni VBA ayika. Akọkọ ti gbogbo, o gbọdọ ye ohun ti awọn ohun ti wa ni. Ni tayo, ni yi igbese bi a dì, a iwe, ati sẹẹli ibiti o. Awọn wọnyi ni ohun ni pataki logalomomoise, i.e. pa kọọkan miiran.
Awọn olori laarin wọn jẹ ohun elo, awọn ti o baamu tayo eto ara. Tẹlé workbooks, worksheets, ati Range. Fun apẹẹrẹ, lati tọkasi lati cell A1 on a pato dì gbọdọ ntoka awọn ọna, mu iroyin sinu awọn logalomomoise.
Nipa awọn Erongba ti "gbigba," yi egbe ti ohun ti kanna kilasi, ninu eyi ti gbigbasilẹ ti ni a fun ChartObjects. Awọn oniwe-eroja ni o wa tun ohun.
Next ohun --ini. Wọn ti wa ni a pataki ẹya-ara ti eyikeyi ohun. Fun apẹẹrẹ, fun awọn Ibiti - ni a Iye tabi agbekalẹ.
Awọn ọna - ni awọn àṣẹ láti fi hàn pé o fẹ lati ṣe. Nigba kikọ koodu ni VBA wọn lati wa ni niya lati awọn ohun ojuami. Fun apẹẹrẹ, bi yoo han nigbamii, gan igba nigbati siseto ni "Excel" lilo ẹyin àṣẹ (1,1) .Select. O tumo si wipe o jẹ pataki lati yan a cell pẹlu ipoidojuko (1,1), i.e. A1.
Sibẹsibẹ, o ti wa ni igba ti lo Selection.ClearContents. Awọn oniwe-imuse ni aferi awọn awọn akoonu ti awọn ti o yan sẹẹli.
Bawo ni lati bẹrẹ
Akọkọ ti gbogbo, ti o fẹ lati ṣẹda awọn faili ki o si fi awọn ti o, fi orukọ kan ki o si yan awọn iru ti «Book tayo Makiro-sise."
Nigbana ni, lọ si VB ohun elo, eyi ti jẹ to lati lo kan apapo ti «alt» bọtini ati ki o «F11». Next:
- ninu awọn akojọ igi ni oke ti awọn window, tẹ lori awọn aami tókàn si awọn tayo icon;
- Mudule ti a ti yan aṣẹ;
- pa tite lori aami pẹlu awọn floppy disk;
- kọ, wipe, a koodu ìla.
O wulẹ bi wọnyi:
Iha eto ()
'Wa koodu
opin iha
Jọwọ se akiyesi pe ila " 'Wa koodu" yoo wa ni afihan ni kan yatọ si awọ (awọ ewe). Awọn idi fun yi apostrophe, fi ni ibẹrẹ ti awọn okun, eyi ti o tọkasi wipe ohun ti wọnyi jẹ a ọrọìwòye.
Bayi o le kọ eyikeyi koodu ati ki o ṣẹda fun ara wọn titun kan ọpa ni VBA Excel (wo awọn ayẹwo awọn eto. Be). Dajudaju, awon ti o wa ni faramọ pẹlu awọn ni ibere ti wiwo Akọbẹrẹ, o yoo jẹ Elo rọrun. Sibẹsibẹ, ani awon ti o ko ba ni, ti o ba ti o ba fẹ lati wa ni anfani lati gba itura oyimbo ni kiakia.
Macros ni tayo
Sile yi orukọ hides eto kọ ni wiwo Ipilẹ fun elo ede. Bayi, awọn siseto to tayo - ni lati ṣẹda kan Makiro si fẹ koodu. Pẹlu yi agbara, Microsoft lẹja ara-ndagba, adapting si awọn ibeere ti kan pato olumulo. Lehin jiya pẹlu bi o lati ṣẹda modulu fun kikọ macros, o jẹ ṣee ṣe lati tẹsiwaju pẹlu nja apeere ti VBA tayo eto. O ti wa ni ti o dara ju lati bẹrẹ pẹlu awọn julọ ipilẹ awọn koodu.
apere 1
-Ṣiṣe: Kọ a eto ti yoo da awọn iye ti awọn awọn akoonu ti ti ọkan cell ati ki o si kọ si miiran.
Lati ṣe eyi:
- ṣii taabu "Wo";
- gbe awọn aami "macros";
- gbọn si "Gba Macro";
- fọwọsi la fọọmu.
Fun ayedero, ni "Macro Name" fi "Makros1" ati ni "abuja bọtini" ti o fi sii, fun apẹẹrẹ, HH (yi tumo si wipe o le ṣiṣe awọn apẹẹrẹ eto yoo jẹ «Konturolu + h» Blitz egbe). Tẹ Tẹ.
Bayi wipe o ti bere gbigbasilẹ awọn Makiro, ṣe soke awọn awọn akoonu ti a alagbeka si miiran. Pada si awọn atilẹba aami. Tẹ lori "Gba Macro". Yi igbese kejila ni Ipari ti applets.
Next:
- lẹẹkansi gbigbe si awọn okun "Macros";
- ti yan ninu awọn akojọ "Macro 1";
- tẹ "Run" (kanna igbese bẹrẹ igbekale abuja bọtini «Konturolu + HH»).
Bi awọn kan abajade, awọn igbese eyi ti a ti ṣe nigba gbigbasilẹ awọn Makiro.
O mu ki ori lati wo bi awọn koodu wulẹ bi. Lati ṣe eyi, lọ pada si awọn okun "Macros" ati ki o si tẹ "Ṣatunkọ" tabi "Tẹ". Bi awọn kan abajade, nwọn ri ara wọn ni VBA ayika. Kosi, awọn koodu ara ti wa ni be laarin ila Makiro Makros1 iha () ati Opin iha.
Ti o ba ti didaakọ ti a ti ṣe, fun apẹẹrẹ, lati kan foonu A1 ni foonu C1, ọkan ninu awọn ila ti koodu yoo wo bi Range ( "C1"). Yan. Ni translation, o wulẹ bi "Ibiti (" C1 "). Yan", ninu awọn ọrọ miiran, mu ki a orilede lati VBA tayo, ni cell C1.
Ohun ti nṣiṣe lọwọ apakan ti awọn koodu to pari ActiveSheet.Paste egbe. O tumo si gbigbasilẹ awọn akoonu ti a ti yan cell (ninu apere yi, A1) ni awọn ti o yan cell C1.
apere 2
VBA waye ran ṣẹda o yatọ si macros ni tayo.
VBA waye ran ṣẹda o yatọ si macros. Ro wipe o wa ni a iṣẹ y = x + x 3 + 3x 2 - nitori (x). Ti o fẹ lati ṣẹda a Makiro fun awọn oniwe-eya aworan. Eleyi le ṣee ṣe nikan nipa lilo VBA waye.
Fun awọn ibẹrẹ ati ik iye ti ariyanjiyan iṣẹ ya x1 = 0 ati x2 = 10. Siwaju si, o jẹ pataki lati se agbekale a ibakan - awọn iye fun igbese ayipada awọn ariyanjiyan ati ohun ni ibẹrẹ iye fun awọn counter.
Gbogbo apeere ti VBA tayo macros ti wa ni da lilo awọn ilana kanna bi ṣeto siwaju loke. Ni yi pato idi eyi, awọn koodu wulẹ bi:
Iha eto ()
x1 = 1
x2 = 10
shag = 0.1
i = 1
Maa Lakoko ti o ti x1
y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - nitori (x1)
Ẹyin (i, 1) .Value = x1 (x1 iye ti kọ ninu iranti pẹlu awọn ipoidojuko (i, 1))
Ẹyin (i, 2) .Value = y (y iye ti kọ ọ ninu cell pẹlu awọn ipoidojuko (i, 2))
i = i + 1 (wulo ka);
x1 = x1 + shag (ariyanjiyan ti wa ni yi pada si awọn igbese iwọn);
Loop
Opin iha.
Bi awọn kan ninu awọn abajade yi run Makiro "tayo" gba meji ọwọn, akọkọ ti awọn ti wa gba silẹ ti awọn iye fun x, ati awọn keji - lati y.
Ki o si seto anfani lati kọ lori wọn, awọn bošewa fun "Tayo".
apere 3
Lati se waye ni VBA Excel 2010, bi daradara bi ni miiran awọn ẹya, pẹlú pẹlu awọn tẹlẹ dinku Do Lakoko ti o ti oniru lo Fun.
Ro a eto ti o ṣẹda a iwe. Ni kọọkan alagbeka o yoo wa ni ti o ti gbasilẹ onigun o baamu ila nọmba. Fun awọn lilo ti awọn oniru yoo gba lati gba o gan ni soki, lai si lilo ti a counter.
First o jẹ pataki lati ṣẹda kan Makiro, bi a ti salaye loke. Next, kọ awọn koodu ara. A gbagbo wipe a wa ni nife ninu awọn iye fun awọn 10 ẹyin. Awọn koodu ti wa ni bi wọnyi.
Fun i = 1 to 10 Next
Awọn àṣẹ ti wa ni ti o ti gbe si "eda eniyan" ede, bi "tun lati 1 si 10 ni increments ti ọkan."
Ti o ba ti awọn iṣẹ-ṣiṣe lati gba awọn iwe pẹlu onigun, fun apẹẹrẹ, gbogbo odd odidi laarin 1 ati 11, ti a kọ:
Fun i = 1 to 10 igbese 1 Next.
Nibi, Akobaratan - igbese. Ni idi eyi, o jẹ dogba si meji. Nipa aiyipada, awọn isansa ti ọrọ ni lupu tumo si wipe a nikan igbese.
Awọn esi ti o nilo lati wa ni fipamọ ni cell nọmba (i, 1). Ki o si ni gbogbo igba ti o ba bẹrẹ awọn ọmọ pẹlu ohun ilosoke ninu iye ti i Akobaratan yoo laifọwọyi dagba ki o si laini nọmba. Bayi, nibẹ ni yio je koodu ti o dara ju.
Ni apapọ, awọn koodu ti yoo wo bi:
Iha eto ()
Fun i = 1 Lati 10 Igbese 1 (le ti wa ni kọ nikan fun i = 1 Lati 10)
Ẹyin (i, 1) .Value = i ^ 2 (i.e. square iye ti kọ sinu cell (i, 1) i)
Next (ni a ori yoo awọn ipa ti awọn counter ọna ati awọn miiran ọmọ ibere)
Opin iha.
Ti o ba ti ṣe ti tọ, pẹlu gbigbasilẹ ati yen macros (wo. Awọn ilana loke), ki o si ni a npe ni kọọkan akoko a fi fun iwọn yoo wa ni gba iwe (ninu apere yi wa ninu ti awọn 10 ẹyin).
apere 4
Ni igbesi aye, gan igba ti o jẹ pataki lati ya yi tabi ti ipinnu ti o da lori diẹ ninu awọn ipo. Ko le se lai wọn ni VBA tayo. Apeere ti awọn eto ibi ti awọn siwaju papa ti awọn alugoridimu ti yan dipo ti lakoko predetermined, julọ commonly lo oniru ti o ba ti ... Nigbana ni (fun soro igba) Ti o ba ... Nigbana ni ... opin Ti o ba ti.
Ro awọn pato nla. Sawon ti o ba fẹ lati ṣẹda a Makiro fun "tayo" lati awọn cell pẹlu awọn ipoidojuko (1,1) ti a ti gba silẹ:
1 ti o ba ti ariyanjiyan ni rere;
0 ti o ba ti ariyanjiyan ni odo;
1, ti o ba awọn ariyanjiyan ni odi.
Awọn ẹda ti iru a Makiro fun "tayo" bẹrẹ ni a boṣewa ọna, nipasẹ lilo awọn "gbona" bọtini alt ati F11. Siwaju kọ awọn wọnyi koodu:
Iha eto ()
x = ẹyin (1, 1) .Value (Eleyi pàṣẹ ise ni iye ti x ipoidojuko ti awọn sẹẹli awọn akoonu ti (1, 1))
Ti o ba ti x> 0 Nigbana ni ẹyin (1, 1) .Value = 1
Ti o ba ti x = 0 Nigbana ni ẹyin (1, 1) .Value = 0
Ti o ba ti x <0 Nigbana ni ẹyin (1, 1) .Value = -1
Opin iha.
O si maa wa lati ṣiṣe a Makiro ati ki o gba ni "Excel" fẹ iye fun awọn ariyanjiyan.
VBA iṣẹ
Bi o ti le ti woye, ni awọn julọ olokiki eto Microsoft lẹja elo jẹ ko ju soro. Paapa ti o ba ti o ba ko bi lati lo VBA iṣẹ. Ni lapapọ, yi siseto ede da pataki fun kikọ ohun elo ni "tayo" ati awọn Ọrọ, nipa 160 iṣẹ. Won le wa ni pin si orisirisi ti o tobi awọn ẹgbẹ. Wọn ti wa ni:
- Mathematical iṣẹ. To wọn si awọn ariyanjiyan ti awọn cosine iye ti wa ni gba, awọn adayeba logarithm, ati ki gbogbo ara.
- Owo awọn iṣẹ. Nitori won wiwa ati lilo siseto ni tayo, o le gba munadoko irinṣẹ fun iṣiro ati owo ibugbe.
- Orun processing awọn iṣẹ. Awọn wọnyi ni orun, IsArray; LBound; UBound.
- VBA tayo sisẹ fun awọn ila. Eleyi jẹ kan iṣẹtọ tobi ẹgbẹ. O ni, fun apẹẹrẹ, Space iṣẹ lati ṣẹda kan okun pẹlu nọmba kan ti ela dogba si awọn odidi ariyanjiyan tabi ASC gbigbe aami to ANSI koodu. Gbogbo awọn ti wọn wa ni opolopo lo ki o si gba o laaye lati ṣiṣẹ pẹlu awọn gbolohun ọrọ ni "Excel" lati ṣẹda awọn ohun elo Elo rọrun lati ṣiṣẹ pẹlu awọn tabili.
- Data iru iyipada awọn iṣẹ. Fun apẹẹrẹ, CVar pada Ikosile ariyanjiyan, o nyi o si iyatọ data iru.
- Ọjọ iṣẹ. Nwọn si gidigidi faagun awọn boṣewa awọn ẹya ara ẹrọ ti "Tayo". Nítorí náà, WeekdayName iṣẹ pada awọn orukọ (ni kikun tabi apa kan) ti awọn ọjọ ti awọn ọsẹ nipasẹ awọn oniwe-nọmba. Ani diẹ wulo ni awọn Aago. O yoo fun awọn nọmba ti aaya ti o ti ti okan niwon ọgànjọ òru to kan pato akoko ti awọn ọjọ.
- Sisẹ lati se iyipada nomba kan ariyanjiyan ninu awọn ti o yatọ nọmba awọn ọna šiše. Fun apẹẹrẹ, Oct olukawe to octal oniduro ti awọn nọmba.
- akoonu iṣẹ. Awọn pataki ti awọn wọnyi ni awọn kika. O ba pada a iyatọ pẹlu ohun ikosile akoonu ibamu si awọn ilana fun ni apejuwe ti awọn kika.
- ki o si bẹ siwaju.
Awọn iwadi ti awọn ini ti awọn wọnyi awọn iṣẹ ati awọn won ohun elo yoo significantly faagun awọn dopin ti "Tayo".
apere 5
Jẹ ká gbiyanju lati yanju eka sii isoro. Fun apẹẹrẹ:
Dan iwe iwe gangan ipele ti owo ti awọn kekeke iroyin. nbeere:
- agbekale awọn oniwe-Àpẹẹrẹ ìka nipa lẹja "Tayo";
- ṣe a VBA eto ti yoo beere fun aise data lati kun o, lati gbe jade ni pataki isiro ati ki o fọwọsi ni awọn awoṣe ti awọn ti o baamu sẹẹli.
Ro ọkan ninu awọn wọnyi solusan.
Ṣiṣẹda a awoṣe
Gbogbo awọn sise ti wa ni ošišẹ lori kan boṣewa dì ni tayo. Free ẹyin ni ipamọ fun titẹ data lori osu, odun, akọle-olumulo ilé, iye ti awọn owo, wọn ipele ti yipada. Bi awọn nọmba ti awọn ile (ilé iṣẹ), ni ọwọ ti awọn ti awọn iroyin ti wa ni ko gba silẹ, awọn ẹyin lati ṣe lori ilana ti iye ati awọn ọjọgbọn orukọ ti a ko ti wa ni ipamọ ni ilosiwaju. Iwe sọtọ si titun kan orukọ. Fun apẹẹrẹ, "Օ Iroyin".
oniyipada
Lati kọ awọn eto laifọwọyi fọwọsi ni awọn awoṣe, yan awọn amiakosile. Won yoo ṣee lo fun awọn oniyipada:
- NN- nọmba ti isiyi kana ti awọn tabili;
- TP ati TF - ngbero ati gangan yipada;
- SF ati SP - gangan ati ki o ngbero lapapọ owo;
- IP ati ba - ngbero ati gangan owo ipele.
A yan nipa kanna awọn lẹta, ṣugbọn pẹlu kan "akọṣaaju» Itog ikojọpọ lapapọ fun awọn ti o iwe. Fun apẹẹrẹ, ItogTP - Pẹlu iyi si awọn iwe ẹtọ ni, bi "awọn ngbero yipada."
Ojutu ti awọn isoro lilo VBA siseto
Lilo yi amiakosile, a gba awọn agbekalẹ fun awọn awa eniyan. Ti o ba fẹ lati gbe jade ni isiro ni% a ni (F - P) / P * 100, ati ni iye ti - (F - P).
Awọn esi ti awọn wọnyi isiro le jẹ ti o dara ju o kan lati ṣe awọn "Tayo" lẹja ni o yẹ ẹyin.
Fun awọn abajade ati ki o piroginosis ni o daju gba nipa fomula ItogP = ItogP + P ati ItogF = ItogF + F.
Fun iyapa lo = (ItogF - ItogP) / ItogP * 100 ti o ba ti isiro ni ti gbe jade bi ogorun, ati awọn ti o ba ti lapapọ iye - (ItogF - ItogP).
Awọn esi lekan si gba silẹ ni o yẹ ẹyin, ki nibẹ ni ko si ye lati fi wọn si oniyipada.
Ṣaaju ki o to bere lati ṣẹda kan eto ti o fẹ lati fi awọn Workbook, fun apẹẹrẹ, labẹ awọn orukọ "Otchet1.xls".
Tẹ "Ṣẹda a iroyin tabili," o gbọdọ tẹ bọtini nikan 1 akoko lẹhin titẹ awọn akọsori alaye. O yẹ ki o mọ ati awọn miiran ofin. Ni pato, awọn bọtini "Fi a ila" gbọdọ wa ni e kọọkan akoko lẹhin titẹ sinu tabili ti iye fun kọọkan-ṣiṣe. Lẹhin ti titẹ gbogbo awọn data ti a beere lati tẹ awọn bọtini "pari", ati ki o si yipada si "tayo" ni window.
Bayi o mọ bi a ṣe le yanju awọn iṣẹ-ṣiṣe fun Excel lilo awọn macros. Agbara lati lo vba excel (awọn apeere ti awọn eto wo loke) le nilo lati ṣiṣẹ ni ayika ti olootu ti o gbajumo julọ "Ọrọ". Ni pato, o le kọ, bi o ṣe han ni ibẹrẹ ti akọsilẹ, tabi nipasẹ kikọ kikọ koodu ṣẹda awọn bọtini akojọ, ọpẹ si eyi ti awọn iṣẹ pupọ lori ọrọ naa le ṣee ṣe nipasẹ titẹ awọn bọtini tabi nipasẹ taabu "View" ati aami "Awọn Macros".
Similar articles
Trending Now