Andrew necesita mostrar un cuadro de diálogo en su macro que le permita al usuario cambiar de ventana. Cuando alguien muestra la pestaña Ver de la cinta y hace clic en la herramienta Cambiar Windows, muestra los libros de trabajo disponibles a los que el usuario puede cambiar. 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 vincular: / excelribbon-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 (11911) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.

Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:

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