Trong phần đầu tiên, bạn đã phát hiện ra môi trường lập trình (Visual Basic Editor và Macro Recorder). Trong phần thứ hai, bạn đã học được nhiều từ VBA (mã) hữu ích. Sau 2 phần của hướng dẫn có thể tải xuống trên macro Excel (VBA), bạn có thể sử dụng tất cả các macro có sẵn miễn phí trên Internet và bạn có thể tự xây dựng.
Trong phần 3, bạn sẽ tìm hiểu cách tạo các cửa sổ hộp thoại tùy chỉnh (còn được gọi là userforms).
Khi hộp thông báo hoặc hộp nhập liệu (mà bạn đã phát hiện ra trong bài 17) không đủ để giao tiếp với người dùng, bạn có thể tạo các cửa sổ hộp thoại đơn giản hoặc phức tạp của riêng mình như bên dưới.
Biểu mẫu (Biểu mẫu người dùng) trong VBA cho Excel
Khi hộp thông báo hoặc hộp đầu vào không còn đủ để liên lạc với người dùng, bạn cần bắt đầu phát triển định dạng người dùng.
Biểu mẫu được sử dụng để yêu cầu thông tin từ người dùng để cung cấp quy trình VBA. Các điều khiển cơ bản khác nhau có thể được thêm vào biểu mẫu người dùng mà chúng được gọi là: nhãn , hộp văn bản , hộp tổ hợp , hộp danh sách , hộp kiểm , nút tùy chọn , khung , nút lệnh , nút quay và hình ảnh . Để tìm hiểu thêm về tất cả các điều khiển, xem bài 26 đến 33.
Tạo biểu mẫu người dùng trong Excel
Biểu mẫu người dùng được tạo trong Cửa sổ dự án của Trình soạn thảo Visual Basic. Bạn cũng sẽ tìm thấy hộp công cụ cho phép bạn thêm các điều khiển vào biểu mẫu người dùng của mình trong Visual Basic Editor.
Trong Visual Basic Editor, bạn nhấp chuột phải vào cửa sổ dự án và bạn sẽ thấy menu này xuất hiện:
Chuyển đến "Chèn" và chọn "UserForm". Sau đó, bạn sẽ thấy như sau:
Ở bên phải bạn thấy biểu mẫu người dùng mà bạn vừa thêm vào sổ làm việc của bạn. Bên trái là hộp công cụ với tất cả các điều khiển mà bạn có thể thêm vào biểu mẫu người dùng của mình. Bạn có thể ẩn hộp công cụ đó bằng cách nhấp vào "X" và đưa nó trở lại bằng cách nhấp vào biểu tượng hộp công cụ hoặc bằng cách vào thanh menu "Xem / Hộp công cụ". Chúng tôi sẽ sử dụng hộp công cụ sau trong phần này.
Thuộc tính người dùng và mã VBA
Trong bài học này, chúng tôi sẽ xem xét một số thuộc tính của biểu mẫu người dùng, chúng tôi sẽ phát triển một số chương trình để gọi biểu mẫu người dùng và một số chương trình khác trong chính biểu mẫu người dùng.
Thuộc tính người dùng
Khi bạn nhấp đúp chuột vào tên biểu mẫu người dùng trong cửa sổ dự án của Visual Basic Editor, các cửa sổ thuộc tính hiển thị 35 thuộc tính của biểu mẫu người dùng. Trên trang web này, chúng tôi sẽ làm việc với hai trong số họ. Đối với 33 thuộc tính khác, hãy xem khóa học có thể tải xuống trên macro Excel (VBA)
Mã VBA trong UserForm
Trong bài 9 bạn đã học về các sự kiện. Các sự kiện kích hoạt các macro. Có nhiều sự kiện xảy ra xung quanh biểu mẫu người dùng. Ví dụ, một macro có thể bắt đầu khi biểu mẫu người dùng được hiển thị (hoặc được kích hoạt) và một macro khác có thể bắt đầu khi người dùng nhấp vào nút lệnh. Bạn sẽ tìm hiểu tất cả hai sự kiện này trong hướng dẫn có thể tải xuống trên macro Excel .
Nhãn trong VBA cho Excel
Trong hộp công cụ nhãn có biểu tượng này . Nhãn là một điều khiển thụ động có nghĩa là người dùng không bao giờ thực sự hành động trên nó. Nó ở đó để thông báo cho người dùng và gắn nhãn các điều khiển khác như hộp văn bản, hộp tổ hợp hoặc hộp danh sách.
Tính chất
Trong số các thuộc tính của nhãn là:
- WordWrap: Nếu bạn muốn viết nhiều hơn một dòng văn bản trong nhãn, hãy đặt thuộc tính này thành "True".
Thêm nhãn vào biểu mẫu người dùng
Để thêm nhãn vào biểu mẫu người dùng, bạn nhấp chuột trái vào biểu tượng của nó trong hộp công cụ. Bạn di chuyển con trỏ đến biểu mẫu người dùng, bạn bấm lại và nhãn xuất hiện. Sau đó bạn có thể thay đổi kích thước nó theo ý thích của bạn. Nếu bạn nhấp đúp vào biểu tượng nhãn trong hộp công cụ, bạn có thể nhấp vào biểu mẫu nhiều lần bạn cần nhãn. Khi bạn hoàn thành việc thêm nhãn, chỉ cần nhấp một lần vào biểu tượng nhãn của hộp công cụ.
Hộp văn bản trong VBA cho Excel
Trong hộp công cụ, biểu tượng hộp văn bản là : .
Hộp văn bản là điều khiển đơn giản nhất yêu cầu người dùng nhập. Người dùng nhập một cái gì đó trong đó và giá trị này sau đó có thể được sử dụng trong quy trình VBA của bạn. Bạn thường sẽ thêm một nhãn để đi kèm với hộp văn bản.
Đối với hầu hết các điều khiển bao gồm hộp văn bản VBA cho Excel, có các thuộc tính chung cho phép bạn đặt phông chữ, màu của phông chữ, màu nền, loại nền, loại đường viền và các tính năng thiết kế khác.
Như tên của nó, hộp văn bản mang văn bản. Để sử dụng nội dung của hộp văn bản dưới dạng số, để thêm ký hiệu đô la, số thập phân và các tính năng số khác, hãy xem hướng dẫn có thể tải xuống trên macro Excel (VBA) .
Thêm một hộp văn bản vào một biểu mẫu người dùng
Để thêm một hộp văn bản vào một biểu mẫu người dùng, bạn nhấp chuột trái vào biểu tượng của nó trong hộp công cụ. Bạn di chuyển con trỏ đến dạng người dùng, bạn bấm lại và hộp văn bản xuất hiện. Sau đó bạn có thể thay đổi kích thước nó theo ý thích của bạn. Nếu bạn nhấp đúp vào biểu tượng hộp văn bản trong hộp công cụ, bạn có thể nhấp vào biểu mẫu nhiều lần nếu bạn cần hộp văn bản. Khi bạn hoàn thành việc thêm các hộp văn bản, chỉ cần nhấp một lần vào biểu tượng hộp văn bản của hộp công cụ.
P
Các nút lệnh trong VBA cho Excel
Trong hộp công cụ, nút lệnh có biểu tượng này . Nút lệnh là một điều khiển rất tích cực và luôn có mã VBA đằng sau nó.
Các nút lệnh thường được đặt ở dưới cùng của biểu mẫu và phục vụ để hoàn thành giao dịch mà biểu mẫu đã được tạo. Chú thích của các nút này thường là "Đi", "Chạy", "Gửi", "Hủy", v.v.
Tính chất
Trong số các thuộc tính khác của nút lệnh là:
- WordWrap để có thể viết thêm một dòng trên một nút,
- ControlTipText tạo ra một hộp nhận xét nhỏ khi người dùng di chuyển chuột qua điều khiển. Bạn có thể sử dụng thuộc tính này để đưa ra lời giải thích và hướng dẫn về nút lệnh,
- ControlTipText tạo ra một hộp nhận xét nhỏ khi người dùng di chuyển chuột qua điều khiển. Bạn có thể sử dụng thuộc tính này để đưa ra lời giải thích và hướng dẫn về nút lệnh,
Thêm nút lệnh vào biểu mẫu người dùng
Để thêm nút lệnh vào biểu mẫu người dùng, bạn nhấp chuột trái vào biểu tượng của nó trong hộp công cụ. Bạn di chuyển con trỏ đến dạng người dùng, bạn bấm lại và nút lệnh xuất hiện. Sau đó bạn có thể thay đổi kích thước nó theo ý thích của bạn. Nếu bạn nhấp đúp vào biểu tượng nút lệnh trong hộp công cụ, bạn có thể nhấp vào biểu mẫu nhiều lần nếu bạn cần các nút lệnh. Khi bạn hoàn thành việc thêm các nút lệnh, chỉ cần nhấp một lần vào biểu tượng nút lệnh của hộp công cụ.
Mã VBA
Hầu hết các mã VBA (câu VBA) được tạo trong nút lệnh khi bạn phát triển các biểu mẫu người dùng đơn giản. Đây là hai bài tập tạo mã VBA trong nút lệnh.
Nút tùy chọn, hộp kiểm tra và khung
Trong hộp công cụ, nút tùy chọn có biểu tượng này , hộp kiểm có cái này và khung này .
Bạn không cần thêm nhãn để đi kèm với hộp kiểm hoặc nút tùy chọn vì chúng đi kèm với nhãn riêng.
Các hộp kiểm và các nút tùy chọn đều được sử dụng để cung cấp cho người dùng lựa chọn. Sự khác biệt chính giữa hộp kiểm và nút tùy chọn là nếu bạn có 5 hộp trên một biểu mẫu, người dùng có thể chọn tất cả 5 hộp kiểm nhưng chỉ có thể chọn một trong các nút tùy chọn.
Nếu bạn muốn tạo hai bộ nút tùy chọn, hãy đọc bên dưới trên khung và nút tùy chọn. Nếu bạn không muốn sử dụng khung để tạo các nhóm nút tùy chọn, bạn sẽ cần sử dụng thuộc tính "GroupName" của các nút tùy chọn. Tất cả các nút tùy chọn có cùng GroupName hoạt động cùng nhau.
Tính chất
- WordWrap để có thể viết thêm một dòng trong chú thích,
- ControlTipText tạo ra một hộp nhận xét nhỏ khi người dùng di chuyển chuột qua điều khiển. Bạn có thể sử dụng thuộc tính này để đưa ra lời giải thích và hướng dẫn về nút tùy chọn hoặc hộp kiểm.
- Đã bật và Hiển thị là các thuộc tính mà bạn có thể thay đổi theo chương trình để vô hiệu hóa hoặc hiển thị nút vô hình hoặc hộp kiểm theo lựa chọn trước đó trong một điều khiển khác của biểu mẫu người dùng.
- ControlTipText tạo ra một hộp nhận xét nhỏ khi người dùng di chuyển chuột qua điều khiển. Bạn có thể sử dụng thuộc tính này để đưa ra lời giải thích và hướng dẫn về nút tùy chọn hoặc hộp kiểm.
- Đã bật và Hiển thị là các thuộc tính mà bạn có thể thay đổi theo chương trình để vô hiệu hóa hoặc hiển thị nút vô hình hoặc hộp kiểm theo lựa chọn trước đó trong một điều khiển khác của biểu mẫu người dùng.
Khung
Khung cũng là một điều khiển thụ động. Khung được sử dụng để cải thiện bố cục của biểu mẫu người dùng. Bạn có thể sử dụng chúng xung quanh một nhóm các điều khiển có điểm chung.
Khung trở nên quan trọng hơn để quản lý các nút tùy chọn. Nếu bạn có hai bộ nút tùy chọn trên biểu mẫu người dùng và bạn không đặt chúng trong một khung tất cả chúng hoạt động cùng nhau và bạn chỉ có thể chọn một. Nếu bạn đặt từng bộ trong một khung, bạn có thể chọn một bộ trong mỗi bộ.
Khi bạn di chuyển một khung, tất cả các điều khiển của nó sẽ di chuyển với nó.
Hộp tổ hợp trong VBA cho Excel
Trước khi chúng tôi bắt đầu vào Hộp Combo
Sự khác biệt giữa hộp tổ hợp và hộp danh sách là hộp tổ hợp là danh sách thả xuống và người dùng có thể gửi một giá trị duy nhất từ danh sách thả xuống. Hộp danh sách hiển thị một số giá trị nhất định có hoặc không có thanh cuộn và người dùng có thể chọn một hoặc nhiều giá trị.
Nếu bạn đang tìm kiếm một danh sách thả xuống (còn gọi là danh sách kéo xuống) để sử dụng trên một bảng tính thông thường, hãy xem danh sách thả xuống Excel thân thiện và dễ sử dụng hơn trong trang web trên Excel.
Khi bạn nhấp đúp chuột vào hộp tổ hợp trong Trình soạn thảo Visual Basic, bạn sẽ thấy tất cả các thuộc tính của nó trong cửa sổ Thuộc tính .
Không cần lập trình để gửi danh sách các giá trị sẽ được cung cấp cho người dùng trong hộp tổ hợp. Tìm tài sản RowSource.
Thuộc tính RowSource:
Các giá trị sẽ xuất hiện trong danh sách thả xuống của hộp tổ hợp được gửi trong thuộc tính RowSource . Ví dụ: nếu giá trị của thuộc tính RowSource là Số dư! A1: A12 Các giá trị nằm trong ô A1 đến A12 của trang tính có tên Số dư sẽ được cung cấp dưới dạng lựa chọn cho người dùng nhấp vào mũi tên nhỏ của hộp tổ hợp.
Các quy tắc để gửi thuộc tính RowSource là tên của trang tính nơi danh sách nằm sau dấu chấm than (!), Địa chỉ của ô đầu tiên, dấu hai chấm và địa chỉ của ô cuối cùng.
LƯU Ý QUAN TRỌNG : nếu có một khoảng trắng hoặc ký tự đặc biệt trong tên của trang tính nơi danh sách cư trú, bạn phải bao quanh tên của trang tính bằng các trích dẫn đơn giản . Ví dụ: 'Số dư mới'! A1: A12 .
Liệt kê các hộp trong VBA cho Excel
Trước khi chúng tôi bắt đầu vào Hộp danh sách
Sự khác biệt giữa hộp tổ hợp và hộp danh sách là hộp tổ hợp là danh sách thả xuống và người dùng có thể gửi một giá trị duy nhất từ danh sách thả xuống. Hộp danh sách hiển thị một số giá trị nhất định có hoặc không có thanh cuộn và người dùng có thể chọn một hoặc nhiều giá trị.
Trong hộp công cụ, hộp danh sách có biểu tượng này .
Không cần lập trình để gửi danh sách các giá trị sẽ được cung cấp cho người dùng trong hộp tổ hợp. Tìm tài sản RowSource.
Thuộc tính RowSource:
Các giá trị sẽ xuất hiện trong danh sách thả xuống của hộp tổ hợp được gửi trong thuộc tính RowSource . Ví dụ: nếu giá trị của thuộc tính RowSource là Số dư! A1: A12 Các giá trị nằm trong ô A1 đến A12 của trang tính có tên Số dư sẽ được cung cấp dưới dạng lựa chọn cho người dùng nhấp vào mũi tên nhỏ của hộp tổ hợp.
Các quy tắc để gửi thuộc tính RowSource là tên của trang tính nơi danh sách nằm sau dấu chấm than (!), Địa chỉ của ô đầu tiên, dấu hai chấm và địa chỉ của ô cuối cùng.
LƯU Ý QUAN TRỌNG : nếu có một khoảng trắng hoặc ký tự đặc biệt trong tên của trang tính nơi danh sách cư trú, bạn phải bao quanh nó bằng các trích dẫn đơn giản . Ví dụ: 'Số dư mới'! A1: A12 .
Nút xoay Excel
Nút xoay
Trong hộp công cụ, nút quay có biểu tượng này .
Bạn có thể yêu cầu người dùng nhập giá trị trực tiếp vào hộp văn bản nhưng bạn có thể khiến mọi thứ trở nên phức tạp hơn một chút bằng cách sử dụng hộp văn bản và nút xoay.
Nút quay không thực sự được sử dụng bởi chính nó. Bởi vì nút quay không hiển thị giá trị của nó, nó thường được sử dụng với hộp văn bản. Hộp văn bản hiển thị một số và bằng cách nhấp vào mũi tên của nút quay, giá trị trong hộp văn bản được tăng (hoặc giảm) thêm 1, hoặc 5 hoặc 10 ... bởi bất kỳ giá trị nào được đặt trong các thuộc tính của spin nút.
Tính chất
Trong số các thuộc tính khác của các nút quay là:
- Min là giá trị tối thiểu của nút quay. Nó có thể âm
- Max là giá trị tối đa của nút quay. Nó có thể âm
- Nhỏ là giá trị của thay đổi khi người dùng nhấp vào mũi tên
- Lớn là giá trị của thay đổi khi người dùng nhấp vào thanh cuộn của nút xoay.
- Max là giá trị tối đa của nút quay. Nó có thể âm
- Nhỏ là giá trị của thay đổi khi người dùng nhấp vào mũi tên
- Lớn là giá trị của thay đổi khi người dùng nhấp vào thanh cuộn của nút xoay.
Điều khiển hình ảnh Excel
Kiểm soát hình ảnh
Có một điều khiển trong hộp công cụ gọi là "Hình ảnh". Trong điều khiển này, bạn có thể hiển thị tất cả các loại hình ảnh. Bạn đặt điều khiển hình ảnh trên biểu mẫu người dùng và bạn gửi ảnh trong thuộc tính "Ảnh". Hình ảnh trở thành một phần của điều khiển và định dạng người dùng.
Lắp hình ảnh
Điều đầu tiên mà bạn muốn làm là điều chỉnh hình ảnh trong điều khiển hình ảnh để làm cho kích thước của điều khiển thích ứng với kích thước của hình ảnh.
Khi bạn đang ở trong Visual Basic Editor và bạn chỉ cần nhấp vào một điều khiển hình ảnh, một khung hình xuất hiện xung quanh nó với 8 cáng (hình dưới). Nếu bạn nhấp đúp chuột vào cáng giữa (khi mũi tên hai đầu hiển thị) của bên phải hoặc ở giữa ở dưới cùng hoặc ở góc dưới bên phải, điều khiển hình ảnh sẽ thích ứng với kích thước của hình ảnh. Nhấp đúp vào bất cứ nơi nào khác sẽ đưa bạn đến mã VBA và sẽ không điều chỉnh kích thước điều khiển với kích thước hình ảnh.
Thuộc tính PictureSizeMode
Một thuộc tính khác của điều khiển hình ảnh là PictureSizeMode.
Nếu thuộc tính được đặt thành giá trị mặc định 0-frmPictureSizeModeClip, kích thước điều khiển có thể được thay đổi mà không thay đổi kích thước hình ảnh. Vì vậy, bạn chỉ có thể nhìn thấy một phần của hình ảnh hoặc có thể có một nền phía sau nó trong một màu clolor bạn có thể thay đổi theo ý muốn.
Nếu thuộc tính được đặt thành 1-frmPictureSizeModeStretch, hình ảnh sẽ được thay đổi kích thước như điều khiển. Hình ảnh lấp đầy sự kiểm soát.
Nếu thuộc tính được đặt thành 3-frmPictureSizeModeZoom, hình ảnh được thay đổi kích thước như điều khiển nhưng hình ảnh và nền có mặt.