Giới thiệu về macro

Bài viết này giải thích định nghĩa về macro và cách các macro có thể giúp bạn tiết kiệm thời gian bằng cách tự động hóa những tác vụ bạn thường thực hiện. Bài viết khám phá các nguyên tắc cơ bản theo sau việc tạo và sử dụng macro cũng như tiến hành cải tiến cho macro trong Microsoft Office Access 2007.

Trong bài viết này

Macro là gì?

Tìm hiểu về macro

Tính năng macro mới trong Office Access 2007

Tạo một macro

Chạy macro

Macro là gì?

Macro là một công cụ cho phép bạn tự động hóa các tác vụ và thêm chức năng vào biểu mẫu, báo cáo cũng như điều khiển của mình. Ví dụ: nếu bạn thêm một nút chỉ lệnh vào biểu mẫu, bạn sẽ liên kết sự kiện Khi_Bấm của nút với một macro và macro chứa các lệnh bạn muốn nút thực hiện mỗi khi được bấm.

Trong Access, thật hữu ích nếu bạn nghĩ về macro như là một ngôn ngữ lập trình được đơn giản hóa mà bạn viết bằng cách dựng một danh sách các hành động cần thực hiện. Khi dựng một macro, bạn chọn từng hành động từ danh sách thả xuống rồi điền thông tin cần thiết cho mỗi hành động. Macro cho phép bạn thêm chức năng vào các biểu mẫu, báo cáo và điều khiển mà không cần viết mã trong mô-đun Visual Basic for Applications (VBA). Macro cung cấp một tập hợp con nhiều lệnh sẵn có trong VBA và hầu hết mọi người có thể nhận ra việc dựng macro dễ dàng hơn so với viết mã VBA.

Ví dụ: giả sử bạn muốn khởi động một báo cáo trực tiếp từ một trong các biểu mẫu nhập dữ liệu của mình. Bạn có thể thêm nút vào biểu mẫu của mình rồi tạo macro khởi động báo cáo. Macro có thể là một macro độc lập (một đối tượng riêng biệt trong cơ sở dữ liệu) và được kết ghép với sự kiện Khi_Bấm của nút hoặc macro có thể được nhúng trực tiếp vào sự kiện Khi_Bấm của chính nút đó — một tính năng mới trong Office Access 2007. Dù là cách nào, khi bạn bấm vào nút, macro sẽ chạy và khởi động báo cáo.

Bạn tạo một macro bằng cách sử dụng Bộ dựng Macro được hiển thị trong hình minh họa sau đây.

Bộ dựng Macro

Để hiển thị bộ dựng macro:

  • Ở tab Tạo, trong nhóm Khác, bấm Macro. Nếu lệnh này không khả dụng, hãy bấm mũi tên bên dưới nút Mô-đun hoặc Mô-đun Lớp, rồi bấm Macro. Ảnh nút

    Mẹo:  Bộ dựng Macro đã được thiết kế lại trong Access 2010 để giúp cho thao tác tạo, sửa đổi và chia sẻ macro Access thậm chí còn dễ dàng hơn.

Đầu Trang

Tìm hiểu về macro

Thuật ngữ macro thường được sử dụng để đề cập đến các đối tượng macro độc lập (có nghĩa là các đối tượng bạn thấy ở mục Macro trong Ngăn Dẫn hướng) nhưng trên thực tế, một đối tượng macro có thể chứa nhiều macro. Trong trường hợp đó, macro được đề cập như là một nhóm macro. Nhóm macro được hiển thị trong Ngăn Dẫn hướng dưới dạng một đối tượng macro đơn nhưng một nhóm macro thực sự sẽ chứa hai macro trở lên. Dĩ nhiên, có thể tạo từng macro trong mỗi đối tượng macro riêng biệt nhưng thường sẽ hợp lý hơn khi nhóm một vài macro có liên quan thành một đối tượng macro đơn. Tên trong cột Tên Macro sẽ định nghĩa cho từng macro.

Một macro bao gồm nhiều hành động macro riêng lẻ. Hầu hết các hành động đều yêu cầu một hoặc nhiều tham đối. Ngoài ra, bạn có thể gán tên cho từng macro trong một nhóm macro và bạn có thể thêm các điều kiện để kiểm soát cách chạy từng hành động. Các mục sau đây thảo luận về từng tính năng này chi tiết hơn.

Tên macro

