Andrew necesita, en su macro, mostrar un cuadro de diálogo que permita al usuario cambiar de ventana. Cuando alguien hace clic en el menú Ventana (en Excel), los libros de trabajo disponibles se enumeran en la parte inferior del menú. Eso es lo que Andrew debe mostrar en el cuadro de diálogo. Se pregunta si hay un cuadro de diálogo integrado para hacer esto o si necesita crear el suyo propio.

La respuesta corta es que no hay un cuadro de diálogo integrado para realizar esta tarea. Sin embargo, puede crear fácilmente el suyo propio. Aquí hay un ejemplo simple:

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

Todo esto hace es crear una lista de los nombres de cada ventana en su sistema. Los presenta en un InputBox y luego cambia a cualquier ventana que el usuario haya seleccionado.

Si está buscando diferentes formas de presentar la misma información, puede enlazar: / excel-Seeing_All_Open_Workbook_Names [consulte este consejo] `.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (11910) se aplica a Microsoft Excel 97, 2000, 2002 y 2003.

Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:

link: / excelribbon-Switching_Windows_in_a_Macro [Cambio de ventanas en una macro].