Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Problemas con los Menus en access 2007. (Ribbon)

390 views
Skip to first unread message

Jorge Gallardo

unread,
Sep 5, 2008, 8:34:27 AM9/5/08
to
Hola a todos.
tengo un problema con para crear menus personalizados en access 2007.
He seguido los pasos, de algunas web para crear los menus, y me he quedado
atascado y queria ver si alguno me puede orientar.

He creado la tabla USysRibbons
con los tres capos que se indica.
Id
RibbonName
RibbonXml

he introducido un codigo de ejemplo como xml, el cual me genera el menu
correspondiente en la barra de menus

He copiado un modulo que vi en un ejemplo para poder ejecutar a traves del
menu creado formularios que yo tengo en la base de datos.
pero cuando lo ejecuto me da el siguiente error.

* No se puede ejecutar la macro o la funcion de devolucion de llamada
onactionbutton.
Asegurese de que la macro o la funcionexiste y que utiliza los parametros
correctos.

He de decir que la base de datos de ejemplo esto funciona perfectamente,
pero en mi base de datos no.
y he copiado lo mismo, por lo que deduzco que me falta alguna chorrada que
no encuentro.

Os trasnfiero mi USysRibbons y el modulo.
-----------------------------------------
USysRibbons
-----------------------------------------
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" >
<ribbon startFromScratch="false">
<tabs>
<tab id="tab1" label="Color Picker">
<group id="grp1_1" label="Color Picker">
<gallery id="gal1_1_1"
label="Select Color" size="large" columns="5" rows="5"
screentip="Select Color" supertip="with a Gallery Color
Picker" imageMso="SmartArtChangeColorsGallery"
getItemImage="GetItemImageGallery"
getItemID="GetItemIDGallery"
onAction="OnActionGallery"
itemWidth="16" itemHeight="16"
getItemCount="GetItemCountGallery" >

<button id="SelOtherColor" imageMso="AppointmentColorDialog"
label="More ." onAction="OnActionButton" screentip=" More
colors"/>
</gallery>

<button id="btnInfo" size="large" label="F-compras"
screentip="Info"
supertip="About Sample Database" imageMso="F-compras"
onAction="OnActionButton" />
</group>
</tab>
</tabs>
</ribbon>

MODULO
-----------------------------------
basRibbonCallbacks
-----------------------------------
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" >
<ribbon startFromScratch="false">
<tabs>
<tab id="tab1" label="Color Picker">
<group id="grp1_1" label="Color Picker">
<gallery id="gal1_1_1"
label="Select Color" size="large" columns="5" rows="5"
screentip="Select Color" supertip="with a Gallery Color
Picker" imageMso="SmartArtChangeColorsGallery"
getItemImage="GetItemImageGallery"
getItemID="GetItemIDGallery"
onAction="OnActionGallery"
itemWidth="16" itemHeight="16"
getItemCount="GetItemCountGallery" >

<button id="SelOtherColor" imageMso="AppointmentColorDialog"
label="More ." onAction="OnActionButton" screentip=" More
colors"/>
</gallery>

<button id="btnInfo" size="large" label="F-compras"
screentip="Info"
supertip="About Sample Database" imageMso="F-compras"
onAction="OnActionButton" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>

Donde puede estar el fallo.

Yo lo que necesito es crear un menu donde pueda abrir los formularios que
tengo en mi base de datos y luego algunos informes.

Si alguien me puede facilitar un ejemplo mas claro os quedaria agradecido.

Un cordial saludo.

Para cualquier cosa ruego email: jorgeg...@ea4ayw.com

Chea

unread,
Sep 5, 2008, 9:58:44 AM9/5/08
to
OnActionButon, o cualquier otro nombre que asignes a la propiedad OnAction,
debe existir como procedimiento en un Módulo público y, en el procedimiento
debe estar el código que haga lo que tú quieras. Además, dependiendo del
control en el que te refieras al procedimiento, éste debe tener unos
parámetros concretos.

Sobre el diseño del Ribbon es indispensable contar con la página de Gunter
Avenius: http://www.accessribbon.com/ y no está de más descargarse su
utilidad para el diseño del Ribbon http://www.ribboncreator.de/en/, aunque
sea en versión Shareware.

En mi página http://jbchea.net/accessribbon.aspx puedes encontrar más
enlaces y alguna orientación básica.

--
Saludos

José Bengoechea Ibaceta [MS-MVP Access]
http://jbengoechea.com/
http://jbchea.net
http://geeks.ms/blogs/access


"Jorge Gallardo" <jorgeg...@ea4ayw.com> escribió en el mensaje de
noticias news:OjppDP1...@TK2MSFTNGP02.phx.gbl...

Jorge Gallardo

unread,
Sep 6, 2008, 5:24:14 PM9/6/08
to
Hola saludos.
Antes de nada gracias por la respuesta.
he de decirte que he estado visitando la pagina que me comentas, y de hay he
sacado los ejemplos.
Pero en ningun modulo de los ejemplos he visto esa accion.

Si tienes algun ejemplo mas claro y detallado que me puedas facilitar te
quedaria agradecido.

Lo que necesito es llamar a formularios e informes desde un menu creado en
la cinta Ribbon.
Se como crear los diferentes tipos de menus, pero luego no se como hacer la
llamada a formularios e informes.
Y encuentro informacion, pero como no estoy muy ducho en programacion vb se
me escapan algunas cosillas.

