一.建立功能區
一、XML
首先,要確定功能區要包含的內容,本文假設,要建立如下圖所示的功能區。

其中:
- 打開羅斯文商貿(Access 2007 示例數據庫中的 Home 窗體)
- 壓縮和修復數據庫(Access 2007 系統功能)
- 關閉數據庫(調用回調函數,實現關閉當前數據庫)
並且在數據庫打開時就加載這個功能區。
為了實現上述功能,需要建立如下的 XML 內容:
1

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="onLoadRibbon">
2

<ribbon startFromScratch="true">
3

<fileMenu>
4

<button idMso="OpenDatabase" visible="false"/>
5

<button idMso="CloseDatabase" visible="false"/>
6

<button idMso="NewDatabase" visible="false"/>
7

<button idMso="SaveAs" visible="false"/>
8

<splitButton idMso="AccessSaveAsMenu" visible="false"/>
9

</fileMenu>
10

<tabs>
11

<tab id="tabMain" label="Ribbon 測試程序">
12

<group id="grpHome" label="Home">
13

<button id="cmdHome" label="打開羅斯文商貿" imageMso="MeetingsWorkspace" size="large" onAction="onOpenFormEdit" tag="Home"/>
14

<button idMso="CompactDatabase" size="large"/>
15

<button id="cmdClose" label="關閉數據庫" imageMso="CloseDatabase" size="large" onAction="onCloseDatabase"/>
16

</group>
17

</tab>
18

</tabs>
19

</ribbon>
20

</customUI>
在第一行指明自定義功能區的架構為 http://schemas.microsoft.com/office/2006/01/customui 。
第二行的“startFromScrath="true"”表示關閉原來的功能區。
<fileMenu>節點描述 Access 文件菜單。
<tabs>節點描述自定義功能區的分組和分組中的按鈕等。
二、編寫 XML
可以使用任意的本文編輯器來編寫 XML,但是使用 Visual Studio 2005 或者 Visual Web Developer 2005 速成版這樣的工具來得更為方便快捷,並且在指定 customUI功能區架構後,能夠方便使用智能提示功能方便快捷的書寫功能區XML,下面以 Visual Studio 2005 為例來說明如何編寫功能區XML。
首先,從 http://officeblogs.net/UI/customUI.xsd 下載 customUI 的架構文件。然後打開 Visual Studio 2005,然後文件菜單上點擊[新建文件],選擇[XML 文件],點擊[打開],如下圖:

然後,刪除文件中的“<?xml version="1.0" encoding="utf-8"?>” 。

打開 XML 文檔屬性,選擇[架構]如下圖:

在 XSD 架構對話框中,添加上面下載回來的 customUI.xsd。

這樣就能使用智能提示功能,快速地編寫功能區XML。