Nếu đối tượng macro của bạn chỉ chứa một macro, tên macro sẽ không cần thiết. Bạn có thể chỉ cần tham chiếu đến macro theo tên của đối tượng macro. Tuy nhiên, trong trường hợp một nhóm macro, bạn phải gán tên độc nhất cho từng macro. Nếu cột Tên Macro không hiển thị trong Bộ dựng Macro, bấm Tên Macro Ảnh nút trong nhóm Hiển thị/Ẩn ở tab Thiết kế. Thông tin thêm về việc chạy macro trong nhóm macro sẽ trình bày ở phần sau bài viết này.

Tham đối

Tham đối là một giá trị cung cấp thông tin cho hành động, chẳng hạn như chuỗi cần hiển thị trong hộp thông báo, điều khiển để thao tác bật, v.v.. Một vài tham đối là bắt buộc nhưng một số khác là tùy chọn. Các tham đối được hiển thị trong ngăn Tham đối Hành động ở cuối Bộ dựng Macro.

Nhập các tham đối hành động

Một tính năng mới của Bộ dựng Macro Office Access 2007 là cột Tham đối cho phép bạn xem (nhưng không chỉnh sửa) các tham đối của một hành động trên cùng một dòng với hành động. Điều này giúp cho việc đọc macro của bạn dễ dàng hơn một chút vì bạn không còn cần phải chọn từng hành động để hiển thị các tham đối nữa. Để hiển thị cột Tham đối, bấm Tham đối Ảnh nút trong nhóm Hiển thị/Ẩn ở tab Thiết kế.

Điều kiện

Điều kiện xác định các tiêu chí nhất định phải được đáp ứng trước khi một hành động được thực hiện. Bạn có thể sử dụng bất kỳ biểu thức nào để đánh giá thành True/False hoặc Có/Không. Hành động sẽ không được thực thi nếu biểu thức đánh giá thành False, Không hoặc 0 (không). Nếu biểu thức đánh giá thành bất kỳ giá trị nào khác, hành động sẽ được chạy.

Bạn có thể đặt một điều kiện kiểm soát hai hành động trở lên bằng cách nhập dấu chấm lửng (…) trong cột Điều kiện cho từng hành động nối tiếp bạn muốn áp dụng điều kiện. Nếu biểu thức đánh giá thành False, Không hoặc 0 (không), sẽ không có hành động nào được thực hiện. Nếu điều kiện đánh giá thành bất kỳ giá trị nào khác, tất cả các hành động sẽ được thực hiện.

Để hiển thị cột Điều kiện trong Bộ dựng Macro, ở tab Thiết kế, trong nhóm Hiển thị/Ẩn, bấm Điều kiện Ảnh nút .

Sử dụng biểu thức này để thực hiện hành động

If:

[Thành_phố]="Paris"

Paris là giá trị Thành_phố trong trường nằm trên biểu mẫu chạy macro.

DCount("[ID_Đơn_hàng]", "Đơn_hàng")>35

Có hơn 35 mục nhập trong trường ID_Đơn_hàng của bảng Đơn_hàng.

DCount("*", "Chi tiết_Đơn hàng", "[ID_Đơn_hàng]=Forms![Đơn_hàng]![ID_Đơn_hàng]")>3

Có hơn 3 mục nhập trong bảng Chi tiết Đơn hàng mà trường ID_Đơn_hàng của bảng khớp với trường ID_Đơn_hàng trên biểu mẫu Đơn_hàng.

[Ngày_Vận_chuyển] Between #02/02/2006# And #02/03/2006#

Giá trị của trường Ngày_Vận_chuyển trên biểu mẫu chạy macro không sớm hơn 02/02/2006 và không muộn hơn 02/03/2006.

Forms![Sản_phẩm]![Hàng_Trong_Kho]<5

Giá trị của trường Hàng_Trong_Kho trên biểu mẫu Sản_phẩm nhỏ hơn 5.

IsNull([Tên])

Giá trị Tên trên biểu mẫu chạy macro là null (không có giá trị). Biểu thức này tương đương với [Tên] Is Null.

[Quốc_gia/Khu_vực]="Vương Quốc Anh" And Forms![Tổng_Doanh_số]![Tổng_Đơn_hàng]>100

Giá trị trong trường Quốc_gia/khu_vực trên biểu mẫu chạy macro là Vương quốc Anh và giá trị của trường Tổng_Đơn_hàng trên biểu mẫu Tổng_Doanh_số lớn hơn 100.

[Quốc_gia/khu_vực] In ("Pháp", "Italy", "Tây Ban Nha") And Len([Mã_Bưu_điện])<>5