Un saludo cordial.


"Chea" <fo...@bengoecheaESTONO.net> escribió en el mensaje de noticias
news:8F61BAC2-BDF0-47BC...@microsoft.com...

Conrrad

unread,
Sep 6, 2008, 6:26:27 PM9/6/08
to
hola jorge,

Mucho mucho no te podré ayudar pues estoy empezando a trastear los
Ribbon. Tal y como te indicaba Chea el software de Gunter Avenius es
perfecto, además yo pagué la versión completa que por unos 15€ mas o
menos lo tienes ilimitados, merece la pena.

Bueno al turrón, si en las últimas opciones, antes de crear el Ribbon,
marcas la casilla "Add Select Case Statements for all controls in
basRibbonCallbacks" te hará el código mas comprensible a la hora de
programar eventos en tus botones del Ribbon.

Cuando te crea el Ribbon en tu db, vas a módulos y te habrá creado un
módulo con el siguiente nombre "basRibbonCallbacks", indaga dentro de él
y verás como tienes estructurado el código de cada uno de los botones de
una manera similar a esta:

Sub OnActionButton(control As IRibbonControl)
' Callbackname in XML File "onAction"

' Callback for event button click
' Callback fuer Button Click

Select Case control.ID

Case "btnClientes"
' In Tab: tabHome
' In Group: grpProducción
' In Menu: mnuMantenimiento
MsgBox "Button """ & control.ID & """ clicked" & vbCrLf & _
"Es wurde auf Button """ & control.ID & """ im
Ribbon geklickt", _
vbInformation
Case "btnTipoDeClientes"
' In Tab: tabHome
' In Group: grpProducción
' In Menu: mnuMantenimiento
MsgBox "Button """ & control.ID & """ clicked" & vbCrLf & _
"Es wurde auf Button """ & control.ID & """ im
Ribbon geklickt", _
vbInformation
End Select

End Sub


Hay mucho mas código pero a partir de la línea "Sub
OnActionButton(control As IRibbonControl)" empiezan a verse las acciones
de los botones.

Podrás apreciar que, entre Case y Case tienes el código que se ejecuta
al presionar los botones, en el ejemplo "Case "btnClientes"" hace
referencia a un botón clientes que he colocado en el Ribbon, dentro
tienes además comentado donde está situado el botón en cuestión en el
Ribbon y un MsgBox para que te muestre un texto al pulsar los botones
mientras no lo sustituyes por la acción que quieras realizar, que si
quieres abrir un formulario pues algo como:

DoCmd.OpenForm "TuFrm"......

Todo esto casi sin poder corroborarlo pues, como dije antes, no he
podido trastear mucho, pero tira por ahí a ver si te sirve de ayuda.

--
Saludos,

Angel Gil
conrrad69arrobagmailpuntocom
Cartagena

Jorge Gallardo

unread,
Sep 8, 2008, 3:41:55 PM9/8/08
to
Hola Conrad.
Gracias por la explicacion pero no consigo solucionar el problema.
He visto varios ejemplos, pero no logro dar con la solcion y siempre me dice
lo mismo.
He bajado la version trial del Ribbor crator, pero no consigo que me
funcione.
Ya he probado en dos ordenadores diferentes y siempre ocurre lo mismo.
Genera un error de windows y se cierra el programa.
Lo he probado tanto en xp como en vista.
He probado alguna otra version y ocurre lo mismo.
Alguna idea. ?
saludos y gracias.


"Conrrad" <conr...@gmail.com> escribió en el mensaje de noticias
news:Og6jb%23GEJH...@TK2MSFTNGP04.phx.gbl...

Conrrad

unread,
Sep 8, 2008, 6:44:53 PM9/8/08
to
Jorge Gallardo escribió:
Exactamente, ¿Que error te da?, ¿Has probado a crear el ribbon con el
software de Gunter en una db nueva? esto para descartar si el problema
es de tu db. Lo mismo en la tuya n, tras demasiadas pruebas tienes
demasiado código de varios ribbon y se puede estar haciendo un lío.
También podrías probar eliminando la tabla USysRibbons y los módulos que
te genera el software de Gunter y probar otra vez a ver que tal.

Jorge Gallardo

unread,
Sep 12, 2008, 3:56:35 PM9/12/08
to
Hola de nuevo a todos.
Gracias conrad por las respuestas.
Despues de mucho investigar y de quemarme los ojos con tanto codigo, ya he
descrifrado el problema.

Como no hay mejor cosa que hacer que borron y cuenta nueva.
He empezado desde 0 en una base de datos limpia para probar el ribbon.
Y EVUALA.
conseguido.

Ya tengo una de mis bases de datos con los nuevos menus.
Aunque un poco rudimentarios puesto que son desplegables, pero en fin, algo
es algo.

Ire viendo mas modelos a ver como adaptarlo y que sean mas esteticos.

Gracias por todo un saludo cordial.

Tengo otras preguntas, pero iniciare otro hilo.


"Conrrad" <conr...@gmail.com> escribió en el mensaje de noticias

news:eCXgDSgE...@TK2MSFTNGP05.phx.gbl...

Conrrad

unread,
Sep 12, 2008, 5:46:48 PM9/12/08
to
De nada :)

Jorge Gallardo escribió:

Message has been deleted
0 new messages