Alinear barras personalizadas

13/09/2006 - 20:20 por Ivan | Informe spam
Hola a todos.

a ver si me podeis echar una mano con esta nueva duda:

tengo 4 barras de herramientas creadas en el evento open y eliminadas
en before_close. El problema viene cuando intento alinearlas en la
parte superior. Me explico:

me gustaria alinearlas en la parte superior de la ventana ( de momento
van debajo de una fila de barras integradas con algunos comandos de
excel, pero probablemente estas tambien las oculte, dejando solo las
personalizadas), una detras de otra.

lo he intentado con msoBarTop, pero me las coloca unas debajo de
otras. Tambien he probado a darlas una posicion determinada, pero
entonces creo que las considera flotantes y las coloca con barra de
titulo. Bueno he hecho alguna prueba mas con otras constantes , pero de
momento sin resultado. No se si existe alguna forma de "acoplar" varias
barras seguidas.

aqui va parte del codigo de WorkBook_Open con varias combinaciones que
he intentado, algunas puestas como comentario

Private Sub Workbook_Open()
Dim MiBarra1 As CommandBar, MiBarra2 As CommandBar
Dim MiBarra3 As CommandBar, MiBarra4 As CommandBar
Application.ScreenUpdating = False
Set MiBarra1 = Application.CommandBars.Add
With MiBarra1
.Name = "BarraVer"
.Position = msoBarTop
' .Top = 50
' .Left = 0
.Visible = True
End With
Set MiBarra2 = Application.CommandBars.Add
With MiBarra2
.Name = "BarraAcciones"
' .Position = msoBarTop
.Top = MiBarra1.Top
.Left = MiBarra1.Width
.Visible = True
' .Top = 24
' .Left = 339
End With
Set MiBarra3 = Application.CommandBars.Add
With MiBarra3
.Name = "BarraCambios"
.Top = MiBarra1.Top
.Left = MiBarra1.Width + MiBarra2.Width
' .Position = msoBarTop
.Visible = True
End With
Set MiBarra4 = Application.CommandBars.Add
With MiBarra4
.Name = "BarraActualizaciones"
' .Top = 76
' .Left = 0
' .Position = msoBarTop
.Visible = True
End With
Call AñadirBotonesABarras
'
'
End sub

Como siempre, si podeis echarme una mano os lo agradezco.

Un saludo y hasta pronto
Ivan

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
14/09/2006 - 05:35 | Informe spam
hola, Ivan !

tengo 4 barras de herramientas creadas en el evento open y eliminadas en before_close.
El problema... me gustaria alinearlas en la parte superior de la ventana
(de momento van debajo de una fila de barras integradas con algunos comandos de excel
pero probablemente estas tambien las oculte, dejando solo las personalizadas), una detras de otra.
lo he intentado con msoBarTop, pero me las coloca unas debajo de otras.
Tambien he probado a darlas una posicion determinada, pero entonces creo que las considera flotantes y las coloca con barra de titulo...



para que varias comandbars 'estacionadas' puedan 'compartir' la misma linea en su 'dock-area'...
es necesario utilizar la propiedad .RowIndex y... -> moverlas en orden inverso a como necesites que se 'estacionen [me explico]:
la barra que se muestra primero... es la mas recientemente asignada a una misma posicion '.RowIndex' [p.e.]

suponiendo 4 barras personalizadas, el siguiente codigo las manda a la misma linea estacionaria y las deja 'por orden'...

With Application
.CommandBars("barra4").Position = msoBarTop
.CommandBars("barra3").Position = msoBarTop
.CommandBars("barra3").RowIndex = .CommandBars("barra4").RowIndex
.CommandBars("barra2").Position = msoBarTop
.CommandBars("barra2").RowIndex = .CommandBars("barra3").RowIndex
.CommandBars("barra1").Position = msoBarTop
.CommandBars("barra1").RowIndex = .CommandBars("barra2").RowIndex
End With

saludos,
hector.
Respuesta Responder a este mensaje
#2 Ivan
14/09/2006 - 10:29 | Informe spam
Hola Hector Miguel.

Muchas gracias de nuevo

Un saludo y hasta pronto
Ivan
Respuesta Responder a este mensaje
#3 Gabriel Raigosa
30/09/2006 - 18:42 | Informe spam
Carpeta
Descripción
Dirección