Giá trị trong trường Quốc_gia/khu_vực trên biểu mẫu chạy macro là Pháp, Italy hoặc Tây Ban Nha và mã bưu điện có độ dài không quá 5 ký tự.

MsgBox("Xác nhận thay đổi?",1)=1

Bạn bấm OK trong hộp thoại có hàm MsgBox hiển thị "Xác nhận thay đổi?". Nếu bạn bấm Hủy bỏ trong hộp thoại này thì Access sẽ bỏ qua hành động.

[Biến_Tạm_thời]![Kết_quả_Hộp_thông_báo]=2

Biến tạm thời được sử dụng để lưu trữ kết quả của hộp thông báo được so sánh với 2 (vbCancel=2).

Mẹo: Để làm cho Access tạm thời bỏ qua một hành động, nhập False làm điều kiện. Tạm thời bỏ qua một hành động có thể rất hữu ích khi bạn đang khắc phục sự cố macro.

Hành động macro

Hành động là các khối dựng macro cơ bản. Access cung cấp một lượng lớn nhiều hành động có thể chọn để kích hoạt một loạt các lệnh khác nhau. Ví dụ: một số hành động thường dùng hơn có thể mở báo cáo, tìm bản ghi, hiển thị hộp thông báo hoặc áp dụng bộ lọc cho một biểu mẫu hoặc báo cáo.

Đầu Trang

Tính năng macro mới trong Office Access 2007

Trong các phiên bản trước của Access, nhiều chức năng thường dùng không thể thực hiện được mà không cần viết mã VBA. Trong Office Access 2007, các tính năng và hành động macro mới đã được bổ sung nhằm giúp loại bỏ yêu cầu về mã. Điều này giúp bạn thêm chức năng vào cơ sở dữ liệu của mình dễ dàng hơn cũng như giúp bảo mật hơn.

  • Macro nhúng    Giờ đây bạn có thể nhúng các macro trong bất kỳ sự kiện nào được cung cấp bởi biểu mẫu, báo cáo hoặc điều khiển. Macro nhúng không hiển thị trong Ngăn Dẫn hướng mà sẽ trở thành một phần của biểu mẫu, báo cáo hoặc điều khiển đã tạo ra macro. Nếu bạn tạo bản sao của một biểu mẫu, báo cáo hoặc điều khiển có chứa macro nhúng, các macro đó cũng sẽ hiện diện trong bản sao.

  • Bảo mật tăng cường    Khi nút Hiện Mọi Hành động Ảnh nút không được tô sáng trong Bộ dựng Macro, chỉ những hành động macro và tham đối RunCommand sẵn dùng mới không yêu cầu trạng thái đáng tin cậy khi chạy. Macro được dựng bằng các hành động này sẽ chạy ngay cả khi cơ sở dữ liệu đang ở chế độ vô hiệu hóa (khi VBA bị ngăn chạy). Cơ sở dữ liệu chứa những hành động macro không nằm trong danh sách đáng tin cậy —hoặc cơ sở dữ liệu có mã VBA — cần phải được cấp trạng thái đáng tin cậy một cách rõ ràng.

  • Xử lý và gỡ lỗi    Office Access 2007 cung cấp các hành động macro mới, bao gồm OnError (tương tự như câu lệnh "On Error" trong VBA) và ClearMacroError cho phép bạn thực hiện các hành động cụ thể khi xảy ra lỗi trong khi macro của bạn đang chạy. Ngoài ra, hành động macro SingleStep mới cho phép bạn truy nhập một vào chế độ bước đơn ở bất kỳ điểm nào trong macro của mình để bạn có thể quan sát cách macro thực hiện từng hành động một.

  • Biến tạm thời    Ba hành động macro mới (SetTempVar, RemoveTempVarRemoveAllTempVars) cho phép bạn tạo và sử dụng các biến tạm thời trong macro của mình. Bạn có thể sử dụng ba biến này trong biểu thức có điều kiện để kiểm soát các macro đang chạy hoặc để chuyển dữ liệu vào và ra khỏi các báo cáo hay biểu mẫu hoặc dùng cho bất kỳ mục đích nào khác có yêu cầu vị trí lưu trữ tạm thời đối với một giá trị. Những biến tạm thời này cũng có thể truy nhập được trong VBA, vì vậy bạn còn có thể sử dụng các biến này để tương tác dữ liệu vào và ra khỏi các mô-đun VBA.

Đầu Trang


Tạo một macro

