You are on page 1of 10
Ghi chi tao ra. Thanh céng cy dé van tén tai trong Excel cho dit ban da déng workbook tao ra né. Khi ban bam vao nut chtva thi tuc thi workbook tao ra nd sé duge mé ra déng thoi thi hanh cdc Iénh dugc gan cho nuit do. hanh céng cy ty tao thudc so hivu cia workbook ma né duge Ban hay thir stv dung nut lénh vira tao ra dé thye hién céng viée sau: 1. Truc khi thy hién thu tuc, ban xod sach ndi dung cla Sheet2. 2. Bam chudt vao nut Smiley Face trong thanh céng cu Macrot Két qua sé thé hién trén Sheet2. 3.3- Thuc hién macro tiv thanh menu Tw thanh menu ctia Excel ban co thé tao ra cdc menu moi ma khi lwa chon ching thi macro sé thy hién. Vi dy nhu tao menu mdi cé tén Macro2 nam ngay sat menu Help, menu Macro2 cé chtra menu con Work Address, cach thre hién nhw sau: . Truc khi thyrc hién, ban phai chdc chan rang Workbook chta macro cla ban dang dugc kich hoat (néu khéng ban phai m@ ra). Nn Thém mét worksheet moi bang cach vao menu Insert/Worksheet (dat la Sheet4). 3. Trong menu Tools/Customize, chon tab Commands trong bang Cus- tomize. & . Cugn xudng dng cudi cling va chon New Menu trong Categories (hinh 3-5) a Git trai chu6t & New Menu trong Commands va kéo vao dong menu canh Help. a Bam phai chuét vao New Menu trong thanh menu clia Excel, thyc don tat hién ra. ee Thay tén mdi trong Name la &Macro2. Néu chi can menu nay (menu me) thi bam vao Assign Macro dé chon (hinh 3-6). Néu cdn thém cac 34 menu con (menu item), khéng can gan tht tuc vi menu me chi mang tinh quan ly. oe eee PaaS ee Tectue Cenmseds opnene To oo conmundto oto see cate andthe conmsd ie ths dab bso tosh Categene: Commands Window die Non Hara » pee sie ented Toto BAe aan {esa Sabet = Sigeevoos ens wc) WN Shoats {Grete ( Sreee | sheet 7 tent net Hinh 3-5: Tao New Menu trong thanh menu cua Excel ene el ponte bee es mr fps oon wee ef Ms ee Tacks ownards — Qplene Toads cnet aera st ctegy sett eda to stock Sees Connie eden dip tne | ‘rnin : i pecan Shoo | we Conte Toto i ely Zea] (eorres Gnwanis | 7 Pt : > nA shemtt ¢ Shiota { shoot Reo Ce sesnennuinanatmumnctnasoenuiseaineeinnintnteiinmstnhom Hinh 3-6: Tao menu Maro2 trong thanh menu cia Excel 32 Ky ty & tree M sé gach chan chi M trong menu Macro? (tro thanh Macro2), do chinh la phim tat dé thi hanh Macro2 (chi can bam Alt+M). Tén menu c6 thé 6 dau (thé hién dug tiéng Viet) va khodng tréng, digu dé khong cé duge @ tén macro hay ham ty lap. Tiép theo ta tién hanh tao menu con trong Macro2 : | : 3 bata e tom Menu Bn | a ‘Wind at te Cotontenu | ; Donna 2 Catan ten i a AutoShapes inn : Gate e wa 7 ‘Forms b3 tel Teron i) cl | A 12 43 hag 715 COV WA Sheet / Seat { Sheet \ sheets / 2 & Hinh 3-7: Tao cdc menu con - Trong Categories (trong trvéng hyp bang Customize van dang mé), chon Macros. 2. Tai Commands, chon Custom Menu Item (hinh 3-7), gitr trai va keo chudt dén phan tréng 6 du6i Macro2 (ving duge khoanh mau dd) . Bam phai chudt vao Custom Menu Item trong menu me Macro2. 3. 4. Tai thye don tat, déi tén trong Name thanh &Work Address (hinh 3-8). a Sau dé vao Assign Macro dé chon macro thyre hién. o Cudi cling la déng bang Customize. 33 abla cacrentveatict: | cane ossipettscre Somes Hinh 3-8: Béi tén menu con, gan Assign Macro va menu duc tao ra. Twong ty nhu véi nut lénh trong thanh cong cu ty tao, menu mdi tao duoc lwu git trong Workbook dé va lu6n hién hiu trén ctra s6 Excel, ké ca truong hop ban da dong Workbook do. Khi ban bam vao menu thi Workbook cha menu do tu déng mé ra va thuc hién lénh. Commands Options | tame: 8C.stom Button t ' Toor To. aconmardtostoxbar: sca categry anid rag the coms * cake ths data boxto otoobs. “> copy Buten Image Paste Button image a of reset outen tage on x tourer image, } von 4 aie But tage peat / a orton : Om ansteb 1 Tet only (Abvaye) i 7 ey se] Testonyy Mere) nt 4 tmage and Text yo | bgnagan © assem eyperiric Assign tro. Hinh 3-9: Tao mdi va thay déi trong menu con Ra Hinh 3-40: Stra chifa hinh ciia menu con Bang cach tién hanh tong tu’, ban cé thé tao thém duoc cdc menu con khdc. Ngoai viée gan tén (Name) va thd tye (Assign Macro), ban con cé nhiing Ia chon khac nhu’ sau: - Reset: Trd lai cai dat géc (hinh £4] cung voi tan Custom Button). - Delete: Xod menu con. - Copy Button Image: Sao chép biéu twong ctia menu con. - Paste Button Image: Dan biéu tugng ctia menu con. - Reset Button Image: Cai dat lai hinh cua menu con ( [=] ). - Edit Button Image: Sta hinh cia menu con theo y muén (hinh 3-10). - Change Button Image: Béi hinh ctia menu con (hinh 3-9). - Default Style: Kiéu mac dinh cia menu con, gdm cé hinh va cht - Text Only: Chi cd chi trong menu con (khéng cé hinh). 3.4- Thay déi lwa chon trong macro Néu ban muén thay déi cdc Iyva chon chi tiét trong macro, bus dau tién ban vao menu Tools/Macro va chon Macros (hoac phim tat Alt+F8). Ctra sé Marco hién ra nhu hinh 3-14 vdi danh sach toan bO macro 35 tise nse aco nae Aaess obs Shortcut hey cts | escrito: taser sckkess stating els Hinh 3-11: Cita s6 Macro va Macro Op! Maosin; Tie Workbook Enter arose tating nce 69 Sau d6 chon tén macro ma ban muén thay ddi, cé mot sé Iva chon sau: - Options: khi ban chon Options thi ctra sé Marco Options hign ra nhu hinh 3-11. Ban co thé thay déi phim tat va mé ta lai cong viéc macro trong Description. - Edit: khi chon muc nay civa sé Microsoft Visual Basic (MVB) hién ra va tré chudt sé nhap nhay tai vi tri cla macro do. Ban co thé stra déi ndi dung theo y muén va tat nhién phai ding néu khéng thi macro sé khdéng chay dug. b - Delete: xoa macro nao ban muén. Trude khi xoa thi Excel sé héi ban cé chac chan xda hay khéng? - Macros in: hién danh sach cdc macro tuy thuéc vao cac truong hop chon trong hép cudn tha xuéng. + All Open Workbooks: ton b6 workbook dang mé + This Workbook: chi trong workbook hién hanh. + Tén tung workbook dang dug mé trong Excel Ngay phia duoi muc Macros in la Description (mau xanh) mé ta sy hoat d6ng cla tlyng macro trong dong phia dudi 36 Chuong 4 CUA SO VISUAL BASIC EDITOR (VBE) Khi ban tién hanh ghi macro dau tién, Excelsé tao ra module trong workbook do. Module duoc quan ly trong ctra sé Microsoft Visual Basic cla Excel Trong module d6 chiva cc ma lénh (code) dug vit bang ngén ngt VBA dé xay dung nén cdc macro. Cac buée thyc hién dé nhin thay module: 1, Tw menu Tools/Macro chon Macros. 2. Chon macro Address_abs va bam vao nut Edit Civa s6 Visual Basic Editor hay Microsoft Visual Basic (viét tat la VBE hay MVB) hién ra nhw hinh 4-1. Ctra sé VBE chinh la noi thy hién cac céng viéc trong dy an VBA cla ban. Ban cé thé thay ré duge néi dung ting tht tuc hay ham khi cudn xudng. Hai chuong trinh con ma ban viva tao bang chtrc nang Record New Macro dug hién thi chi tiét trong ctva 6 VBE. Ngoai ra, civa sé VBE con la méi trudng dé ban xay dung mét chic ‘nding digu khién khac nhu: tao bang diéu khién tuy bién (UserForm), thay déi thudc tinh ctia cac diéu khién,.. 4.1- Cau tric ctra sé VBE Ctra sé VBE Ia noi quan ly, lwu trir ton bé cac thi tuc (macro) fing nhu cae dy an xay dyng trong VBA. Cau tric ctva sé VBE nhu sav: = Dong trén cling gém 6 biéu tong el va tén ota sé Visual Basic Editor, tiép do la tén ota Workbook, cudi cling la dy an ban dang thuc hién. - Dong ther hai la cdc menu diéu khién chtva trong thanh menu ctia VBA. - Dong thir ba la thanh céng cu tiéu chudn (Standard) duge mac dinh xuat hién trong civa s6 VBE (hinh 4-1). Ngoai ra, con mat sé thanh céng cu khac khéng duoc hién thi san nhu Debug, Edit va UserForm (hinh 4-3). Tuy trwéng hop cu thé ma ban co thé cho hién thi va str dung céng cu nay. Géc phia trén bén trai la chi tiét dy dn cia ban (Project Explorer). Dy an bao gém tap hyp cac déi trong Excel Objects (gdm cdc déi tong trong Excel nhu: Sheet, This Workbook), Forms (chtva céc hop déi thoai iuy bién do ngui str dung lap ra), Modules (chtra cac module con nhu Module1, Module?....). Module !4 noi quan ly, lwu tri? cac tht tuc (sub) va ham (function) Méi module cé thé chtra mét hay nhiéu Sub hodc Function. 37 8 Géc phia du¢i bén trai la civa sé thudc tinh (Properties window) ctia déi tuong dang duoc chon. Gém c6 tén clia déi tong, phia dui la thudc tinh cla n6. di tugng cé thé ld This Workbook, cac Sheet, UserForm hay Module, Class Module... F £ 2 vansopet aes ma noureensaie he — fname] ‘ S mematcracapafbret| © tae aiirsee ceaessce #4 00 i HB) sheets (Sheets) Range 1H) shee? (Shewt2) ActiveCell.FormilakICL = "Nguyen Van ¥ BH) sheets (Shows) Range ("81") .Select ©) TeWielbook ActiveCell.FormulaRici = "Lop DCCT-DET Kas" C4 Fomms Renge ("BS") .Seiece Bl UserFermt Avtivecell.FormulaRici * "yong DH Me Dia chat” #5 Medes Benge ("83:55") .Selece Seen ; Selection.Font.Bold = _ a : Selection. Font . Te GT Range ("B65") .Select Anette = ooo —r—i‘C « “ees see 2s F = = 3 e ¢ 2 $8 & PT | “e & € S&S 8B & | = ae a 38 i | - £ g & @ = g & & 2 € So S 2 : 5 Hinh 4-2: Cac nut lénh trong cong cy tiéu chudin cuia cifa sé VBE 38 UserForm Customize... Hinh 4-3: Cac thanh céng cu Debug, Edit va UserForm trong VBE Phan chiém dién tich lon nhat civa sé MVB chinh la civa s6 code (Code window). Dé Ia noi soan thao ma lénh (code) trong macro hay xay dung User- Form. Tai d6, ndi dung thé tuc, ham sé duoc hién thi trong module hoc trong tung déi twong trong Excel. C6 thé coi module la noi quan ly, lwu triv cac thd tuc (Sub) va ham (Function). Méi module cé thé chtra mot hay nhiéu thd tuc hoac ham. Phia trén cira sé soan code c6 Hép déi tuong va Hop thd tue, su kién. VAn dé nay duoc dé cap cu thé hon trong muc 4-2 Ctra sé nam dudi cling co tén la Immediate, théng thudng khéng hién thi trén VBE. Trong clra s6 VBE, ban vao chon menu View/ Immediate Window (phim tat Ctr+G), Civa sé Immediate hién ra (hinh 4-7, hinh 4-8). Thong thudng, ctva sé Immediate nam phia dudi man hinh va ban 6 thé di chuyén, thay déi kich thuéc theo y muén trong VBE. Van dé nay duge dé cap & myc 4.3. Ghi chu: Néu chi stv dung thuat ngi macro d6i voi cdc churong trinh ni chung thi nhiéu trvong hop sé khéng r6 nghia. Theo ding sw lam viéc thi macro phai la thti tuc vi chi thti tuc moi co thé dé chay duoc (Run Macro) va c6 thé can thiép dén nhiéu déi trong, con ham ty lap (Function) thi chi lam viéc trong mét 6 chira tén ham. Chinh vi vay, chung ta str dung thii tuc (Sub) va ham ty lap (hay Function) dé thay thuat ngt macro ndi chung. 4.2- Cla s6 soan thao code (Code window) Mot thd tuc duoc bat dau voi Sub va két thc boi End Sub. Ham tu lap cting bat dau bang Font va két thc béi End Function. Cac thi tuc hodc ham ty lap néu dug lap ra dé co thé dling chung trong Excel thi ban phai xay dung trong cac module téng quat (khéng phai trong Class Module). Dé tao ra module téng quat, ban vao menu Insert\Module 39 trong cla sé VBE. Module dling chung c6 Hép déi tong voi tén la General, danh sch thi tuc trong méi module dug liét ké trong Hop thii tue, sw kién (hinh 4-1). Ngoai ra, ban cén 6 thé x4y dung thi tue cho déi tuong la Workbook, ThisWorkbook voi nhiing su kién xay ra déi vi nd. Ba biét chi tiét, moi ban xem phan lap trinh sv kién trong Excel tai Chuong 18. TheeeNunbers (] |/ Dam num a9 Integer, num? 22 Integer, mums az Inveger hum = 10; num2 = 20: nud = 30 [binge | YogBox "Gia cri trung Binh la" ¢ ~ a Nyaverage (muml, num2, nuns) MegBox Mmul= " € mut € Che (19) € wnuma= " & mum 6 Chr (13) 6 "nune= 7 § mes € Che (13) End Sab notion MyAverage(numt, By pumt = nuel #4 Hyaverage = (numl + numz + rues) / 3 End Fun ADeclarations} Y [iPectarations) 4 |Add_Forn IHienthong Type Thongtin Ten As String | Diachi as Sune mae | in Quequan As StShowFormé | | End Type | | Tuoi As IntedshowForm? 4 | f Sub Hienthongtin() i Dim Danhsach as Thongtin i A 1 To 4 Hinh 4-5: Danh sach cac chwong trinh dude xay dung trong ting module 40 i : nisbeieammmetapelea

You might also like