[AccessD] Ribbon

Bill Benson bensonforums at gmail.com
Tue Apr 29 22:20:13 CDT 2014


Hi Anita, I have actually never used this but your post got me reading:
http://msdn.microsoft.com/en-us/library/office/ff198313(v=office.15).aspx .
As you pointed out, XML can be loaded through VBA dynamically. But you did
not state where or how you called the LoadCustomUI method. I tried this out
but got an error message that my customization was already loaded. Here is
what I did to recreate this situation: 

(1) I copied uSysRibbons to a new table called MyCustomization
(2) I deleted all the records in uSysRibbons.
(3) I deleted the value in the drop down in the startup options
	File / Options  / Current Database / Ribbon and Toolbar Options
setting
(4) I closed and re-opened the database, observing that there was nothing in
the
	File / Options  / Current Database / Ribbon and Toolbar Options
setting.
(5) I created a public function in a standard module:

	Function MyAutoOpen()
	        On Error Resume Next
	        Application.LoadCustomUI _
	           CustomUIName:="MyHide", _
	           CustomUIXML:= _
	           DLookup("RibbonXML", "MyCustomization", "RibbonName =
'MyHide'")
	        If Err.Number <> 0 Then MsgBox Err.Description
	        On Error GoTo 0
	End Function

(6) I created an AutoExec macro called MyAutoOpen and saved the module. 
(7) I closed and re-opened the database.

	"RibbonReportPDF.accdb cannot load customization 'MyHide'. This
customization name was already loaded"


Additional remarks:
(a) There does not seem to be a requirement to have an ID field, that was
just someone's convention.
(b) If you use the uSysRibbons table, it causes the ribbons to be selectable
in the database options - so I would advocate using a different table or, as
you have done, use code.
(c) If I ever get this to work, would not a good place to put the
LoadCustomUI method be in the Activate event of each Form and Report, to
prevent inappropriate ribbons when the database's Document Window Option is
set to Tabbed Documents?


-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Anita Smith
Sent: Tuesday, April 29, 2014 8:17 PM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] Ribbon

Ok this is the crux of the method.

A system table USysRibbons (that you create yourself - or copy form the link
below) holds the Ribbon Info. You have to enable viewing of system objects
in the Options/Current Database/Navigation to see this table.
This table has 3 fields
ID
RibbonName
RibbonXML

Once this table is in the database it is automatically loaded when the
program loads and the ribbons within it can be used on forms and reports. 

I have two ribbons in mine - one that essentially hides the normal ribbon
and a print preview ribbon.

As for the XML it is not too hard to suss out once you have a sample to look
at.

Anyhow here is the link to the file download where you can see this
demonstrated:

http://www.kallal.ca/msaccess/DownLoad.htm

The one to get is - Access 2007 report ribbon example (with PDF and email).

I had to do it a bit differently as I have an adp with SQL server back end -
I had to create a regular sql table and load the ribbons with code manually
- not too hard but a little more work.

Anita Smith

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence
Sent: Wednesday, 30 April 2014 9:52 AM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] Ribbon

Hi Anita:

Please do. :-)

Jim

----- Original Message -----
From: "Anita Smith" <anita at ddisolutions.com.au>
To: "Access Developers discussion and problem solving"
<accessd at databaseadvisors.com>
Sent: Tuesday, April 29, 2014 4:47:38 PM
Subject: [AccessD]  Ribbon

Hi fellow earthlings,
While solving a problem one of my users have encountered after updating to
Access 2010 runtime I came across some nifty ribbon shenanigans that I have
filed under useful stuff.

Her problem was that the Access 2010 runtime Print Preview toolbar was
missing exports to Word and Excel among other items. I had no option than to
dive into research on  how to solve this highly annoying 'feature'. Anyhow -
I came across a way to quickly create custom ribbons using a system table
and XML. In no time I had a new Print Preview Ribbon up and running and as
an added bonus I also got rid of the main ribbon for the whole application
using this method.

As I have not had time to read and follow all AccessD threads, I don't know
if this is common knowledge here.

Anyhow - I'll be happy to elaborate further should anyone have a need.

Anita Smith

-- 
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com
-- 
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com

-- 
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com



More information about the AccessD mailing list