Các phần sau cung cấp thông tin hữu ích về VBA. Tên đối tượng được cung cấp để bạn có thể dễ dàng kiểm tra chúng trong cơ sở dữ liệu Northwind 2.0 Starter Edition.
VBA (phiên bản Visual Basic for Applications) là ngôn ngữ lập trình được sử dụng trong tất cả các sản phẩm Microsoft 365, không chỉ Access. Tài liệu này chủ yếu được ghi ở đây: Tài liệu dành cho nhà phát triển Access.Để bắt đầu, hãy xem giới thiệu về lập trình Access.
Khi tìm kiếm thông tin, hãy đảm bảo tìm kiếm các ví dụ cụ thể về Access và đưa Microsoft Access vào thuật ngữ tìm kiếm. Thông thường, các giải pháp cho các sản phẩm Microsoft 365 khác sẽ hoạt động, nhưng có thể yêu cầu thay đổi.
Microsoft Access là một sản phẩm dành cho người lớn. Điều đó có nghĩa là có rất nhiều ví dụ hiện có, đó là điều tuyệt vời cho bạn. Điều này cũng có nghĩa là bạn vẫn có thể xem các sách cũ hơn về lập trình Access. Nhiều cuốn sách cũ vẫn còn có sẵn trên các trang web sách được sử dụng với một phần nhỏ chi phí ban đầu của họ.
Tệp Microsoft Access là tệp Microsoft 365. Tệp Microsoft 365 phải nằm ở Vị trí tin cậy hoặc được bật nội dung của chúng. Các mục này được coi là an toàn vì bạn đã tạo chúng hoặc chúng đến từ một nguồn đáng tin cậy. Kiểm tra này xảy ra mỗi lần bạn mở tệp Microsoft 365 bất kỳ. Chúng tôi sẽ gọi đây là tùy chọn tin cậy/được bật từ đây trở đi. Nếu phiên bản mới của ứng dụng được phát hành và mở từ một vị trí không đáng tin cậy, quy trình bật nội dung sẽ lặp lại. Để biết thêm thông tin, hãy xem Vị trí Tin cậy cho các tệp Microsoft 365, Quyết định nên tin cậy một cơ sở dữ liệu hay không và Thêm, loại bỏ hoặc thay đổi vị trí tin cậy trong Microsoft 365.
Macro, hàm và thủ tục con là cách bạn thực thi lô-gic kinh doanh vào cơ sở dữ liệu Access.
Các điều khiển trên biểu mẫu (chẳng hạn như nút, hộp văn bản, nhãn, v.v.) có thể sử dụng sự kiện của chúng (như bấm vào điều khiển) để kích hoạt các quy trình khác, chẳng hạn như thêm, xóa bản ghi hoặc mở biểu mẫu. Các quy trình này có thể được thực thi bằng cách sử dụng macro hoặc VBA. Northwind sử dụng chủ yếu macro và một số VBA. Để biết thêm thông tin, hãy xem Hành động Macro RunCode.
Một số loại điều khiển có trình hướng dẫn tích hợp sẵn tự động tạo macro. Ví dụ: việc thêm nút lệnh vào biểu mẫu sẽ mở ra một trình hướng dẫn sẽ cung cấp một số lựa chọn chức năng cho nút. Việc thêm hộp tổ hợp sẽ mở ra một trình hướng dẫn có thể được cấu hình để tìm một bản ghi cụ thể trên biểu mẫu.
Ngăn Dẫn hướng là cách chính để bạn xem và truy nhập vào tất cả các đối tượng cơ sở dữ liệu của mình và nó hiển thị ở bên trái cửa sổ Access theo mặc định. Ngăn Dẫn hướng Phiên bản Northwind 2.0 Starter đã được tùy chỉnh. Chúng tôi đã tạo một thể loại tùy chỉnh có tên là Northwind Starter 2.0. Điều này cho phép chúng tôi sắp xếp các đối tượng theo khu vực chức năng. Để biết thêm thông tin, hãy xem Tùy chỉnh Ngăn Dẫn hướng.
Điều quan trọng là bạn phải tìm hiểu về phạm vi và khả năng hiển thị trong Access và Microsoft 365. Phạm vi tham chiếu đến sự sẵn có của biến, hằng số hoặc thủ tục để sử dụng theo một thủ tục khác. Có ba mức phạm vi: cấp thủ tục, mức mô-đun riêng và mức mô-đun công cộng. Bạn xác định phạm vi của một biến khi bạn khai báo nó. Bạn nên khai báo tất cả các biến một cách rõ ràng để tránh đặt tên lỗi xung đột giữa các biến có phạm vi khác nhau. Tất cả các mô-đun có hai câu lệnh chỉ thị: So sánh Cơ sở dữ liệu Tùy chọn và Tùy chọn Rõ ràng. Để biết thêm thông tin, hãy xem mục Hiểu rõ về phạm vi và khả năng hiển thị, Câu lệnh công khai, Câu lệnh riêng tư, Câu lệnh tĩnh và Hiểu về vòng đời của biến số.
Đôi khi bạn cần một biến để tồn tại sau khi các đối tượng đã tạo ra nó đi ra khỏi phạm vi. Có ba cách chính để thực hiện việc này: Biến công cộng, TempVars và lưu trữ các giá trị trong bảng cục bộ. Mỗi người trong số này có ưu điểm và như thế. Nhiều nhà phát triển sử dụng kết hợp của những.
Biến công cộng và TempVars tồn tại cho phiên hiện tại và đi ra khỏi phạm vi khi ứng dụng được đóng. Điều gì sẽ xảy ra nếu bạn muốn giữ các biến cụ thể của người dùng trong các phiên của họ? Bạn có thể lưu trữ các loại giá trị đó trong bảng cục bộ. Trong Northwind 2.0 Starter Edition, chúng tôi có những giá trị đó trong bảng có tên SystemSettings. Ví dụ: một giá trị trong bảng là "ShowWelcome". Giá trị này cho chúng tôi biết nếu bạn muốn thấy màn hình chào mừng mỗi lần bạn đăng nhập hay không.
Nếu bạn đã sử dụng bất kỳ trình hướng dẫn điều khiển nào được tích hợp sẵn trong Access, bạn biết rằng nếu một macro được tạo, thường sẽ không có xử lý lỗi nào và nếu VBA được tạo, nó có thể bị giới hạn ở kiểu Hàm MsgBox, Err.Description.
Trong Northwind 2.0 Starter Edition, chúng tôi đã triển khai tính năng được gọi là trình xử lý lỗi toàn cầu. Lỗi xảy ra trong bất kỳ thủ tục nào gọi hàm ở cấp độ toàn cầu để hiển thị lỗi. Ưu điểm lớn là mã đó là nhất quán và nếu thông báo cần thay đổi, ví dụ như hiển thị số lỗi hoặc ghi lỗi vào tệp thì chỉ có thể thực hiện ở một nơi.
clsErrorHandler là mô-đun lớp thực thi mã xử lý lỗi. Một mô-đun lớp giữ tất cả các chức năng chính và trợ giúp của nó với nhau trong một đơn vị, làm cho mã nhiều hơn encapsulated. Macro AutoExec cuối cùng cũng gọi hàm khởi động trong modStartup, macro sẽ tạo ra một phiên bản của clsErrorHandler và lưu nó như một biến toàn cầu để có thể được sử dụng trong toàn bộ ứng dụng.
Trên thực tế, mã xử lý lỗi trong các quy trình nhất quán đến mức chúng tôi có thể tạo tất cả trong vòng chưa đến năm phút bằng cách sử dụng một số mã VBA ưa thích đã trang bị mỗi thủ tục với trình xử lý lỗi thích hợp. Mã này không được bao gồm trong mẫu.