Trong Office Access 2007, một macro hoặc nhóm macro có thể được chứa trong một đối tượng macro (đôi khi được gọi là macro độc lập) hoặc macro có thể được nhúng vào bất kỳ thuộc tính sự kiện nào của một biểu mẫu, báo cáo hoặc điều khiển. Các macro nhúng sẽ trở thành một phần của đối tượng hoặc điều khiển mà macro được nhúng vào. Các macro độc lập được hiển thị trong Ngăn Dẫn hướng, bên dưới mục Macro nhưng các macro nhúng thì không.

Tính năng của Bộ dựng Macro

Tạo một macro độc lập

Tạo một nhóm macro

Tạo một macro nhúng

Ví dụ: Nhúng macro vào sự kiện Khi Không có Dữ liệu của một báo cáo

Chỉnh sửa macro

Tìm hiểu thêm về các hành động macro

Tính năng của Bộ dựng Macro

Bạn sử dụng Bộ dựng Macro để tạo và sửa đổi macro. Để mở Bộ dựng Macro:

  • Ở tab Tạo, trong nhóm Khác, bấm Macro. Nếu lệnh này không khả dụng, hãy bấm mũi tên bên dưới nút Mô-đun hoặc Mô-đun Lớp, rồi bấm Macro. Ảnh nút

    Access hiển thị Bộ dựng Macro.

Bạn sử dụng Bộ dựng Macro để dựng danh sách hành động bạn muốn thực hiện khi macro chạy. Khi lần đầu bạn mở Bộ dựng Macro, cột Hành động, cột Tham đối và cột Chú thích sẽ được hiển thị.

Trong mục Tham đối Hành động, bạn nhập và chỉnh sửa các tham đối cho từng hành động macro, nếu được yêu cầu. Một hộp mô tả cung cấp cho bạn mô tả ngắn của mỗi hành động hoặc tham đối được hiển thị. Bấm vào một hành động hoặc tham đối hành động để đọc mô tả trong hộp.

Bảng sau đây hiển thị các lệnh sẵn có ở tab Thiết kế của Bộ dựng Macro.

Nhóm

Lệnh

Mô tả

Công cụ    

Chạy    

Thực hiện các hành động được liệt kê trong macro.

Bước Đơn    

Kích hoạt chế độ bước đơn. Khi bạn chạy macro ở chế độ này, chương trình sẽ thực hiện từng hành động một. Sau khi từng hành động hoàn tất, hộp thoại Macro Một Bước được hiển thị . Bấm Bước trong hộp thoại để tiến đến hành động tiếp theo. Bấm Dừng Tất cả Macro để dừng macro này và mọi macro khác đang chạy. Bấm Tiếp tục để thoát khỏi chế độ một bước và thực hiện các hành động còn lại mà không dừng lại.

Bộ dựng    

Khi bạn nhập một tham đối hành động có thể chứa một biểu thức, nút này được bật. Bấm Bộ dựng để mở hộp thoại Bộ tạo Biểu thức bạn có thể sử dụng để xây dựng biểu thức.

Hàng    

Chèn Hàng    

Chèn một hoặc nhiều hàng hành động trống bên trên hàng hoặc các hàng đã chọn.

Xóa Hàng    

Xóa hàng hoặc các hàng hành động đã chọn.

Hiển thị/Ẩn    

Hiện Mọi Hành động    

Hiển thị thêm hoặc bớt hành động macro trong danh sách thả xuống Hành động.

  • Để hiển thị danh sách hành động macro dài, bấm Hiện Mọi Hành động. Khi danh sách hành động macro dài khả dụng, nút Hiện Mọi Hành động xuất hiện là được chọn. Nếu bạn chọn một hành động macro từ danh sách hành động macro dài này, bạn có thể cần phải cấp trạng thái tin cậy rõ ràng cho cơ sở dữ liệu trước khi có thể chạy hành động.

  • Để chuyển từ danh sách hành động macro dài thành danh sách ngắn chỉ hiển thị những hành động macro có thể được sử dụng trong cơ sở dữ liệu chưa được tin cậy, hãy đảm bảo rằng nút Hiện Mọi Hành động không được chọn.

    Mẹo: Nếu nút Hiện Mọi Hành động được chọn, bấm nút Hiện Mọi Hành động để xóa lựa chọn.

    Khi nút Hiện Mọi Hành động không được chọn, danh sách hành động macro đáng tin cậy ngắn sẽ khả dụng.

Tên Macro    

