Computer, Software
VBA Excel: sample sa mga programa. Macros sa paglabaw pinaagi
Pipila lang ang mga tawo nasayud nga ang unang bersyon sa popular nga produkto Microsoft paglabaw pinaagi nagpakita sa 1985. Sukad niadto kini miagi sa pipila ka mga kausaban ug panginahanglan sa minilyon nga mga tiggamit sa tibuok kalibutan. Apan, daghang mga buhat sa lamang sa usa ka gamay nga kapabilidad niini nga spreadsheet ug wala gani masayud kon unsaon nila sa paghimo sa kinabuhi nga mas sayon alang sa abilidad sa paglabaw pinaagi programming.
Unsa ang VBA
Programming sa paglabaw pinaagi gihimo pinaagi sa Visual Basic alang sa Paggamit programming pinulongan nga orihinal nga gitukod sa mga labing inila nga spreadsheet gikan sa Microsoft.
Sa iyang merito eksperto nagtuo nga ang mga paryente kasayon sa kalamboan. Ingon sa praktis shows, VBA mahimong master sa sukaranan, bisan tiggamit nga walay propesyonal nga kahanas programming. Kay VBA bahin naglakip sa script pagpatay sa buhatan sa application palibot.
Ang Disbentaha sa programa mao ang mga problema nga nalangkit sa pagkaangay sa mga lain-laing mga bersiyon. Sila ang hinungdan sa sa kamatuoran nga ang VBA code sa programa nagtumong sa kagamitan, katuyoan nga mao ang karon sa bag-ong bersyon sa mga produkto, apan dili sa daan nga usa ka. Adunay usab usa ka dako nga Disbentaha ug hilabihan ka taas nga pagkabukas sa code sa pag-usab sa nawong sa usa ka dumuloong. Apan, nagtugot Microsoft Office, ug IBM Lotus Symphony tiggamit sa paggamit sa encryption entry code ug password setting sa pagtan-aw niini.
Mga butang, nga koleksyon, kabtangan, ug mga pamaagi
Kini mao ang uban niini nga mga konsepto nga imong kinahanglan nga makasabut sa mga tawo nga moadto sa pagtrabaho sa VBA palibot. Una sa tanan, kamo kinahanglan gayud nga makasabut kon unsa ang butang mao ang. Sa paglabaw pinaagi, sa niini nga buhat sama sa usa ka habol, sa usa ka basahon, ug cell range. Kini nga mga butang adunay espesyal nga herarkiya, pananglitan mosunod sa matag usa.
Chief sa taliwala kanila mao ang Paggamit, ang katugbang nga Excel nga programa sa iyang kaugalingon. Misunod workbooks, worksheet, ug Range. Pananglitan, sa pagtumong sa cell A1 sa usa ka piho nga Sheet kinahanglan motudlo sa dalan, nga nagakuha sa ngadto sa account sa herarkiya.
Mahitungod sa konsepto sa "collection," kini nga grupo sa mga butang sa sa mao gihapon nga klase, sa diin ang recording gihatag ChartObjects. mga elemento niini nga mga butang usab.
Sunod nga butang - kabtangan. Sila mao ang usa ka gikinahanglan nga bahin sa bisan unsa nga butang. Kay sa panig-ingnan, alang sa Range - mao ang usa ka Value o Pormula.
Pamaagi - mao ang sugo sa pagpakita nga imong gusto sa paghimo sa. Sa diha nga ang pagsulat code sa VBA kanila nga mibulag gikan sa butang nga punto. Kay sa panig-ingnan, ingon nga gipakita sa ulahi, kaayo nga sa kanunay sa diha nga programa sa "paglabaw pinaagi" sa paggamit Selula sugo (1,1) .Pagpili. Kini nagpasabot nga kini mao ang gikinahanglan nga sa pagpili sa usa ka cell uban sa coordinates (1,1), pananglitan A1.
Apan, sa kasagaran kini gigamit Selection.ClearContents. pagpatuman niini clearing sa mga sulod sa pinili nga cell.
Sa unsa nga paagi sa pagsugod sa
Una sa tanan, gusto sa paghimo sa sa mga file ug sa pagluwas niini, assign sa usa ka ngalan ug sa pagpili sa matang sa «Basahon paglabaw pinaagi macro-nakahimo."
Unya, adto sa VB aplikasyon, nga mao ang igo sa paggamit sa usa ka kombinasyon sa «Alt» yawe ug «F11». Next:
- sa menu bar sa ibabaw sa bintana, i-klik sa icon sunod sa icon Excel;
- Mudule pinili nga sugo;
- sa pagbantay sa sa click sa sa icon uban sa floppy disk;
- pagsulat, nanag-ingon, sa usa ka code outline.
Kini motan-aw sama sa mosunod:
Sub programa ()
'Ang atong code
katapusan Sub
Palihug timan-i nga ang linya " 'Ang atong code" nga gipasiugda sa usa ka lain-laing mga kolor (nga lunhaw). Ang rason alang sa apostrope niini, gitugyan sa sinugdanan sa pisi, nga nagpakita nga ang mosunod mao ang sa usa ka comment.
Karon nga imong mahimo sa pagsulat sa bisan unsa nga code ug sa paghimo sa alang sa ilang kaugalingon sa usa ka bag-o nga himan sa VBA paglabaw pinaagi (tan-awa ang sampol nga mga programa. Ug uban pa). Siyempre, ang mga tawo nga pamilyar sa mga sukaranan sa Visual Basic, kini mahimong mas sayon. Apan, bisan pa sa mga tawo nga wala, kon kamo gusto nga makahimo sa pagkuha sa komportable na sa madali.
Macros sa paglabaw pinaagi
Sa luyo niini nga ngalan nagtago sa mga programa nga gisulat sa Visual Basic alang sa pinulongan Application. Busa, ang programa sa paglabaw pinaagi - mao ang paghimo sa usa ka macro ngadto sa gitinguha nga code. Uban sa kapabilidad niini, Microsoft spreadsheet-sa-kaugalingon og, pagpasibo sa mga kinahanglanon sa usa ka partikular nga user. Ug sa gihimo sa unsa nga paagi sa paghimo sa modules sa pagsulat macros, kini mao ang posible nga sa mopadayon uban sa konkreto nga mga ehemplo sa VBA Excel programa. Kini mao ang labing maayo sa pagsugod sa labing nag-unang mga code.
PANIG-INGNAN 1
Task: Isulat ang usa ka programa nga kopya sa bili sa mga sulod sa usa ka cell ug dayon isulat sa usa.
Sa pagbuhat niini:
- abli sa tab nga "View";
- paglihok sa mga icon "macros";
- uyog sa "Record Macro";
- pun-on giablihan porma.
Kay kayano, sa "Macro Ngalan" mobiya "Makros1" ug sa "laktod nga paagi yawi" ang gisal-ut, alang sa panig-ingnan, HH (kini nagpasabot nga kamo makahimo sa pagdagan sa panig-ingnan nga programa mahimong «Ctrl + h» blitz team). Press Pagsulod.
Karon nga nagsugod pagrekord sa macro, sa paghimo sa mga sulod sa usa ka cell ngadto sa lain. Mobalik ngadto sa orihinal nga imahen. I-klik ang "Record Macro". Kini nga aksyon nagtimaan sa pagkompleto sa applets.
Next:
- pag-usab sa pagbalhin sa sa pisi "Macros";
- ang pinili nga sa listahan "Macro 1";
- click "Run" (sa mao usab nga aksyon magsugod Gilusad laktod nga paagi yawe «Ctrl + HH»).
Ingon sa usa ka resulta, ang mga aksyon nga gihimo sa panahon sa pagrekord sa macro.
Kini makahimo sa pagbati sa pagtan-aw kon sa unsang paagi nga ang code motan-aw sama sa. Sa pagbuhat niini, mobalik sa sa pisi "Macros" ug i-klik "Edit" o "Sumulod kamo". Ingon sa usa ka resulta, sa pagpangita sa ilang mga kaugalingon diha sa VBA palibot. Sa pagkatinuod, ang code sa iyang kaugalingon nahimutang sa taliwala sa mga linya macro Makros1 Sub () ug End Sub.
Kon pagkopya nga gihimo, alang sa panig-ingnan, gikan sa usa ka cell A1 sa cell C1, usa sa mga linya sa code motan-aw sama sa Range ( "C1"). Pagpili. Sa paghubad, kini tan-awon sama sa "Range (" C1 "). Pagpili", sa laing mga pulong, naghimo sa usa ka transisyon ngadto sa VBA paglabaw pinaagi, sa cell C1.
Usa ka aktibo nga bahin sa code mokompleto ActiveSheet.Paste team. Kini nagpasabot sa pagrekord sulod pinili nga cell (sa niini nga kaso, A1) sa pinili nga cell C1.
PANIG-INGNAN 2
VBA siklo sa pagtabang sa paghimo sa lain-laing macros sa paglabaw pinaagi.
VBA siklo sa pagtabang sa paghimo og lain-laing mga macros. Maghunahuna nga adunay usa ka function y = x + x 3 + 3x 2 - cos (x). Ikaw gusto sa paghimo sa usa ka macro alang sa iyang graphics. Kini mahimo lamang pinaagi sa paggamit sa VBA siklo.
Kay ang mga inisyal nga ug kataposang bili sa argumento gimbuhaton sa pagkuha sa x1 = 0 ug x2 = 10. Dugang pa, kini mao ang gikinahanglan nga sa pagpaila sa usa ka kanunay nga - sa bili alang sa lakang usab sa argumento ug sa usa ka inisyal nga bili alang sa counter.
Ang tanan nga mga ehemplo sa VBA paglabaw pinaagi macros gilalang sa paggamit sa sama nga pamaagi ingon nga gibutang sa ibabaw. Sa niini nga partikular nga kaso, ang code tan-awon sama sa:
Sub programm ()
x1 = 1
x2 = 10
shag = 0.1
i = 1
Ayaw Samtang x1
y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - Cos (x1)
Selula (i, 1) .Value = x1 (x1 bili nga gisulat diha sa handumanan sa mga coordinates (i, 1))
Selula (i, 2) .Value = y (y bili sa nahasulat sa cell uban sa mga coordinates (i, 2))
i = i + 1 (balido ihap);
x1 = x1 + shag (argumento ang nausab sa gidak-on nga lakang);
sa loop
Katapusan Sub.
Ingon sa usa ka resulta sa niini nga run macro "paglabaw pinaagi" makabaton duha ka haligi, ang una sa nga natala sa mga mithi alang sa x, ug ang ikaduha - sa y.
Unya eskedyul makahimo sa pagtukod sa ibabaw nila, ang sumbanan alang sa "paglabaw pinaagi".
PANIG-INGNAN 3
Sa pagpatuman sa siklo sa VBA paglabaw pinaagi 2010, ingon man usab sa ubang mga bersiyon, uban sa mga na pagkunhod ba Samtang disenyo nga gigamit Kay.
Tagda ang usa ka programa nga nagmugna sa usa ka kolum. Sa matag cell kini natala plasa katugbang nga linya nga gidaghanon. Alang sa paggamit sa mga disenyo motugot sa pagrekord sa kini kaayo sa mubo, nga walay sa paggamit sa usa ka counter.
Una kini mao ang gikinahanglan nga sa paghimo sa usa ka macro, sama sa gihulagway sa ibabaw. Sunod, isulat ang code sa iyang kaugalingon. Kita nagtuo nga kita interesado sa mga mithi alang sa 10 ka mga selula. code mao ang sama sa mosunod.
Kay ako = 1 ngadto sa 10 Sunod
Ang sugo mao ang gibalhin ngadto sa "sa tawo" nga pinulongan, sama sa "gisubli gikan sa 1 ngadto sa 10 sa increments sa usa."
Kon ang buluhaton sa pagdawat sa kolum uban sa mga plasa, alang sa panig-ingnan, sa tanan nga mga katingad-integers tali sa 1 ug 11, isulat kita:
Kay ako = 1 ngadto sa 10 lakang 1 Sunod.
Dinhi, pakusgon - lakang. Sa kini nga kaso, kini mao ang katumbas sa duha ka. Pinaagi sa remate, ang pagkawala sa mga pulong sa laang nagpasabot nga ang usa ka lakang.
Ang mga resulta kinahanglan nga gitipigan sa cell gidaghanon (i, 1). Unya sa matag higayon nga kamo magsugod sa pagbalik-balik sa usa ka usbaw sa bili sa akong pakusgon awtomatikong motubo ug linya nga gidaghanon. Busa, adunay code pagkamalaumon.
Sa kinatibuk-an, ang code nga tan-awon sama sa:
Sub programa ()
Kay ako = 1 Sa 10 Lakang 1 (mahimong gisulat lamang alang ko = 1 Sa 10)
Selula (i, 1) .Value = i ^ 2 (pananglitan square bili nahisulat ngadto sa cell (i, 1) i)
Sunod (sa usa ka diwa pasundayag sa papel sa mga counter paagi ug ang lain nga pagbalik-balik pagsugod)
Katapusan Sub.
Kon gibuhat husto, lakip na ang recording ug running macros (tan-awa sa. Ang mga instruksyon sa ibabaw), nan kini mao ang gitawag nga sa matag higayon nga usa ka gihatag nga gidak-on nga nakuha kolum (sa niini nga kaso nga naglangkob sa 10 mga selula).
PANIG-INGNAN 4
Sa matag adlaw nga kinabuhi, kaayo nga sa kasagaran kini mao ang gikinahanglan sa pagkuha sa niini o niana nga desisyon depende sa pipila ka mga kondisyon. dili sa pagbuhat nga walay kanila sa VBA paglabaw pinaagi. Mga panig-ingnan sa mga programa diin ang dugang pa nga kurso sa mga algorithm ang pinili nga ilis sa sinugdanan gitino nang daan, labing sagad nga gigamit sa plano sa kon ... Unya (alang sa lisud nga mga kaso) Kon ... Unya ... KATAPUSAN Kon.
Tagda ang partikular nga kaso. Kon gusto ka nga paghimo sa usa ka macro alang sa "paglabaw pinaagi" sa cell uban sa mga coordinates (1,1) nga natala:
1 kon ang argumento mao ang positibo;
0 kon ang argumento mao ang zero;
1, kon ang argumento mao ang negatibo.
Ang paglalang sa maong usa ka macro alang sa "paglabaw pinaagi" magsugod sa usa ka sumbanan nga paagi, pinaagi sa paggamit sa "init nga" mga yawe Alt ug F11. Dugang pa nga gisulat sa mosunod nga code:
Sub programa ()
x = Selula (1, 1) .Value (sugo Kini assign sa bili sa x coordinates sa mga sulod nga cell (1, 1))
Kon x> 0 Unya Selula (1, 1) .Value = 1
Kon x = 0 Unya Selula (1, 1) .Value = 0
Kon x <0 Unya Selula (1, 1) .Value = -1
Katapusan Sub.
Kini nagpabilin sa pagdagan sa usa ka macro ug sa "paglabaw pinaagi" gitinguha nga bili alang sa argumento.
VBA gimbuhaton
Samtang kamo tingali nakamatikod, sa labing inila nga programa sa Microsoft spreadsheet aplikasyon dili kaayo lisud. Ilabi na kon makakat-on kamo unsaon sa paggamit VBA gimbuhaton. Sa kinatibuk-, kini nga programa nga pinulongan ilabi gibuhat alang sa pagsulat sa mga aplikasyon sa "paglabaw pinaagi" ug ang Pulong, mga 160 gimbuhaton. Sila mahimong bahinon ngadto sa pipila ka mga dagkong grupo. Sila mao ang:
- Sa matematika gimbuhaton. Ang pagpadapat kanila ngadto sa argumento sa bili cosine mao nga nakuha, ang natural nga logarítmo, ug sa ingon niana ang tibuok nga bahin.
- Financial gimbuhaton. Tungod sa ilang anaa ug paggamit programming sa paglabaw pinaagi, nga imong mahimo og epektibo nga mga himan alang sa accounting ug sa pinansyal nga mga pinuy-anan.
- Array pagproseso gimbuhaton. Kini naglakip sa Array, IsArray; LBound; UBound.
- VBA paglabaw pinaagi paglihok alang sa linya. Kini mao ang usa ka minatarong, sa maayohon dako nga grupo. Kini naglakip sa, alang sa panig-ingnan, Space function sa paghimo sa usa ka hilo sa usa ka gidaghanon sa mga kal nga sama sa integer argumento o ASC transfer simbolo sa ANSI code. Ang tanan nga kanila mao ang kaylap nga gigamit ug motugot kanimo sa pagtrabaho uban sa mga kolintas sa "paglabaw pinaagi" sa paghimo aplikasyon mas sayon sa pagtrabaho uban sa niini nga mga lamesa.
- matang Data pagkakabig gimbuhaton. Pananglitan, CVar mobalik argumento Ekspresyon, o kini sa laing matang data.
- Petsa gimbuhaton. Sila sa hilabihan gayud sa pagpalapad sa sumbanan bahin sa "paglabaw pinaagi". Busa, WeekdayName function mobalik sa ngalan (bug-os nga o sa partial) sa adlaw sa semana sa gidaghanon sa iyang mga. Bisan pa nga mapuslanon ang Timer nga Kasinati-. Siya nagahatag sa gidaghanon sa mga segundos nga milabay sukad sa tungang gabii sa usa ka partikular nga gutlo sa adlaw.
- Paglihok sa kinabig sa usa ka numerawo argumento sa lain-laing mga sistema sa gidaghanon. Pananglitan, Oct abot sa octal representasyon sa gidaghanon.
- formatting gimbuhaton. Ang labing importante sa niini nga mga mao ang format. Kini mobalik sa usa ka laing uban sa usa ka ekspresyon ay sumala sa mga instruksyon nga gihatag sa paghulagway sa format.
- ug uban pa.
Ang pagtuon sa mga kabtangan sa niini nga mga gimbuhaton ug ang ilang aplikasyon kamahinungdanon sa pagpalapad sa kasangkaran sa "paglabaw pinaagi".
PANIG-INGNAN 5
ni mosulay sa pagsulbad mas komplikado nga mga problema Himoa. Kay sa panig-ingnan:
Dan papel dokumento sa aktuwal nga ang-ang sa mga gasto sa report negosyo. nagkinahanglan:
- pagpalambo sa iyang mga sumbanan nga bahin pinaagi sa spreadsheet "paglabaw pinaagi";
- sa paghimo sa usa ka VBA programa nga mangayo alang sa hilaw nga data nga pun-on niini, aron sa pagtuman sa gikinahanglan nga kalkulasyon ug pun-on sa mga template sa mga katugbang nga cell.
Tagda ang usa ka sa mosunod nga mga solusyon.
Paghimo sa usa ka template
Ang tanan nga mga buhat nga gihimo sa usa ka sumbanan Sheet sa paglabaw pinaagi. Free mga selula nga gitagana alang sa pagsulod data sa bulan, tuig, mga kompaniya titulo-consumer, ang kantidad sa mga gasto, sa ilang ang-ang sa turnover. Samtang ang gidaghanon sa mga kompanya sa (mga kompanya), sa pagtahud nga ang taho dili natala, ang mga selula sa paghimo sa basehan sa mga mithi ug mga propesyonal nga ngalan dili gitagana daan. Worksheet assign sa usa ka bag-ong ngalan. Pananglitan, "Օ Report".
baryable
Sa pagsulat sa programa awtomatikong pun-on sa template, pagpili sa mga nota. Sila nga gamiton alang sa mga baryable:
- NN- gidaghanon sa mga kasamtangan nga laray sa lamesa;
- TP ug TF - giplano ug aktwal nga turnover;
- SF ug SP - aktuwal ug plano total gasto;
- IP ug KON - giplano ug aktwal nga gasto nga lebel.
nagtumong sa kita sa mao gihapon nga mga sulat, apan uban sa usa ka "prefix» Itog panagtigum, panagtingub total alang sa kolum nga. Pananglitan, ItogTP - Uban sa bahin sa mga kolum nga nag-ulohang, ingon nga "ang giplano turnover."
Solusyon sa mga problema sa paggamit sa VBA programming
Pinaagi sa paggamit sa mga nota sa niini, kita makabaton sa pormula alang sa pakigbingkil. Kon kamo gusto sa pagtuman sa kalkulasyon sa% nga kita (F - P) / P * 100, ug sa kantidad nga - (F - P).
Ang resulta sa niini nga mga kalkulasyon mahimong labing maayo lang sa paghimo sa "paglabaw pinaagi" spreadsheet sa tukma nga mga selula.
Kay ang resulta ug pagtagna sa sakit sa pagkatinuod nakuha sa pormula ItogP = ItogP + P ug ItogF = ItogF + F.
Kay pagtipas sa paggamit = (ItogF - ItogP) / ItogP * 100 kon ang kalkulasyon nga gidala sa gawas sama sa usa ka porsiyento, ug kon ang kinatibuk-ang bili - (ItogF - ItogP).
Ang resulta sa makausa pag-usab nga natala sa tukma nga mga selula, mao nga walay panginahanglan sa assign sila sa baryable.
Sa wala pa nagsugod sa paghimo sa usa ka programa nga imong gusto aron sa pagluwas sa workbook, alang sa panig-ingnan, sa ilalum sa ngalan "Otchet1.xls".
Press "Paghimo sa usa ka pagreport lamesa," kamo kinahanglan gayud nga mopadayon sa lamang sa 1 panahon human sa pagsulod sa mga impormasyon header. Ikaw kinahanglan nga mahibalo ug uban pang mga lagda. Sa partikular, ang button "Add usa ka linya nga" kinahanglan nga napugos sa matag panahon human sa pagsulod ngadto sa lamesa sa mga mithi alang sa matag kalihokan. Human sa pagsulod sa tanan nga mga data nga gikinahanglan sa mopadayon sa button "Humana", ug unya switch sa "paglabaw pinaagi" sa bintana.
Karon nga kamo nahibalo kon sa unsang paagi sa pagsulbad sa mga problema alang sa paglabaw pinaagi sa macros. Ang abilidad sa paggamit sa vba pangulo (tan-awa sa sampol nga mga programa. Labaw) ug tingali nga kamo kinahanglan nga sa pagtrabaho sa palibot sa labing popular nga sa panahon, ang teksto editor "Pulong." Sa partikular, pinaagi sa pagtala, sama sa gipakita sa sinugdan sa niini nga artikulo, o pinaagi sa pagsulat code sa paghimo sa mga buton menu pinaagi diin daghan sa mga operasyon sa teksto mahimo pinaagi sa dinalian sa mga yawe sa katungdanan o pinaagi sa icon "View" ug "Macros" nga tab.
Similar articles
Trending Now