Excel - FaceID

 
Vista:

FaceID

Publicado por Jose (75 intervenciones) el 13/08/2008 22:29:50
Tengo el siguiente codigo de un Submenu
Como el pongo una Imgen ya probe con varios no me funciona ayuda...?

Dim cbSubMenu As CommandBarControl
Set cbSubMenu = cbMenu.Controls.Add(msoControlPopup, 1, , , True)
With cbSubMenu
.Caption = "Ejercicio Fiscal 200&1"
.Tag = "SubMenu1"
.BeginGroup = True
'.ID = 2950
'.cbMenu.ID = 71
'.cbMenu.FaceId = 71
End With

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:FaceID

Publicado por Jose  (75 intervenciones) el 14/08/2008 20:01:15
asi es, funciona en un Menu que por cierto hace algun tiempo te pregunte acerca de este Menu en Excel. el cual me comentaste que me pusiera a estudiar visual basic, segui tu consejo y consegui un manual y he estado poco a poco estudiando y claro surgen dudas con eso de los comandos pues estan en ingles y veces no se su significado, pero hay la llevamos. aunque ya me salio bien este Menu asi como lo queria el cual era mi ojetivo. Unicamente me falta poner esto de las "FaceId" por ejemplo:

en este es donde quiero el "FaceId"
Set cbSubSubMenu = cbSubMenu.Controls.Add(msoControlPopup, 1, , , True)
With cbSubSubMenu
.Caption = "No&minas"
.Tag = "SubMenu1"
.BeginGroup = True
End With

en este si lo pone no hay problema
With cbSubSubMenu.Controls.Add(msoControlButton, 1, , , True)
.Caption = "&Almacen General"
.OnAction = ThisWorkbook.Name & "!NOALGR01"
.Style = msoButtonIconAndCaption
.FaceId = 71 "en este si lo pone no hay problema"
.Enabled = True
End With

he observado que cuando son "ControlPopup" no me acepta el ".FaceId=71"
unicamente cuando son "ControlButton"

Gracias por tu ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FaceID

Publicado por Octavio Illescas (21 intervenciones) el 14/08/2008 20:56:10
Las propiedades del Pop up son diferentes me parece que no acepta el Face ID deberias consultar las propiedas de ambos controles
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Abraham Valencia
Val: 313
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

RE:FaceID

Publicado por Abraham Valencia (2415 intervenciones) el 14/08/2008 21:10:38
Bueno, en realidad mi respuestas fue porque ese "resto" de codigo que enviaste en un incio, pues, no corria-servia, por eso, ya que obviamente estab incompleto.

Para darte una mejor ayuda, seria bueno que hubieses enviado tu codigo completo (al menos todo el relacionado a tu "barra"), para si poder "ver" en donde estaba el error

Sobre los "msoControlPopup", pues, no tienen propiedad FaceID, por lo que no es que no te acepte el FaceID 71, sino que no acepta ninguno ;)

Que hacer? Pues se puede hacer algo parecido. Primero, por ejemplo, dibuja un ovalo en tu hoja1., luego usando "Personalizar", en "barra de menus de hojas" dale a "reestablecer" y corre la primera macro (Cortesia de Jaafar Triback de MArruecos... sino me equivoco)

Dim objButton As CommandBarControl
Dim objPopUp As CommandBarControl

Sub CreateSimpleMenu()

On Error Resume Next
Application.ScreenUpdating = False
With Application.CommandBars(1)

'\ Ensure no duplicates are created
If .Controls("&Nancy's Stuff") Is Nothing Then

'\Create Button with image
Set objButton = .Controls.Add(msoControlButton, before:=11)
With objButton
.Style = msoButtonIconAndCaption
.Caption = "&Nancy's Stuff"
ThisWorkbook.Sheets("Hoja1").Shapes(1).Copy
.PasteFace
' .OnAction = "ToggleControls"
End With

'\Create PopUp and hide it
Set objPopUp = .Controls.Add(msoControlPopup, before:=11)
With objPopUp
.Caption = "&Nancy's Stuff"
With .Controls.Add(msoControlButton)
.Style = msoButtonIconAndCaption
.Caption = "&HelpMe"
.PasteFace
.OnAction = "Help1"
End With
.Visible = False
End With
End If
End With
Application.ScreenUpdating = True

End Sub

Sub ToggleControls()