Hiển thị hoặc ẩn cột Tên Macro. Tên macro là bắt buộc trong nhóm macro để phân biệt từng macro riêng lẻ với nhau nhưng nếu không thuộc nhóm thì tên macro là tùy chọn. Để biết thêm thông tin, hãy xem mục Tạo một nhóm macro ở phần sau trong bài viết này.

Điều kiện    

Hiển thị hoặc ẩn cột Điều kiện. Bạn sử dụng cột này để nhập các biểu thức kiểm soát thời điểm thực hiện một hành động.

Tham đối    

Hiển thị hoặc ẩn cột Tham đối. Cột này hiển thị các tham đối cho từng hành động macro và giúp bạn đọc qua macro của mình dễ dàng hơn. Nếu cột Tham đối không được hiển thị, bạn phải bấm vào từng hành động và đọc các tham đối trong mục Tham đối Hành động. Bạn không thể nhập các tham đối trong cột Tham đối.

Đầu Mục

Tạo một macro độc lập

  • Trên tab Tạo, trong nhóm Khác, bấm Macro. Nếu không lệnh này không khả dụng, hãy bấm mũi tên dưới nút Mô-đun hoặc Mô-đun Lớp, rồi bấm Macro.

  • Bộ dựng Macro được hiển thị.

  • Thêm một hành động vào macro:

    1. Trong Bộ dựng Macro, bấm vào ô trống đầu tiên trong cột Hành động.

    2. Nhập hành động bạn muốn sử dụng hoặc bấm vào mũi tên để hiển thị danh sách hành động, rồi chọn hành động bạn muốn sử dụng.

    3. Trong mục Tham đối Hành động, hãy xác định các tham đối cho hành động, nếu được yêu cầu. Để xem mô tả ngắn của từng tham đối, bấm vào hộp tham đối, rồi đọc mô tả ở phía bên phải của tham đối.
      Mẹo

      • Đối với các tham đối hành động có cài đặt là tên đối tượng cơ sở dữ liệu, bạn có thể đặt tham đối bằng cách kéo đối tượng từ ngăn Dẫn hướng đến hộp tham đối Tên Đối tượng của hành động.

      • Bạn cũng có thể tạo một hành động bằng cách kéo đối tượng cơ sở dữ liệu từ ngăn Dẫn hướng đến một hàng trống trong Bộ dựng Macro. Nếu bạn kéo một bảng, truy vấn, biểu mẫu, báo cáo hay mô-đun đến Bộ dựng Macro, Access sẽ thêm một hành động mở bảng, truy vấn, biểu mẫu hoặc báo cáo. Nếu bạn kéo một macro đến Bộ dựng Macro, Access sẽ thêm một hành động giúp chạy macro.

    4. Bạn có thể tùy ý nhập chú thích cho hành động.

  • Để thêm nhiều hành động vào macro, di chuyển đến một hàng hành động khác, rồi lặp lại bước 2. Access thực hiện các hành động theo thứ tự bạn liệt kê.

Đầu Mục

Tạo một nhóm macro

Nếu bạn muốn nhóm một số macro có liên quan trong một đối tượng macro, bạn có thể tạo một nhóm macro.

  • Trên tab Tạo, trong nhóm Khác, bấm Macro. Nếu không lệnh này không khả dụng, hãy bấm mũi tên dưới nút Mô-đun hoặc Mô-đun Lớp, rồi bấm Macro.

  • Bộ dựng Macro được hiển thị.

  • Ở tab Thiết kế, trong nhóm Hiển thị/Ẩn, bấm Tên Macro Ảnh nút nếu chưa được chọn. Cột Tên Macro được hiển thị trong Bộ dựng Macro.

    Ghi chú: Trong nhóm macro, tên macro là cần thiết để xác định từng macro riêng lẻ. Tên macro xuất hiện trên cùng một dòng với hành động đầu tiên của macro. Cột tên macro được để trống dành cho bất kỳ hành động nối tiếp nào trong macro. Macro kết thúc ở mục nhập tiếp theo trong cột tên macro.

  • Trong cột Tên Macro, nhập tên cho macro đầu tiên trong nhóm macro.

  • Thêm những hành động bạn muốn macro thực hiện:

    1. Trong cột Hành động, bấm vào mũi tên để hiển thị danh sách hành động.

    2. Bấm vào hành động bạn muốn thêm.

    3. Trong mục Tham đối Hành động, hãy xác định các tham đối cho hành động, nếu được yêu cầu. Để xem mô tả ngắn của từng tham đối, bấm vào hộp tham đối, rồi đọc mô tả ở phía bên phải của tham đối.
      Mẹo

      • Đối với các tham đối hành động có cài đặt là tên đối tượng cơ sở dữ liệu, bạn có thể đặt tham đối bằng cách kéo đối tượng từ Ngăn Dẫn hướng đến hộp tham đối Tên Đối tượng của hành động.

      • Bạn cũng có thể tạo một hành động bằng cách kéo đối tượng cơ sở dữ liệu từ ngăn Dẫn hướng đến một hàng trống trong Bộ dựng Macro. Nếu bạn kéo một bảng, truy vấn, biểu mẫu, báo cáo hay mô-đun đến Bộ dựng Macro, Access sẽ thêm một hành động mở bảng, truy vấn, biểu mẫu hoặc báo cáo. Nếu bạn kéo một macro đến Bộ dựng Macro, Access sẽ thêm một hành động giúp chạy macro.

    4. Bạn có thể tùy ý nhập chú thích cho hành động.

  • Di chuyển đến cột Tên Macro của hàng trống tiếp theo, rồi nhập tên cho macro tiếp theo trong nhóm macro.

  • Thêm những hành động bạn muốn macro thực hiện.

  • Lặp lại bước 5 và 6 cho từng macro trong nhóm.

