M t macro là m t t p h p c a m t ho c nhi u hành đ ng th c hi n chính xác theoộ ộ ậ ợ ủ ộ ặ ề ộ ự ệ m t trình t t trên xu ng đ ph c v các yêu c u thao tác trên các đ i tộ ự ừ ố ể ụ ụ ầ ố ượng trong cơ s d li u.ở ữ ệ
M t macro giúp b n th c hi n các công vi c hàng ngày b ng cách t đ ng hóaộ ạ ự ệ ệ ằ ự ộ chúng. Thay vì th c hi n b ng tay các công vi c l p đi l p l i, b n có th ghi l i m tự ệ ằ ệ ặ ặ ạ ạ ể ạ ộ macro đ n gi n cho toàn b công vi c m t l n.ơ ả ộ ệ ộ ầ
Xây d ng macro bao g m các hành đ ng l a ch n t m t danh sách, và sau đó đi nự ồ ộ ự ọ ừ ộ ề vào các đ i s c a hành đ ng.ố ố ủ ộ
Gi s xây d ng m t form v i nút đóng form b ng cách t o nút trên form và xây d ngả ử ự ộ ớ ằ ạ ự m t macro đ đóng form sau đó gán macro cho s ki n Click c a nút.ộ ể ự ệ ủ
Có 3 lo i Macroạ
Standalone macros: Là m t đ i tộ ố ượng c a c s d li u, macro này sau khi đủ ơ ở ữ ệ ược t o và l u thì nó xu t hi n trong ph n Macro c a Navigation Pane..ạ ư ấ ệ ầ ủ
Data macros: Là lo i macro đạ ượ ưc l u tr nh m t ph n c a m t table. B n có thữ ư ộ ầ ủ ộ ạ ể thi t k sao cho table th c thi macro trế ế ự ước ho c sau khi m t record đặ ộ ược thêm, ch nh s aỉ ử ho c xóaặ
Embedded macros: Là lo i macro đạ ượ ưc l u tr nh m t ph n c a m t form ho cữ ư ộ ầ ủ ộ ặ report. Macros này ch th c thi khi form ho c report ho c m t đ i tỉ ự ặ ặ ộ ố ượng trên form ho cặ report ch u tác đ ng c a m t s ki n.ị ộ ủ ộ ự ệ
6.2. Cách t o và th c thi Standalone macrosạ ự
6.2.1. Cách t oạ
Ch n tab Create trên thanh Ribbon, trong nhóm l nh Macro &ọ ệ Code, click nút Macro
Xu t hi n c a s thi t k Macro v i các thành ph n:ấ ệ ử ổ ế ế ớ ầ
Khung bên trái dùng đ ch n các action trong Macro.ể ọ
Khung bên ph i ch a các Action theo nhóm và các đ i tả ứ ố ượng trong c s d li u ơ ở ữ ệ
đã được gán macro.
ng v i nh ng Action khác nhau thì xu t hi n các ô cho b n ch n ho c nh p các
Ứ ớ ữ ấ ệ ạ ọ ặ ậ
argument tương ng.ứ
Ví dụ: khi ch n Action là GotoRecord thì s xu t hi n các Argument nh hình.ọ ẽ ấ ệ ư
Ti p t c ch n Action ti p theo b ng cách click Add new Action.ế ụ ọ ế ằ
6.2.2. Th c thi macroự
Đ i v i macro không gán cho s ki n c a m t đ i tố ớ ự ệ ủ ộ ố ượng c th thì ch n tên macroụ ể ọ
và click nút run đ th c thi ho c double click vào tên macro, thể ự ặ ường dùng cho các macro ch a các l nh Open.ứ ệ
Ví dụ: macro m form.ở
Đ i v i macro mà ch có th th c thi khi tác đ ng vào m t đ i tố ớ ỉ ể ự ộ ộ ố ượng c th trênụ ể form ho c report thì sau khi t o và l u macro thì ph i gán macro cho s ki n c a đ iặ ạ ư ả ự ệ ủ ố
tượng c th . ụ ể Các th c hi nự ệ
M form ho c report ch a đ i tở ặ ứ ố ượng c n gán macro.ầ
Click ph i trên đ i tả ố ượng ch n properties, ho c ch n ọ ặ ọ
đ i tố ượng> M properties Sheet.ở
Ch n tab Event, ch n s ki n (event).ọ ọ ự ệ
Trong danh sách x xu ng ch n tên Macro.ổ ố ọ
6.2.3. Sub Macro
Các macro có cùng tính ch t, cùng ch c năng ho c th c hi n các hành đ ng trênấ ứ ặ ự ệ ộ cùng m t form, report thộ ường đượ ạc t o trong cùng m t macro, các macro độ ượ ạc t o bên trong m t macro g i là ộ ọ Submacro
M t macro ch a nhi u Submacro bên trong nó vì v y m i Submacro thành ph n bênộ ứ ề ậ ỗ ầ trong ph i đả ược phân bi t b ng m t tên riêngệ ằ ộ
Cách t o:ạ
Catalog trong tab Design trên thanh Ribbon.
Drag chu t kéo Submacro trong khung Action Catalog vào c a s thi t k macro.ộ ử ổ ế ế
Trong c a s thi t k xu t hi n khung Submacro.ử ổ ế ế ấ ệ
Nh p tên cho Submacroậ
Ch n Action cho Submacro.ọ
Khi gán Submacro, ta truy xu t vào tên c a Submacro.ấ ủ
6.2.4. Các Actions và các Events thông d ngụ
a. Actions: Trong Access action được chia thành nhóm theo ch c năng.ứ
Nhóm ch c năngứ Action
Data Entry Operations DeleteRecord, EditListItems, SaveRecord
Database Objects GotoControl, GotoPage, GotoRecord, OpenForm, OpenReport, OpenTable, PrintObject, PrintPreview, SelectObject, SetProperty Filter/Query/Search ApplyFiler, FindNextRecord, FindRecord, OpenQuery,Refresh, RemoveFilterSort, SetFilter, SetOrderBy, ShowAllRecords
MacroCommands OnError, RemoveAllTempVars, RunDataMacro, RunMenu Command, SetLocalVar, SetTempVar, StopAllMacros, StopMacro System Commands Beep, CloseDatabase, QuitAccess
User Interface Commands AddMenu, BrowseTo, LockNavigationPane, MessageBox, SetMenuItem, UndoRecord Window Management CloseWindow, MaximizeWindow, MinimizeWindow, MoveAndSizeWindow, RetoreWindow