Computers, Software
VBA Excel: qauv kev pab cuam. Macros nyob rau hauv Excel
Ob peb cov neeg paub hais tias tus thawj version ntawm qhov nrov Microsoft Excel khoom nyob rau hauv 1985. Txij thaum ntawd los nws tau undergone ob peb hloov thiab thov ntawm lab ntawm cov neeg nyob ib ncig lub ntiaj teb no. Txawm li cas los, muaj ntau yam kev ua hauj lwm tsuas muaj ib tug me ntsis tuition ntawm no spreadsheet thiab tsis txawm paub yuav ua li cas lawv yuav ua lub neej yooj yim rau cov muaj peev xwm mus Excel programming.
Yuav ua li cas yog VBA
Programming nyob rau hauv Excel yog ua los ntawm Visual Basic rau daim ntawv thov programming lus uas yog Ameslikas ua nyob rau hauv lub npe nrov tshaj spreadsheet los ntawm Microsoft.
Kom nws muaj nqis kws txawj tus cwj pwm cov txheeb ze yooj yim ntawm txoj kev loj hlob. Raws li kev xyaum qhia, VBA yuav lug tau sai dlua tsim, txawm cov neeg uas tsis muaj kev programming kev txawj ntse. Rau VBA nta xws li tsab ntawv tiav nyob rau hauv lub chaw ua hauj lwm daim ntawv thov ib puag ncig.
Lub disadvantage ntawm qhov kev pab cuam yog qhov teeb meem txuam nrog rau compatibility ntawm versions txawv. Lawv tshwm sim los ntawm qhov tseeb hais tias lub VBA code ntawm cov kev pab cuam hais txog cov functionality uas yog tam sim no nyob rau hauv lub tshiab version ntawm cov khoom, tiam sis tsis nyob rau hauv ib tug laus. Muaj kuj yog ib tug loj disadvantage thiab excessively siab qhib siab dawb paug ntawm code hloov lub ntsej muag ntawm ib tug neeg txawv. Txawm li cas los, Microsoft Office, thiab IBM qhaus Symphony tso cai rau cov neeg mus thov encryption nkag code thiab password chaw saib nws.
Khoom, collections, zog, thiab txoj kev
Nws yog nrog cov tswv yim uas koj yuav tsum to taub cov neeg uas yuav mus ua hauj lwm nyob rau hauv lub VBA ib puag ncig. Ua ntej ntawm tag nrho cov, koj yuav tsum to taub dab tsi cov kwv yog. Nyob rau hauv Excel, nyob rau hauv no ua raws li ib daim ntawv, phau ntawv, thiab cell ntau yam. Cov khoom muaj tshwj xeeb hierarchy, i.e. mloog txhua lwm yam.
Chief ntawm lawv yog cov Daim Ntawv Thov, lub sib nug xov Excel pab nws tus kheej. Raws li workbooks, khom nqi, thiab ntau yam. Piv txwv li no, xa rau cell A1 rau ib lub daim ntawv yuav tsum taw tes rau txoj kev, noj mus rau hauv tus account lub hierarchy.
Hais txog lub tswvyim ntawm "sau," no pab pawg neeg ntawm cov khoom ntawm tib chav kawm ntawv, nyob rau hauv uas cov ntaubntawv povthawj siv yog muab ChartObjects. Nws hais yog kuj khoom.
Tom ntej no tshaj plaws - lub zog. Lawv yog ib tug tsim nyog feature ntawm ib yam khoom. Piv txwv li, rau lub ntau yam - yog ib tug nqi los yog Formula.
Txoj kev - yog tus hais kom qhia tau tias koj xav kom ua. Thaum sau ntawv code nyob rau hauv VBA lawv yuav tsum tau sib cais los ntawm tus kwv point. Piv txwv li, raws li yuav tsum tau qhia tom qab, heev feem ntau thaum lub cajmeem nyob rau hauv lub "Excel" siv hlwb hais kom ua (1,1) .Select. Nws txhais tau tias nws yog tsim nyog los xaiv ib tug ntawm tes nrog coordinates (1,1), i.e. A1.
Txawm li cas los, nws yog feem ntau siv Selection.ClearContents. Nws yuav ua raws li yog clearing tus txheem ntawm lub cell.
Yuav ua li cas mus pib
Ua ntej ntawm tag nrho cov, koj xav kom tsim cov ntaub ntawv thiab txuag nws, muab ib lub npe thiab xaiv cov hom ntawm «Phau Ntawv Excel macro-enabled."
Ces, mus rau lub VB daim ntawv thov, uas yog txaus siv ib tug ua ke ntawm «Alt» tseem ceeb thiab «F11». Tom ntej:
- nyob rau hauv lub tshuab raj bar rau saum lub qhov rai, nyem rau ntawm qhov icon tom ntej no mus rau lub Excel icon;
- Mudule xaiv hais kom ua;
- kom txhaj rau cov icon nrog lub muag nthas disk;
- sau ntawv, hais tias, ib code qhia.
Nws zoo raws li nram no:
Sub kev pab cuam ()
'Peb code
End Sub
Thov nco ntsoov tias cov kab " 'Peb code" yuav tseem ceeb nyob rau hauv ib tug txawv xim (ntsuab). Yog vim li cas rau qhov no apostrophe, tauj thaum pib ntawm txoj hlua, uas qhia hais tias dab tsi nram qab no yog ib tug saib.
Tam sim no koj muaj peev xwm sau tej code thiab tsim tau rau lawv tus kheej ib tug tshiab lub cuab tam nyob rau hauv VBA Excel (saib tus qauv kev pab cuam. Etc.). Ntawm cov hoob kawm, cov neeg uas muaj me ntsis txog cov qauv uas Visual Basic, nws yuav muaj ntau yam yooj yim dua. Txawm li cas los, txawm tias cov neeg uas tsis muaj, yog tias koj xav tau kom tau xis heev sai sai.
Macros nyob rau hauv Excel
Tom qab no lub npe hides cov kev pab cuam sau nyob rau hauv Visual Basic rau daim ntawv thov lus. Yog li, lub programming rau Excel - yog los tsim ib tug macro mus rau lub yam code. Nrog rau qhov no muaj peev xwm ua, Microsoft spreadsheet self-npaj, adapting rau cov kev cai ntawm ib tug neeg siv. Thaum hais txog nrog yuav ua li cas los tsim modules sau macros, nws yog tau mus nrog qhob piv txwv ntawm VBA Excel kev pab cuam. Nws yog qhov zoo tshaj plaws los pib nrog rau feem ntau yooj yim lis dej num.
QAUV 1
Ua hauj lwm: Sau ib qho kev pab uas yuav luam tau cov nqi ntawm tus txheem ntawm ib tug ntawm tes thiab ces sau ntawv mus rau lwm lub.
Yuav kom ua li no:
- qhib lub tab "Saib";
- tsiv mus nyob rau icon "macros";
- co mus rau lub "Cov ntaub ntawv Macro";
- sau qhib daim ntawv.
Rau simplicity, nyob rau hauv lub "Macro Npe" tawm "Makros1" thiab nyob rau hauv lub "Shortcut tseem ceeb" yog tso, piv txwv li, HH (qhov no txhais tau tias koj yuav khiav tus piv txwv kev pab cuam yuav tsum «Ctrl + h» blitz pab neeg). Xovxwm sau.
Tam sim no uas koj tau pib teev cov macro, ua li tus txheem ntawm ib tug cell mus rau lwm lub. Rov qab mus rau cov thawj icon. Nyem rau ntawm qhov "Cov ntaub ntawv Macro". Qhov kev ua qhab nia kawm tiav ntawm applets.
Tom ntej:
- dua mus rau cov hlua "Macros";
- yog xaiv nyob rau hauv daim ntawv teev "Macro 1";
- nias "Khiav" (tib yam kev txiav txim ntawm pib launched shortcut daws «Ctrl + HH»).
Raws li ib tug tshwm sim, qhov kev txiav txim uas tau raug ua thaum lub sij hawm teev cov macro.
Nws ua rau kev txiav txim zoo saib yuav ua li cas lub chaws zoo zoo li. Ua li no, rov qab mus rau cov hlua "Macros" thiab nias rau "Kho kom raug neeg" los yog "Sau". Raws li ib tug tshwm sim, lawv nrhiav tau lawv tus kheej nyob rau hauv lub VBA ib puag ncig. Ua tau, lub code nws tus kheej yog nyob nruab nrab ntawm kab macro Makros1 Sub () thiab End Sub.
Yog hais tias luam tau ua, piv txwv li, los ntawm ib tug cell A1 nyob rau hauv cell C1, ib tug ntawm cov kab ntawm code yuav zoo li ntau ( "C1"). Xaiv. Nyob rau hauv neeg txhais lus, nws zoo li "Ntau (" C1 "). Xaiv", nyob rau hauv lwm yam lus, ua rau ib tug kev hloov mus rau VBA Excel, nyob rau hauv cell C1.
Ib tug active ib feem ntawm cov kev cai sau ActiveSheet.Paste pab neeg. Nws txhais tau hais tias cov ntaubntawv povthawj siv txheem xaiv cell (nyob rau hauv cov ntaub ntawv no, A1) nyob rau hauv lub xaiv ntawm tes C1.
QAUV 2
VBA mus pab tsim txawv macros nyob rau hauv Excel.
VBA mus pab tsim txawv macros. Xav hais tias hais tias muaj yog ib tug muaj nuj nqi y = x + x 3 + 3 x 2 - cos (x). Koj xav tau los ua ib tug macro rau nws graphics. Qhov no yuav ua tau tsuas yog siv VBA mus.
Rau thawj zaug thiab zaum kawg tus nqi ntawm kev sib cav zog coj x1 = 0 thiab x2 = 10. Tsis tas li ntawd, nws yog tsim nyog los ua kom paub ib tug qhov - tus nqi rau kauj ruam hloov qhov sib cav thiab ib tug thawj zaug tus nqi rau cov tshuaj yuav tom khw.
Tag nrho cov piv txwv ntawm VBA Excel macros yog tsim siv tib txoj kev raws li tau muab teev tseg saum toj no. Nyob rau hauv no xyov cov ntaub ntawv, cov code zoo xws li:
Sub programm ()
x1 = 1
x2 = 10
shag = 0.1
kuv = 1
Tsis Thaum x1
y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - cos (x1)
Hlwb (i, 1) .Value = x1 (x1 nqi sau nyob rau hauv lub cim xeeb nrog rau lub coordinates (i, 1))
Hlwb (i, 2) .Value = y (y nqi yog sau nyob rau hauv lub cell nrog cov coordinates (i, 2))
kuv = kuv + 1 (siv tau suav);
x1 = x1 + shag (sib cav yog hloov mus rau lub kauj ruam me me);
Loop
End Sub.
Raws li ib tug tshwm sim ntawm no mus dhia macro "Excel" yuav tau txais txhua ob, cov thawj ntawm cov uas yog kaw qhov tseem ceeb rau x, thiab lub thib ob - mus y.
Ces teem lub sij hawm tau tsim rau lawv, tus txheej txheem rau "Excel".
QAUV 3
Yuav kom siv mus nyob rau hauv VBA Excel 2010, raws li tau zoo raws li nyob rau hauv lwm yam versions, nrog rau cov twb txo Ua Thaum tsim siv Rau.
Xav txog ib qho kev pab uas tsim ib kem. Nyob rau hauv txhua ntawm tes nws yuav tsum kaw squares coj kab xov tooj. Rau cov kev siv ntawm tus tsim yuav pub rau sau nws heev luv luv, tsis muaj kev siv ntawm ib tug txee.
Thawj zaug nws yog tsim nyog los tsim ib tug macro, raws li tau piav saum toj no. Tom ntej no, sau lub code nws tus kheej. Peb ntseeg tau hais tias peb xav nyob rau hauv lub qhov tseem ceeb rau lub 10 hlwb. Lub code yog raws li nram no.
Rau kuv = 1 mus rau 10 tom ntej
Qhov hais kom ua yog pauv mus rau lub "tib neeg" lus, raws li "rov los ntawm 1 mus rau 10 nyob rau hauv increments ntawm ib tug."
Yog hais tias ua hauj lwm tau txais sab nrog squares, piv txwv li, tag nrho cov khib zauv ntawm 1 thiab 11, peb sau ntawv:
Rau kuv = 1 mus rau 10 kauj ruam 1 Tom ntej no.
Ntawm no, nqis - kauj ruam. Nyob rau hauv cov ntaub ntawv no, nws yog sib npaug zos rau ob tug. Yog lub neej ntawd, hla ntawm lo lus nyob rau hauv lub voj txhais tau tias ib tug kauj ruam xwb.
Cov kev tshwm sim yuav tsum tau muab cia rau hauv cell xov tooj (i, 1). Ces txhua txhua lub sij hawm koj pib lub voj voog nrog ib qho kev nce rau hauv tus nqi ntawm kuv kauj ruam yuav loj hlob thiab kab xov tooj. Yog li, yuav muaj code optimization.
Nyob rau hauv dav dav, lub code yuav zoo xws li:
Sub kev pab cuam ()
Rau kuv = 1 10 Kauj ruam 1 (yuav tsum sau tsuas Rau kuv = 1 10)
Hlwb (i, 1) .Value = kuv ^ 2 (i.e. square tus nqi yog sau mus rau hauv lub cell (i, 1) i)
Tom ntej no (nyob rau hauv ib tug kev txiav txim zoo plays lub luag hauj lwm ntawm lub txee txhais tau tias thiab lwm voj voog pib)
End Sub.
Yog hais tias ua kom raug, xws li cov ntaubntawv povthawj siv thiab khiav macros (saib. Cov lus qhia saum toj no), ces nws yog hu ua ib lub sij hawm ib tug muab loj yuav tsum tau qhia kiag (nyob rau hauv cov ntaub ntawv no muaj 10 lub hlwb).
QAUV 4
Nyob rau hauv lub neej txhua hnub, ntau heev nws yog tsim nyog los noj cov tshuaj no los yog qhov kev txiav txim nyob ntawm ib co tej yam kev mob. Yuav tsis tau ua yog tsis muaj lawv nyob rau hauv VBA Excel. Piv txwv ntawm cov kev pab cuam qhov twg ntxiv chav kawm ntawm lub algorithm yog xaiv es tsis txhob ntawm chiv predetermined, feem ntau siv tsim ntawm Yog hais tias ... Tom qab ntawd (rau yooj yim tus neeg mob) Yog hais tias ... Ces ... KAWG Yog hais tias.
Xav txog cov kev cov ntaub ntawv. Xav tias koj xav tau los ua ib tug macro rau "Excel" mus rau ntawm tes nrog rau cov saib xyuas (1,1) tau raug kaw:
1 yog hais tias lub cav yog zoo;
0 yog hais tias tus sib cav yog pes tsawg;
1, yog hais tias tus sib cav yog tsis zoo.
Cov creation ntawm xws li ib tug loj heev rau "Excel" pib nyob rau hauv ib txoj kev txheem, los ntawm kev siv ntawm "kub" cov yuam sij Alt thiab F11. Ntxiv sau cov cai nram qab no:
Sub kev pab cuam ()
x = hlwb (1, 1) .Value (Qhov no hais kom ua assigns tus nqi ntawm x coordinates ntawm lub cell txheem (1, 1))
Yog hais tias x> 0 Ces hlwb (1, 1) .Value = 1
Yog hais tias x = 0 Ces hlwb (1, 1) .Value = 0
Yog hais tias x <0 Ces hlwb (1, 1) .Value = -1
End Sub.
Nws tseem mus khiav ib macro thiab tau nyob rau hauv "Excel" yam muaj nuj nqis rau cov kev sib cav.
VBA zog
Raws li koj kuj yuav tau pom, nyob rau hauv lub npe nrov tshaj qhov kev pab cuam Microsoft spreadsheet daim ntawv thov yog tsis yooj yim heev. Tshwj xeeb tshaj yog yog tias koj kawm tau li cas siv VBA zog. Nyob rau hauv tag nrho, qhov no yog hom lus programming tsim kev sau ntawv daim ntawv sau npe nyob rau hauv "Excel" thiab cov lus, hais txog 160 zog. Lawv yuav tsum tau muab faib ua ob peb pawg loj. Lawv yog:
- Lej zog. Thov lawv mus rau lub sib cav ntawm lub cosine tus nqi yog tau, lub ntuj logarithm, thiab thiaj li tag nrho cov feem.
- Nyiaj txiag zog. Vim lawv muaj thiab siv programming nyob rau hauv Excel, koj yuav tau txais zoo cov cuab yeej rau accounting thiab cov nyiaj txiag settlements.
- Array ua zog. Cov no muaj xws Array, IsArray; LBound; UBound.
- VBA Excel ua rau txoj kab. Qhov no yog ib tug ncaj loj pab pawg neeg. Nws muaj xws li, piv txwv li, qhov chaw muaj nuj nqi los tsim ib txoj hlua nrog ib tug xov tooj ntawm qhov khoob sib npaug zos rau cov integer sib cav los yog Asc hloov cim los ANSI code. Tag nrho cov ntawm lawv yog cov siv lug thiab tso cai rau koj mus ua hauj lwm nrog cov hlua nyob rau hauv lub "Excel" los tsim daim ntawv sau npe ntau npaum li cas yooj yim mus ua hauj lwm nrog cov ntxhuav.
- Cov ntaub ntawv hom hloov dua siab tshiab zog. Piv txwv li, CVar rov qhia sib cav, hloov nws mus rau Variant cov ntaub ntawv hom.
- Hnub zog. Lawv heev nthuav rau tus txheej txheem nta ntawm "Excel". Yog li ntawd, WeekdayName muaj nuj nqi rov rau hauv lub npe (tag nrho los yog ib nrab) ntawm lub hnub ntawm lub lim tiam los ntawm nws tus naj npawb. Txawm pab tau ntau yog cov Timer. Nws muab lub xov tooj ntawm vib nas this uas tau elapsed txij thaum ib tag hmo mus rau ib tug kev caij ntawm lub hnub.
- Ua rau hloov ib tug numeric sib cav nyob rau hauv qhov sib txawv tooj systems. Piv txwv li, Oct outputs rau octal sawv cev ntawm tus xov tooj.
- formatting zog. Qhov tseem ceeb tshaj ntawm no yog lub hom. Nws rov Variant nrog ib qho kev qhia formatted raws li cov lus qhia nyob rau hauv qhov kev piav qhia ntawm lub hom.
- thiab li ntawd.
Txoj kev tshawb no ntawm lub thaj chaw ntawm cov kev khiav dej num thiab lawv daim ntawv thov yuav ho nthuav lub Scope ntawm "Excel".
QAUV 5
Wb sim los daws kom tau ntau cov teeb meem. Piv txwv li:
Dan ntawv daim ntawv lub sij theem ntawm cov nqi ntawm cov enterprise daim ntawv qhia. Yuav tsum tau:
- tsim nws tus qauv feem los ntawm spreadsheet "Excel";
- ua ib tug VBA kev pab cuam uas yuav nug kom nyoos cov ntaub ntawv sau nws, mus nqa tawm qhov tsim nyog suav thiab sau nyob rau hauv lub template ntawm cov coj ntawm tes.
Xav txog ib yam ntawm cov nram qab no lub ntsiab.
Tsim ib tug template
Tag nrho cov kev ua yog ua rau ib tug qauv daim ntawv nyob rau hauv Excel. Dawb hlwb tseg rau kev nkag mus kawm cov ntaub ntawv rau lub hlis, xyoo, title-neeg tuam txhab uas muag, tus nqi ntawm cov nqi, lawv theem ntawm turnover. Raws li cov xov tooj ntawm tuam txhab uas (tuam txhab uas muag), nyob rau hauv kev sib hwm ntawm cov uas daim ntawv qhia yog tsis sau tseg, lub hlwb los ua rau lub hauv paus ntawm qhov tseem ceeb thiab kev lub npe yog tsis tseg nyob rau hauv ua ntej. Ntawv tso rau ib lub npe tshiab. Piv txwv li, "Օ Report".
variables
Sau cov kev pab cuam yeej sau nyob rau hauv lub template, xaiv lub cim. Lawv yuav siv tau rau lub zog:
- NN- tooj ntawm cov tam sim no kab ntawm lub rooj;
- TP thiab TF - npaj thiab tiag tiag turnover;
- SF thiab SP - tiag tiag thiab teem sij hawm tag nrho cov nqi;
- IP thiab YOG - npaj thiab nqi tiag tiag theem.
Peb txhais los ntawm tib lub tsiaj ntawv, tab sis nrog ib tug "prefix» Itog txuam nrog tag nrho rau cov uas kem. Piv txwv li, ItogTP - Nrog kev xav txog cov kem cai, raws li "lub tswv yim npaj turnover."
Tshuaj ntawm qhov teeb meem siv VBA programming
Siv cov cim, peb muab tau cov mis rau tus variance. Yog hais tias koj xav mus nqa tawm lub xam nyob rau hauv% peb muaj (F - P) / P * 100, thiab nyob rau hauv tus nqi ntawm - (F - P).
Cov qhabnias ntawm cov suav yuav ua tau zoo tshaj plaws cia li mus ua "Excel" spreadsheet nyob rau hauv lub tsim nyog hlwb.
Rau lub sij hawm thiab raug nyob rau hauv qhov tseeb tau los ntawm cov qauv ItogP = ItogP + P thiab ItogF = ItogF + F.
Rau deviations siv = (ItogF - ItogP) / ItogP * 100 yog hais tias tus xam yog nqa tawm raws li ib feem pua, thiab yog hais tias tag nrho cov nqi - (ItogF - ItogP).
Cov kev tshwm sim ib zaug dua kaw nyob rau hauv lub tsim nyog hlwb, thiaj li muaj yog tsis muaj yuav tsum tau muab lawv rau ntau yam.
Ua ntej yuav pib mus ua ib tug pab cuam koj xav kom txuag tau phau, piv txwv li, nyob rau hauv lub npe "Otchet1.xls".
Xovxwm "Tsim ib tug qhia cov lus," koj yuav tsum nias tsuas 1 lub sij hawm tom qab nkag mus rau lub header ntaub ntawv. Koj yuav tsum paub thiab lwm yam kev cai. Nyob rau hauv kev, lub khawm "Ntxiv ib kab" yuav tsum tau nias txhua lub sij hawm tom qab nkag mus rau hauv lub rooj ntawm qhov tseem ceeb rau txhua yam kev ua si. Tom qab nkag mus rau tag nrho cov ntaub ntawv yuav tsum tau mus nias lub khawm "Finish", thiab ces hloov mus rau "Excel" nyob rau hauv lub qhov rais.
Tam sim no uas koj paub yuav ua li cas los daws kom tau qhov teeb meem rau Excel nrog macros. Lub peev xwm siv VBA Excel (saib qauv kev pab cuam. Saum toj no) thiab tej zaum koj yuav xav tau mus ua hauj lwm nyob rau hauv lub cheeb tsam ntawm cov feem ntau nrov nyob rau lub sij hawm ntawd, cov ntawv nyeem editor "Lo Lus." Nyob rau hauv kev, los ntawm cov ntaubntawv povthawj siv, raws li qhia nyob rau hauv thaum pib ntawm no tsab xov xwm, los yog los ntawm kev sau ntawv code los tsim cov zaub mov nyees khawm los ntawm kev uas muaj ntau yam ntawm cov neeg ua haujlwm nyob rau hauv cov ntawv nyeem yuav ua tau los ntawm nias hauv lub lag luam nyob rau hauv cov dej num los yog los ntawm lub "Saib" icon thiab "Macros" tab.
Similar articles
Trending Now