Ghi chú: 

  • Nếu bạn chạy một nhóm macro bằng cách bấm đúp vào nhóm trong Ngăn Dẫn hướng hoặc bằng cách bấm Chạy Ảnh nút trong nhóm Công cụ của tab Thiết kế, Access chỉ chạy macro đầu tiên, rồi dừng lại khi đến tên macro thứ hai.

  • Khi bạn lưu nhóm macro, tên mà bạn xác định là tên của toàn bộ nhóm macro. Tên này được hiển thị ở mục Macro trong Ngăn Dẫn hướng. Để tham chiếu đến từng macro riêng lẻ trong nhóm macro, sử dụng cú pháp này:

    tên_nhóm_macro.tên_macro

    Ví dụ: Nút.Sản_phẩm tham chiếu đến macro Sản_phẩm trong nhóm macro Nút. Trong danh sách macro, như danh sách tham đối Tên Macro cho hành động RunMacro, Access hiển thị macro Sản_phẩm là Nút.Sản_phẩm.

Đầu Mục

Tạo một macro nhúng

Các macro nhúng khác với macro độc lập là các macro nhúng được lưu trữ trong thuộc tính sự kiện của các biểu mẫu, báo cáo hoặc điều khiển. Các macro nhúng sẽ không hiển thị dưới dạng đối tượng ở mục Macro trong Ngăn Dẫn hướng. Điều này có thể giúp bạn quản lý cơ sở dữ liệu của mình dễ dàng hơn, vì bạn không cần phải theo dõi các đối tượng macro riêng biệt chứa macro dùng cho một biểu mẫu hoặc báo cáo. Sử dụng thủ tục sau đây để tạo một macro nhúng.

  1. Mở biểu mẫu hoặc báo cáo sẽ chứa macro ở cửa sổ Thiết kế hoặc dạng xem Bố trí. Để mở một biểu mẫu hoặc báo cáo, bấm chuột phải vào biểu mẫu hoặc báo cáo trong Ngăn Dẫn hướng, rồi bấm Cửa sổ Thiết kế Ảnh nút hoặc Dạng xem Bố trí Ảnh nút .

  2. Nếu bảng thuộc tính chưa được hiển thị, hãy nhấn F4 để hiển thị.

  3. Bấm vào điều khiển hoặc mục có chứa thuộc tính sự kiện bạn muốn nhúng macro.

    Để chọn toàn bộ biểu mẫu hoặc báo cáo, bấm Báo cáo trong danh sách thả xuống ở đầu bảng thuộc tính.

  4. Trong bảng thuộc tính, bấm tab Sự kiện.

  5. Bấm thuộc tính sự kiện bạn muốn nhúng macro, rồi bấm Nút Trình Tạo kế bên hộp.

  6. Trong hộp thoại Chọn Bộ dựng, bấm Bộ dựng Macro, rồi bấm OK.

  7. Trong Bộ dựng Macro, bấm vào hàng đầu tiên trong cột Hành động.

  8. Trong danh sách thả xuống Hành động, bấm vào hành động bạn muốn.

  9. Điền mọi tham đối bắt buộc trong ngăn Tham đối Hành động rồi di chuyển đến hàng hành động tiếp theo.

  10. Lặp lại các bước 8 và 9 cho đến khi macro của bạn hoàn tất.

  11. Bấm Lưu Ảnh nút , rồi bấm Đóng Ảnh nút .