1
** Microsoft Excel *
http://esnips.com/web/GabrielRaigosa

2
Archivos para usar en clase
http://esnips.com/web/RaigosaClase

3
Fechas y Horas
http://esnips.com/web/RaigosaFechasHoras

4
Formato y Formato Condicional
http://esnips.com/web/RaigosaFormatos

5
Foro Excel
http://esnips.com/web/ForoExcel

6
Funciones de Busqueda
http://esnips.com/web/RaigosaBusqueda

7
Funciones de Texto
http://esnips.com/web/RaigosaTexto

8
Funciones Financieras
http://esnips.com/web/RaigosaFinancieras

9
Funciones Logicas
http://esnips.com/web/RaigosaLogicas

10
Graficos con Excel
http://esnips.com/web/RaigosaGraficos

11
Grupo (Sabados)
Privado

12
Grupo (Viernes)
Privado

13
Grupo Excel Septiembre
Privado

14
Juegos con Excel
http://esnips.com/web/RaigosaJuegosExcel

15
Macros con Excel
http://esnips.com/web/Macros-con-Excel

16
Manuales Excel
http://esnips.com/web/RaigosaManuales

17
Paginas WEB
http://esnips.com/web/RaigosaPaginasExcel

18
Practicas - XLS
http://esnips.com/web/RaigosaPracticasXLS

19
Tablas Dinámicas
http://esnips.com/web/RaigosaTablasDinamicas

20
TEST
http://esnips.com/web/GabrielRaigosa-test

21
Validación
http://esnips.com/web/RaigosaValidacion

22
Varios
http://esnips.com/web/RaigosaVarios

23
VBA - Visual Basic para Aplicaciones
http://esnips.com/web/RaigosaVBA



Gabriel Raigosa
http://esnips.com/web/Raigosa
http://esnips.com/web/ForoExcel
"Ivan" escribió en el mensaje
news:
Hola a todos.

a ver si me podeis echar una mano con esta nueva duda:

tengo 4 barras de herramientas creadas en el evento open y eliminadas
en before_close. El problema viene cuando intento alinearlas en la
parte superior. Me explico:

me gustaria alinearlas en la parte superior de la ventana ( de momento
van debajo de una fila de barras integradas con algunos comandos de
excel, pero probablemente estas tambien las oculte, dejando solo las
personalizadas), una detras de otra.

lo he intentado con msoBarTop, pero me las coloca unas debajo de
otras. Tambien he probado a darlas una posicion determinada, pero
entonces creo que las considera flotantes y las coloca con barra de
titulo. Bueno he hecho alguna prueba mas con otras constantes , pero de
momento sin resultado. No se si existe alguna forma de "acoplar" varias
barras seguidas.

aqui va parte del codigo de WorkBook_Open con varias combinaciones que
he intentado, algunas puestas como comentario

Private Sub Workbook_Open()
Dim MiBarra1 As CommandBar, MiBarra2 As CommandBar
Dim MiBarra3 As CommandBar, MiBarra4 As CommandBar
Application.ScreenUpdating = False
Set MiBarra1 = Application.CommandBars.Add
With MiBarra1
.Name = "BarraVer"
.Position = msoBarTop
' .Top = 50
' .Left = 0
.Visible = True
End With
Set MiBarra2 = Application.CommandBars.Add
With MiBarra2
.Name = "BarraAcciones"
' .Position = msoBarTop
.Top = MiBarra1.Top
.Left = MiBarra1.Width
.Visible = True
' .Top = 24
' .Left = 339
End With
Set MiBarra3 = Application.CommandBars.Add
With MiBarra3
.Name = "BarraCambios"
.Top = MiBarra1.Top
.Left = MiBarra1.Width + MiBarra2.Width
' .Position = msoBarTop
.Visible = True
End With
Set MiBarra4 = Application.CommandBars.Add
With MiBarra4
.Name = "BarraActualizaciones"
' .Top = 76
' .Left = 0
' .Position = msoBarTop
.Visible = True
End With
Call AñadirBotonesABarras
'
'
End sub

Como siempre, si podeis echarme una mano os lo agradezco.

Un saludo y hasta pronto
Ivan
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida