Andrew cần hiển thị một hộp thoại trong macro của mình cho phép người dùng chuyển đổi các cửa sổ. Khi ai đó hiển thị tab Xem của ruy-băng và nhấp vào công cụ Chuyển Windows, nó sẽ hiển thị các sổ làm việc có sẵn mà người dùng có thể chuyển sang. Đó là những gì Andrew cần hiển thị trong hộp thoại. Anh ta tự hỏi liệu có một hộp thoại tích hợp sẵn để thực hiện việc này hay không, hoặc liệu anh ta có cần tạo hộp thoại của riêng mình hay không.

Câu trả lời ngắn gọn là không có hộp thoại tích hợp để thực hiện tác vụ này. Tuy nhiên, bạn có thể dễ dàng tạo của riêng mình. Đây là một ví dụ đơn giản:

Sub SwitchWindows()

Dim i As Integer     Dim n As Integer     Dim s As String     Dim v As Variant

n = Windows.Count     s = "Choose Window from:"

For i = 1 To n         s = s & Chr(10) & i & ")  " & Windows(i).Caption     Next     s = s & Chr(10) & "Enter a number from 1 to " & n     v = Application.InputBox(prompt:=s, Type:=2)

i = Val(v)

If i >= 1 And i <= n Then         Windows(i).Activate     End If End Sub

Tất cả những việc này là tạo một danh sách tên cho mỗi cửa sổ trong hệ thống của bạn. Nó trình bày chúng trong một InputBox, và sau đó chuyển sang bất kỳ cửa sổ nào mà người dùng đã chọn.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (11911) áp dụng cho Microsoft Excel 2007, 2010, 2013 và 2016.

Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện menu cũ hơn của Excel tại đây: