Chọn Phạm vi VBA của Excel

0
4

Trong một số trường hợp, bạn có thể muốn người dùng chọn phạm vi VBA của Excel trong khi hộp thoại được hiển thị. Một ví dụ về loại lựa chọn phạm vi VBA Excel này xảy ra trong hộp thoại Tạo Bảng, được hiển thị khi bạn chọn Trang chủ → Chèn → Bảng → Bảng. Hộp thoại Tạo Bảng có điều khiển bộ chọn phạm vi chứa dự đoán của Excel về phạm vi sẽ được chuyển đổi – nhưng bạn có thể sử dụng điều khiển này để thay đổi phạm vi bằng cách chọn các ô trong trang tính.

Để cho phép lựa chọn phạm vi VBA Excel trong hộp thoại của bạn, hãy thêm điều khiển RefEdit. Ví dụ sau hiển thị hộp thoại với địa chỉ phạm vi của khu vực hiện tại được hiển thị trong điều khiển RefEdit. Vùng hiện tại là khối các ô không chứa có chứa ô đang hoạt động. Người dùng có thể chấp nhận hoặc thay đổi phạm vi này. Khi người dùng nhấp vào OK, quy trình làm cho phạm vi đậm.

Ví dụ VBA Excel này giả sử như sau:

  • Bạn có một UserForm có tên UserForm1.
  • UserForm chứa một điều khiển CommandButton có tên OKButton.
  • UserForm chứa một điều khiển CommandButton có tên là CancButton.
  • UserForm chứa một điều khiển RefEdit có tên RefEdit1.

Mã được lưu trữ trong một mô-đun VBA và hiển thị ở đây. Mã này thực hiện hai điều: khởi tạo hộp thoại bằng cách gán địa chỉ của vùng hiện tại cho điều khiển RefEdit và hiển thị UserForm.

Sub BoldCells ()
'Thoát nếu bảng tính không hoạt động
Nếu TypeName (ActiveSheet) <> "Worksheet" thì thoát Sub
'Chọn khu vực hiện tại
ActiveCell.CienRegion.Select
'Khởi tạo điều khiển RefEdit
UserForm1.RefEdit1.Text = Lựa chọn. Địa chỉ
'Hiển thị hộp thoại
UserForm1.Show
Kết thúc phụ

Quy trình sau được thực hiện khi nhấp vào nút OK. Quy trình này thực hiện một số kiểm tra lỗi đơn giản để đảm bảo rằng phạm vi được chỉ định trong điều khiển RefEdit là hợp lệ.

Tiểu OKButton_Click ()
Khi gặp lỗi GoTo BadRange
Phạm vi (RefEdit1.Text) .ont.Bold = True
Dỡ bỏ UserForm1
Thoát Sub
BadRange:
MsgBox "Phạm vi được chỉ định không hợp lệ."
Kết thúc phụ

Nếu xảy ra lỗi trong Excel VBA (rất có thể là thông số phạm vi không hợp lệ trong điều khiển RefEdit), mã sẽ nhảy sang nhãn BadRange và hộp thông báo được hiển thị. Hộp thoại vẫn mở để người dùng có thể chọn một phạm vi khác.

Xem thêm: 10 tài nguyên trợ giúp cho Excel VBA

Khóa học VBA Excel tại Hà Nội

LEAVE A REPLY

Please enter your comment!
Please enter your name here