Macro sẽ chạy mỗi khi sự kiện được kích hoạt.

Ghi chú: Access cho phép bạn dựng một nhóm macro dưới dạng một macro nhúng. Tuy nhiên, chỉ có macro đầu tiên trong nhóm chạy khi sự kiện được kích hoạt. Các macro nối tiếp sẽ bị bỏ qua trừ khi được gọi từ bên trong của chính macro nhúng đó (ví dụ: bằng hành động Khi_Lỗi).

Đầu Mục

Ví dụ: Nhúng một macro vào sự kiện Khi Không có Dữ liệu của một báo cáo

Khi bạn chạy một báo cáo và nguồn dữ liệu của báo cáo không chứa bất kỳ bản ghi nào, báo cáo sẽ hiển thị một trang trống — tức là trang không có dữ liệu nào. Bạn có thể muốn để hộp thông báo hiển thị thay vào đó và nhờ đó mà báo cáo sẽ hoàn toàn không hiển thị. Sử dụng một macro nhúng là giải pháp lý tưởng cho tình huống này.

  1. Mở báo cáo ở cửa sổ Thiết kế hoặc dạng xem Bố trí.

  2. Nếu bảng thuộc tính chưa được hiển thị, hãy nhấn F4 để hiển thị.

  3. Ở bảng thuộc tính, bấm tab Sự kiện.

  4. Bấm Khi Không có Dữ liệu.

  5. Bấm Nút Trình Tạo .

  6. Trong hộp thoại Chọn Bộ dựng, bấm Bộ dựng Macro, rồi bấm OK.

  7. Nhập các hành động và tham đối từ bảng sau đây.

Hành động

Đối số

MsgBox

Không Tìm thấy Bản ghi nào., Có, Thông tin, Không có Dữ liệu

Hủy_bỏ_Sự_kiện

[không có tham đối]

  1. Lưu ý rằng bảng trước hiển thị các tham đối khi các tham đối được hiển thị trong cột Tham đối. Các tham đối thực sự được nhập trong mục Tham đối Hành động, như mô tả chi tiết trong bảng sau đây.

Tham đối Hành động

Giá trị

Thông báo

Không Tìm thấy Bản ghi nào.

Bíp

Loại

Thông tin

Tiêu đề

Không có Dữ liệu

  1. Bấm vào Đóng.

    Bộ dựng Macro sẽ đóng lại và sự kiện Khi Không có Dữ liệu hiển thị [Macro Nhúng].

  2. Lưu và đóng báo cáo.

Lần kế tiếp khi bạn chạy báo cáo và không tìm thấy bản ghi nào, hộp thông báo được hiển thị. Khi bạn bấm OK trong hộp thông báo, báo cáo sẽ hủy bỏ mà không hiển thị trang trống.

Đầu Mục

Chỉnh sửa macro

  • Để chèn một hàng hành động     Bấm hàng macro ở trên hàng bạn muốn chèn hành động mới, rồi ở tab Thiết kế, trong nhóm Hàng, bấm Chèn Hàng Hình ảnh nút chèn hàng trong bảng tra cứu .

  • Để xóa một hàng hành động     Bấm vào hàng hành động bạn muốn xóa, rồi ở tab Thiết kế, trong nhóm Hàng, bấm Xóa Hàng Ảnh nút .

  • Để di chuyển một hàng hành động    Chọn hành động bằng cách bấm bộ chọn hàng ở bên trái của tên hành động. Kéo bộ chọn hàng để di chuyển hành động đến vị trí mới.

Đầu Trang

Tìm hiểu thêm về các hành động macro

Khi bạn đang làm việc trong Bộ dựng Macro, bạn có thể tìm hiểu thêm về một hành động hoặc tham đối bằng cách bấm vào hành động hoặc tham đối, rồi đọc mô tả trong hộp ở góc dưới bên phải của cửa sổ Bộ dựng Macro. Ngoài ra, từng hành động macro đều có một bài viết Trợ giúp liên kết với hành động đó. Để tìm hiểu thêm về một hành động, bấm hành động trong danh sách hành động rồi nhấn F1.

Đầu Trang

Chạy macro

