Andrew cần, trong macro của mình, hiển thị một hộp thoại cho phép người dùng chuyển đổi các cửa sổ. Khi ai đó bấm vào menu Cửa sổ (trong Excel), các sổ làm việc có sẵn sẽ được liệt kê ở cuối menu. Đó 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 (11910) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003.

Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: