(Kin thc c bn) Bin son: ThS. Phan T Hng I. Gii thiu v Excel v VBA Hin nay, phn mm Excel tr nn thn thuc i vi nhng ngi thng xuyn lm vic vi bng tnh v biu . Kh nng tnh ton, phn tch v x l d liu tuyt vi ca Excel gip chng ta gii quyt c nhiu cng vic khc nhau. Kin thc trong Excel rt rng ln, p ng cho nhiu ngnh ngh. Chng ta ch bit nhiu hay bit t v Excel ch khng th bit ht! Khi thng tho v Excel, chng ta c th xy dng cc chng trnh ng dng vi nhiu cp ng dng khc nhau, rt ngn thi gian hon thnh cng vic vi chnh xc cao. Tuy nhin, i vi mt s bi ton c cng vic tnh ton, x l phc tp nu ch n thun s dng cng c, php tnh v hm trong Excel th khng th gii quyt c trit , hoc phi tn nhiu cng sc xy dng vi thao tc th cng. Ngoi ra, chng ta c th gp nhng bi ton mang tnh lp i lp li, hoc c s kt ni vi mi trng bn ngoi Excel. khc phc nhng mt hn ch , ngn ng lp trnh Visual Basic for Applications (gi tt l VBA) c tch hp sn trong Excel s gip chng ta c th gii quyt trit cc bi ton trn. VBA l ngn ng lp trnh Visual Basic pht trin trong mi trng Office bi Microsoft. Phn mm Excel, Word, Access, Powerpoint,... v k c phn mm chuyn v v k thut AutoCad u c th s dng VBA. II. Gii thiu v Ging vin Ging vin ca chng trnh hc VBA trong Excel l ThS. Phan T Hng (H Kin Trc H Ni) v ThS. Nguyn Duy Tun (H Cng Nghip). ThS. Phan T Hng l tc gi cun Lp trnh VBA trong Excel do Nh xut bn Thng k pht hnh (ti bn ln th t). Chng ti cng ang tham gia iu hnh din n www.giaiphapexcel.com 2
Chng ti tham gia nhiu lp ging dy Excel nng cao, VBA trong Excel cho cc t chc, c nhn, ng thi chia s kin thc cho cng ng mng nh giaiphapexcel.com, webketoan.vn,... III. Yu cu vi hc vin kt qu hc tp t hiu qu cao, yu cu i vi hc vin nh sau: - Cc hc vin phi c my tnh xch tay thun li cho vic hc tp. - Hc trn Excel 2007 hoc 2010, 2013. - Hc vin phi c kin thc v Excel tng i kh, hiu bit c cu trc i tng v s phn cp qun l chng. - Chu kh thc hnh xy dng code trn my lp cng nh nh. - Nn ghi chp vi nhng ni dung quan trng. - p dng kin thc lp trnh vo cng vic chuyn mn c th. IV. Thi gian v k hoch hc - Thi gian hc d kin mt bui l 2h30, bao gm 15 pht ngh gii lao. Mt tun hc 2 bui. - C ti liu ph t. - Thi lng hc d kin nh sau (cn ph thuc trnh hiu bit ca hc vin, thi gian thc hnh). + Bui 1: Chuyn 1, 2, 3, 4, 5. + Bui 2: Chuyn 6 v 7. + Bui 3: Chuyn 8 & 9 & 10 + Bui 4: Chuyn 11 & 12. + Bui 5: Chuyn 13 & 14. + Bui 6: Chuyn 15. + Bui 7: Chuyn 16 & 17. + Bui 8: Tng kt hoc kim tra (ty chn). Ghi ch: Ni dung cc chuyn cp di. Hc vin c th nghin cu chuyn no khng cn thit (hoc bit) b qua, khng cn hc. 3
V. cng bi ging lp trnh VBA trong Excel Chng ti s ging theo tng chuyn , c tnh h thng, ni dung bm theo cun Lp trnh VBA trong Excel (Nh xut bn Thng k). 1. Gii thiu v VBA - Hc vin hiu c kh nng ng dng ca VBA trong Excel qua cc chng trnh ng dng. - Thnh phn VBA trong b Office v cch ci t. - Gii thiu Ribbon iu khin VBA v ngha ca n. 2. Ghi v thc hin macro Hc vin nm nm bt c qu trnh thc hin cng vic nh vic chy (thi hnh) macro bi cc cu lnh c ghi li trong n. Ngoi ra, cc dng lnh s gip hc vin tm hiu ngn ng lp trnh VBA, c bit l i vi nhng ai mi bt u tm hiu ngn ng lp trnh ny. - To macro bng chc nng Recorder Macro - Thc hin macro khi s dng bng iu khin macro 3. Cch thc hin mt macro n gin Hc vin nm c cch thi hnh mt macro c xy dng bng cc phng php khc nhau. - Thc hin t mt i tng Object trong worksheet - Thc hin t i tng trong Form Controls - Thay i la chn trong macro 4. Gii thiu ca s lm vic Microsoft Visual Basic Hc vin hiu c cc thnh phn v ngha ca chng trong ca s Microsoft Visual Basic (MVB). MVB l ni lm vic chnh trong qu trnh xy dng code. - Cu trc ca s MVB - Ca s son tho code (Code window) - Ca s Immediate - Hiu chnh trong MVB 4
5. Lm vic vi file cha macro Trong nhng nm gn y, do virus macro pht trin nn Microsoft b sung thm ch an ton trong cc ng dng. Chc nng Security iu khin s lm vic ca macro, tc l c th cho macro hot ng hay khng hot ng. - S dng chc nng Security - An ton khi lm vic vi tp tin Excel (gii thiu 1 chuyn ring) - S dng cc chng trnh dit virus 6. Gii thiu ngn ng lp trnh VBA Hc vin bt u tm hiu ngn ng lp trnh VBA. l i tng iu khin (Object) cng vi phng thc (Method) v thuc tnh (Property) ca chng. - i tng (Object) - Phng thc (Method) - Thuc tnh (Property) 7. Mt s i tng c bn trong Excel Hc vin tm hiu cc i tng hay c s dng n vi thuc tnh, phng thc iu khin chng theo mun. Tm hiu su v Range v y l i tng chng ta hay lm vic nht. - i tng Application - i tng Window - i tng Workbook - i tng Worksheet - i tng Range (vng) v Cells (khi ) 8. Khai bo v s dng bin trong VBA Hc vin tm hiu cch to bin v cch thc s dng chng. - Khai bo kiu gi tr cho bin - Cc ton t trong VBA - Biu thc - Gn gi tr cho bin, hng v i tng - Khai bo v s dng mng (Array) 9. Phng php t xy dng chng trnh 5
Sau khi c nhng kin thc c bn v VBA, cc hc vin c th t xy dng chng trnh (Sub) m khng phi s dng chc nng t ghi macro. 10. S dng v xy dng hm trong VBA Hc vin tm hiu cc hm h tr trong VBA hot ng tng t trong Excel. Tip theo tm hiu cch xy dng hm theo mun. - S dng cc hm sn c trong Excel - S dng cc hm trong VBA - Xy dng hm trong VBA 11. Hp thoi trong VBA Hc vin tm hiu cch to hp thoi trong VBA to kt ni v iu khin s hot ng chng trnh theo mun. - Phng thc InputBox - Hm InputBox - Hm MsgBox 12. Cu trc iu khin trong VBA Mt s trng hp, chng ta phi s dng th tc kim tra nhng tnh hung khi lm vic vi Excel, iu khin chng p ng c yu cu ra. Vi mi tnh hung, macro s thc hin cng vic khc nhau. Cu trc iu khin nh vy khng th s dng chc nng t ghi macro c, chng ta phi xy dng bng VBA. C hai loi iu khin thng gp l iu kin c iu kin v vng lp. - iu khin c iu kin - iu khin vng lp 13. K thut x l li Khi lm vic vi VBA, li trong qu trnh xy dng chng trnh khng th trnh khi v xut hin nhng thng bo gy kh chu. C nhiu nguyn nhn gy li v khi mc nhng li , th tc ca chng ta khng th chy c nu khng sa li. - Cc kiu li thng gp - Li thi hnh v cch x l li - Cc phng php gim li 6
14. Lp trnh s kin trong Excel Lp trnh s kin gip hc vin iu khin s hot ng theo mun nh khi bm phi chut, ng, m file, chuyn sheet... - Ch dn v cc th tc ca s kin - Lm hu hiu v v hiu cc s kin - Trnh t cc s kin - Cc s kin i vi Workbook - Cc s kin i vi Worksheet 15. Xy dng bng iu khin trong Excel Ni dung phn n hng dn cch xy dng bng iu khin (Form) trong Excel theo mun ngi s dng. - Xy dng UserForm trong MVB - Xy dng Form trong WorkSheet (chuyn ring) 16. Th hin ting Vit trong VBA Do VBA khng c h tr hin th font Unicode nn vic hin th thng ip bng ting Vit rt kh khn, nh hng n cht lng sn phm. Chng ny s cp n Vit ho MsgBox, phng thc InputBox, CommandButton, Caption ca UserForm,... l nhng i tng chnh cn Vit ho Unicode. - Vit ha MsgBox v phng thc InputBox - Vit ha UserForm 17. Mt s vn i vi Excel Chuyn ny cp n mt s vn hay gp phi trong Excel. V d nh cch dit virus macro, x l tp tin Excel to bt thng, li tp tin Excel, tng tc tnh ton trong Excel,... Tip theo GV s tr li cc vng mc ca hc vin trong qu trnh hc.