You are here: Home > Access - Ribbons > Load Ribbons Into The Database > ... Loading ribbons using any ADP table
... Loading ribbons using any ADP table
Create a new ADP table named e.g.:"Ribbons" with following fields:
Enter a unique "RibbonName" and the appropriate XML in field "RibbonXML".
In a standard module create the new function "LoadRibbons":
Public Function LoadRibbons()
'Load ribbons into the database
On Error GoTo Error1
Dim strSQL As String
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset
strSQL = "SELECT * FROM [Ribbons]; "
' [Ribbons] has to be replaced by your table name.
cnn.Open CurrentProject.Connection
rst.Open strSQL, cnn, adOpenDynamic, adLockOptimistic
Do Until rst.EOF
Application.LoadCustomUI _
rst("RibbonName").Value, rst("RibbonXml").Value
rst.MoveNext
Loop
Error1_Exit:
On Error Resume Next
rst.Close
Set rst = Nothing
cnn.Close
Set cnn = Nothing
Exit Function
Error1:
Select Case Err
Case 32609
' Ribbon already loaded
Case Else
MsgBox "Error: " & Err.Number & vbCrLf & _
Err.description, vbCritical, _
"Error", Err.HelpFile, Err.HelpContext
End Select
Resume Error1_Exit
End Function
Create a macro named "AutoExec" which will be run when you open the database:
|
Action: |
RunCode |
|
Function Name: |
LoadRibbons() |
Re-start the database.
Assign the ribbon for this database:
"Office Button" / Button "Access-Options" / "Current Database" / "Ribbon and Toolbar Options" / "Ribbon Name:" select the ribbon that should be loaded when you open the database.
After another re-start of the database your ribbon will be displayed.