Các macro độc lập có thể được chạy theo bất kỳ cách nào sau đây: trực tiếp (ví dụ: từ Ngăn Dẫn hướng), trong nhóm macro, từ một macro khác, từ mô-đun VBA hoặc phản hồi lại sự kiện xảy ra trên một biểu mẫu, báo cáo hoặc điều khiển. Macro được nhúng trong một biểu mẫu, báo cáo hay điều khiển có thể được chạy bằng cách bấm Chạy Ảnh nút ở tab Thiết kế khi macro ở cửa sổ Thiết kế; nếu không thì macro sẽ chạy chỉ khi nào sự kiện liên kết với macro được kích hoạt.

Chạy trực tiếp một macro

Để chạy trực tiếp một macro, hãy thực hiện một trong những thao tác sau:

  • Dẫn hướng đến macro trong Ngăn Dẫn hướng, rồi bấm đúp vào tên macro.

  • Ở tab Công cụ Cơ sở dữ liệu, trong nhóm Macro, bấm Chạy Macro Ảnh nút , bấm vào macro trong danh sách Tên Macro, rồi bấm OK.

  • Nếu macro được mở ở cửa sổ Thiết kế, bấm Chạy Ảnh nút trên tab Thiết kế trong nhóm Công cụ. Để mở macro ở cửa sổ Thiết kế, bấm chuột phải vào marcro trong Ngăn Dẫn hướng, rồi bấm Cửa sổ Thiết kế Ảnh nút .

chạy một macro nằm trong nhóm macro

Để chạy một macro nằm trong nhóm macro, thực hiện một trong những thao tác sau:

  • Ở tab Công cụ Cơ sở dữ liệu, trong nhóm Macro, bấm Chạy Macro Ảnh nút , rồi bấm vào macro trong danh sách Tên Macro.

    Access có một mục nhập cho mỗi macro trong từng nhóm macro, theo định dạng tên_nhóm_macro.tên_macro.

  • Bấm OK.

  • Xác định macro dưới dạng cài đặt thuộc tính sự kiện trên một biểu mẫu hoặc báo cáo hoặc dưới dạng tham đối Tên Macro của hành động RunMacro. Tham chiếu đến macro bằng cách sử dụng cú pháp này:

    tên_nhóm_macro.tên_macro

    Ví dụ: cài đặt thuộc tính sự kiện sau đây chạy một macro có tên Thể loại trong nhóm macro có tên là Nút Bảng chuyển mạch Biểu mẫu:

    Nút_Bảng_chuyển_mạch_Biểu_mẫu.Thể_loại

  • chạy macro nằm trong một nhóm macro từ bên trong thủ tục VBA bằng cách sử dụng phương pháp RunMacro của đối tượng DoCmd và bằng cách sử dụng cú pháp được hiển thị trước đó để tham chiếu đến macro.

Chạy macro từ một macro khác hoặc từ quy trình VBA

Thêm hành động RunMacro vào macro hoặc quy trình của bạn.

  • Để thêm hành động RunMacro vào một macro, bấm RunMacro ở danh sách hành động trong hàng hành động trống, rồi đặt tham đối Tên Macro thành tên macro bạn muốn chạy.

  • Để thêm hành động RunMacro vào thủ tục VBA, thêm phương pháp RunMacro của đối tượng DoCmd vào thủ tục của bạn, rồi xác định tên macro bạn muốn chạy. Ví dụ: ví dụ sau đây về phương pháp RunMacro chạy macro có tên Macro của Tôi:

DoCmd.RunMacro "My Macro"

chạy macro phản hồi lại sự kiện trên một biểu mẫu, báo cáo hoặc điều khiển

Mặc dù lúc này bạn có thể nhúng macro trực tiếp vào các thuộc tính sự kiện của biểu mẫu, báo cáo và điều khiển, bạn cũng vẫn có thể tạo macro độc lập rồi kết ghép với các sự kiện và đó là cách macro được sử dụng trong các phiên bản trước của Access.

  1. Sau khi bạn dựng macro độc lập của mình, mở biểu mẫu hoặc báo cáo ở cửa sổ Thiết kế hoặc dạng xem Bố trí.

  2. Mở bảng thuộc tính dành cho biểu mẫu, báo cáo hoặc dành cho mục hay điều khiển trên biểu mẫu hoặc báo cáo.

  3. Bấm vào tab Sự kiện.

  4. Bấm thuộc tính sự kiện dành cho sự kiện bạn muốn kích hoạt macro. Ví dụ: để khởi động macro trên sự kiện Thay_đổi, bấm vào thuộc tính Khi_Thay đổi.

  5. Trong danh sách thả xuống, bấm vào tên của macro độc lập.

  6. Lưu biểu mẫu hoặc báo cáo.

Đầu Trang

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Người dùng nội bộ Office

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×