'\Show Popup & Hide Button upon clicikng the Button
With objPopUp
objButton.Visible = .Visible
If Not objButton.Visible Then
.Visible = True
.Execute
'\Hide PopUp & show Button back again after PopUp is used
Application.OnTime Now + TimeSerial(0, 0, 1), "ToggleControls"
Else
.Visible = False
End If
End With

End Sub

Sub Help1()
MsgBox "Hello Nancy !"
End Sub

Abraham
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FaceID

Publicado por Jose (75 intervenciones) el 14/08/2008 22:45:11
te envio el codigo completo


Option Explicit

Sub CreateMenu()

Dim cb As CommandBar
Dim cbMenu As CommandBarControl
Dim cbSubMenu As CommandBarControl
Dim cbSubSubMenu As CommandBarControl

DeleteCommandBar

Set cb = Application.CommandBars.Add("MyCommandBarName", msoBarTop, True, True)

Set cbMenu = cb.Controls.Add(msoControlPopup, , , , True)
With cbMenu
.Caption = "&EJERCICIO FISCAL"
.Tag = "MyTag"
.BeginGroup = False
"AQUI EL Face"
End With
'''''''''' EJERCICIO FISCAL 2001 ''''''''''''''''''''
Set cbSubMenu = cbMenu.Controls.Add(msoControlPopup, 1, , , True)
With cbSubMenu
.Caption = "Ejercicio Fiscal 200&1"
.Tag = "SubMenu1"
.BeginGroup = True
"AQUI EL Face"
End With
Set cbSubSubMenu = cbSubMenu.Controls.Add(msoControlPopup, 1, , , True)
With cbSubSubMenu
.Caption = "&Informativas"
.Tag = "SubMenu1"
.BeginGroup = True
"AQUI EL Face"
End With
With cbSubSubMenu.Controls.Add(msoControlButton, 1, , , True)
.Caption = "&Credito al Salario"
.OnAction = ThisWorkbook.Name & "!INCAS01"
.Style = msoButtonIconAndCaption
.FaceId = 71
.Enabled = True
End With
'''''''''' MODULO DE ELIMINAR ''''''''''
Set cbMenu = cb.Controls.Add(msoControlPopup, , , , True)
With cbMenu
.Caption = "ELIMINAR &MENU"
.BeginGroup = True
End With
If cbMenu Is Nothing Then Exit Sub

With cbMenu.Controls.Add(msoControlButton, 1, , , True)
.Caption = "Eliminar este &menú"
.OnAction = ThisWorkbook.Name & "!DeleteCommandBar"
.Style = msoButtonIconAndCaption
.FaceId = 67
.BeginGroup = True
End With

cb.Visible = True
Set cbSubSubMenu = Nothing
Set cbSubMenu = Nothing
Set cbMenu = Nothing
Set cb = Nothing
End Sub

Sub DeleteCommandBar()
On Error Resume Next
Application.CommandBars("MyCommandBarName").Delete
Application.CommandBars("Chart Menu Bar").Visible = True
On Error GoTo 0
End Sub

Sub Macroname()

'MsgBox "Workbooks.Open Filename:=(C:SIAFEJERCICIOS FISCALESEjercicio Fiscal 2001InformativasInformativa_Credito al Salario_2001.xls", vbInformation, ThisWorkbook.Name
'MsgBox "Workbooks.Open Filename:=(C:SIAFEJERCICIOS FISCALESEjercicio Fiscal 2008ConciliacionesConciliacion_Creditos_Infonavit_2008.xls", vbInformation, ThisWorkbook.Name
'MsgBox "Workbooks.Open Filename:=(C:SIAFEJERCICIOS FISCALESEjercicio Fiscal 2008NominasNomina_PAE_2008.xls", vbInformation, ThisWorkbook.Name
'MsgBox "Workbooks.Open Filename:="C:SIAFEJERCICIOS FISCALESEjercicio Fiscal 2008ConciliacionesConciliacion_Creditos_Infonavit_2008.xls"", vbInformation, ThisWorkbook.Name

End Sub

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Abraham Valencia
Val: 313
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

RE:FaceID

Publicado por Abraham Valencia (2415 intervenciones) el 14/08/2008 23:16:05
Estimado, ya te mencione en mi mensaje anterior que los msoControlPopup no tienen la propiedad FaceID. Revisa el codigo anteriro que mande (sin olvidar el ovalo o figura que desees) y veraz como "simularlo"

Abraham
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar