Método Application.LoadCustomUI (Access)
Carga el código XML que representa una cinta de opciones personalizada.
Sintaxis
expresión. LoadCustomUI (CustomUIName, CustomUIXML)
Expresión Expresión que devuelve un objeto Application .
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
CustomUIName | Obligatorio | String | Nombre que se usará para identificar la cinta de opciones personalizada. |
CustomUIXML | Obligatorio | String | Código XML que define la cinta de opciones personalizada. |
Comentarios
Para crear y poner a disposición para el acceso a la cinta de opciones, primero debe crear un módulo en la base de datos con un procedimiento que llama al método LoadCustomUI, pasando el nombre de la cinta de opciones y el formato de personalización XML. El código XML puede provenir de un objeto Recordset creado a partir de una tabla, de un origen externo a la base de datos (como un archivo XML que se debe analizar en un valor de tipo String) o de un código XML incrustado directamente dentro del procedimiento.
Puede realizar varias cintas de opciones disponibles mediante el uso de varias llamadas al método LoadCustomUI, pasando código XML diferente, siempre que el nombre de cada cinta de opciones y el atributo id de las fichas que componen la cinta de opciones son únicos.
Una vez completado el procedimiento, cree una macro AutoExec que llame al procedimiento con la acción RunCode. De este modo, cuando se inicia la aplicación, el método LoadCustomUI se ejecuta automáticamente y todas las cintas personalizadas estarán disponibles para la aplicación.
Ejemplo:
En el ejemplo de código siguiente se crea un conjunto de registros de cualquier tabla que contiene la palabra "Cintas" en su nombre. A continuación, llama al método LoadCustomUI para cargar las cintas de opciones para que estén disponibles para la base de datos. Por último, se cierra el conjunto de registros y la referencia al objeto de base de datos.
Function LoadRibbons()
Dim i As Integer
Dim db As DAO.Database
Set db = Application.CurrentDb
For i = 0 To (db.TableDefs.Count - 1)
If (InStr(1, db.TableDefs(i).Name, "Ribbons")) Then
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset(db.TableDefs(i).Name)
rs.MoveFirst
While Not rs.EOF
Application.LoadCustomUI rs("RibbonName").Value, rs("RibbonXml").Value
rs.MoveNext
Wend
rs.Close
Set rs = Nothing
End If
Next i
db.Close
Set db = Nothing
End Function
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.