Volver a los viejos menús de Excel
Cuando Excel 2007 salió al mercado, los menús clásicos fueron sustituidos por la cinta de opciones. Pero esto no es realmente cierto. Los viejos menús siguen ocultos tras la nueva cara de Excel. Te presentamos una macro con la que puedes dejar de añorar los comandos de la barra de herramientas Estándar, tal como los conocimos cuando comenzamos a trabajar con Excel.
Private Sub ShowOldStyleMenus()
On Error Resume Next
Dim cBar As CommandBar
Dim cBarCtrl As CommandBarControl
Dim sMenuName As String
Dim sToolbarName As String
Dim iMenu As Integer
sMenuName = "Viejo estilo de menú"
sToolbarName = "Barra el herramientas de estilo"
CommandBars(sMenuName).Delete
Set cBar = CommandBars.Add(sMenuName, , , True)
With cBar
.Visible = True
For iMenu = 1 To 10
Set cBarCtrl = .Controls.Add(Type:=msoControlPopup, ID:=30001 + iMenu)
Next iMenu
Set cBarCtrl = .Controls.Add(Type:=msoControlPopup, ID:=30022) 'Gráfico
Set cBarCtrl = .Controls.Add(Type:=msoControlPopup, ID:=30177) 'Autoformas
End With
CommandBars(sToolbarName).Delete
Set cBar = CommandBars.Add(sToolbarName, , , True)
With cBar
.Visible = True
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=2520) 'Nuevo
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=23) 'Abrir
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=3) 'Guardar
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=4) 'Imprimir
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=109) 'Vista previa
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=2) 'Ortografia
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=21) 'Cortar
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=19) 'Copiar
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=22) 'Pegar
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=108) 'Copiar formato
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=210) 'Ordenar ascendente
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=211) 'Ordenar descendente
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=984) 'Ayuda
Set cBarCtrl = .Controls.Add(Type:=msoControlComboBox, ID:=1728) 'Fuente
Set cBarCtrl = .Controls.Add(Type:=msoControlComboBox, ID:=1731) 'Tamaño de la fuente
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=113) 'Negrita
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=114) 'Cursiva
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=115) 'Subrayado
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=120) 'Alinear texto a la izquierda
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=122) 'Centrar
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=121) 'Alinear texto a la derecha
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=402) 'Combinar y centrar
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=395) 'Formato de número de contabilidad
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=396) 'Estilo porcentual
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=397) 'Estilo millares
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=398) 'Aumentar decimales
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=399) 'Disminuir decimales
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=3162) 'Disminuir sangría
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=3161) 'Aumentar sangría
End With
Set cBar = Nothing
Set cBarCtrl = Nothing
On Error GoTo 0
End SubTambién sería posible conseguir estos resultados utilizando XML, pero la ventaja de hacerlo con VBA es que podemos copiarlo y pegarlo en cualquier módulo de un libro de trabajo
Si te ha parecido interesante, comparte: Compartir
