共用方式為


逐步解說:建立 Excel 的第一個文件層級自訂

此入門逐步解說示範如何建立 Microsoft Office Excel 的文件層級自訂。 您在此類解決方案中建立的功能只有在特定活頁簿開啟時才能使用。 您無法使用文件層級自訂來進行全應用程式的變更,例如,在任何活頁簿開啟時顯示新的功能區索引標籤。

適用於: 本主題中的資訊適用於 Excel 的文件層級專案。 如需詳細資訊,請參閱 Office 應用程式和專案類型所提供的功能

本逐步解說將說明下列工作:

  • 建立 Excel 活頁簿專案。

  • 將文字新增至裝載在 Visual Studio 設計工具中的工作表。

  • 撰寫使用 Excel 物件模型的程式碼,在開啟自訂工作表時將文字新增至自訂工作表。

  • 建置並執行專案以測試它。

  • 清除已完成的專案,以從開發電腦移除不必要的組建檔案和安全性設定。

    備註

    在下列指示的某些 Visual Studio 使用者介面項目中,您的電腦可能會顯示不同的名稱或位置: 您所擁有的 Visual Studio 版本以及使用的設定會決定這些項目。 如需詳細資訊,請參閱 個人化 IDE

先決條件

您需要下列組件才能完成本步驟解說:

建立專案

在 Visual Studio 中建立新的 Excel 活頁簿專案

  1. 啟動 Visual Studio。

  2. 在 [檔案] 功能表上,指向 [新增],然後按一下 [專案]。

  3. [建立新專案 ] 對話方塊中,選取 Excel VSTO 活頁簿 專案。

    備註

    您也可以在 [ 建立新專案 ] 對話方塊頂端的 [搜尋] 文字方塊中輸入 Office 產品的名稱來搜尋範本。 例如,鍵入 Excel 將顯示 Excel 的所有專案範本。 您也可以篩選範本清單,以僅顯示 Office 的範本,方法是在 [專案類型] 下拉式方塊中選取 [Office ]。 如需詳細資訊,請參閱 在 Visual Studio 中建立新專案

  4. [下一步]。

  5. [設定您的新專案] 對話方塊的 [名稱] 方塊中輸入 FirstWorkbookCustomization,然後按一下 [建立]。

  6. Visual Studio Tools for Office 專案精靈中選取 [建立新檔],然後按一下 [確定]。

    • Visual Studio 會建立 FirstWorkbookCustomization 專案,並將下列檔案新增至專案。

    • FirstWorkbookCustomization.xlsx - 代表專案中的 Excel 活頁簿。 包含所有工作表和圖表。

    • Sheet1 (Visual Basic 的 .vb 檔案或 Visual C# 的 .cs 檔案) - 提供活頁簿中第一個工作表的設計介面和程式碼的工作表。 如需詳細資訊,請參閱 工作表主機項目

    • Sheet2 (Visual Basic 的 .vb 檔案或 Visual C# 的 .cs 檔案) - 提供活頁簿中第二個工作表的設計介面和程式碼的工作表。

    • Sheet3 (Visual Basic 的 .vb 檔案或 Visual C# 的 .cs 檔案) - 提供活頁簿中第三個工作表的設計介面和程式碼的工作表。

    • ThisWorkbook (Visual Basic 的 .vb 檔案或 Visual C# 的 .cs 檔案) - 包含活頁簿層級自訂的設計介面和程式碼。 如需詳細資訊,請參閱 活頁簿主機項目

      Sheet1 程式碼檔會在設計工具中自動開啟。

在設計工具中關閉並重新開啟工作表

如果您在開發專案時,刻意或不小心關閉設計工具中的活頁簿或工作表,您可以重新開啟它。

在設計工具中關閉並重新開啟工作表

  1. 按一下設計工具視窗的 [關閉] 按鈕 (X) 來關閉活頁簿。

  2. [方案總管] 中,以滑鼠右鍵按一下 Sheet1 程式碼檔,然後按一下 [檢視設計工具]。

    - 或 -

    方案總管 中,雙擊 Sheet1 程式碼檔案。

在設計工具中將文字新增至工作表

您可以修改設計工具中開啟的工作表,以設計自訂的使用者介面 (UI)。 例如,您可以將文字新增至儲存格、套用公式或新增 Excel 控制項。 如需如何使用設計工具的詳細資訊,請參閱 Visual Studio 環境中的 Office 專案

使用設計工具將文字新增至工作表

  1. 在設計工具中開啟的工作表中,選取儲存格 A1,然後輸入下列文字。

    此文字是使用設計工具新增的。

警告

如果您將此行文字新增至儲存格 A2,則會在此範例中的其他程式碼覆蓋它。

以程式設計方式將文字新增至工作表

接下來,將程式碼新增至 Sheet1 程式碼檔案。 新程式碼使用 Excel 的物件模型將第二行文字新增至活頁簿。 根據預設,Sheet1 程式碼檔案包含下列產生的程式碼:

  • 類別的 Sheet1 部分定義,代表工作表的程式設計模型,並提供對 Excel 物件模型的存取。 如需詳細資訊,請參見 工作表主機項目Word 物件模型概觀。 類別的 Sheet1 其餘部分定義在您不應修改的隱藏程式碼檔中。

  • Sheet1_StartupSheet1_Shutdown 事件處理常式。 當 Excel 載入和卸載您的自訂時,會呼叫這些事件處理常式。 使用這些事件處理常式,在載入自訂時起始設定自訂,並在卸載自訂時清除自訂所使用的資源。 如需詳細資訊,請參閱 Office 專案中的事件

使用程式碼將第二行文字新增至工作表

  1. [方案總管] 中,以滑鼠右鍵按一下 [Sheet1],然後按一下 [ 檢視程式碼]。

    程式碼檔會在 Visual Studio 中開啟。

  2. 請將 Sheet1_Startup 事件處理程序替換為以下程式碼。 開啟 Sheet1 時,此程式碼會將第二行文字新增至工作表。

    private void Sheet1_Startup(object sender, System.EventArgs e)
    {
        Microsoft.Office.Tools.Excel.NamedRange nr =
            this.Controls.AddNamedRange(this.Range["A2"], "NamedRange1");
        nr.Value2 = "This text was added by using code";
    }
    

測試專案

測試活頁簿

  1. F5 來建置並執行您的專案。

    當您建置專案時,程式碼會編譯成與活頁簿相關聯的組件。 Visual Studio 會將活頁簿和元件的複本放在專案的建置輸出資料夾中,並在開發電腦上設定安全性設定,以執行自訂。 如需詳細資訊,請參閱 建置 Office 解決方案

  2. 在活頁簿中,確認您看到下列文字。

    此文字是使用設計工具新增的。

    此文字是使用程式碼新增的。

  3. 關閉活頁簿。

清理專案

當您完成開發專案時,您應該移除建置輸出資料夾中的檔案,以及建置程式所建立的安全性設定。

在開發電腦上清理已完成的專案

  1. 在 Visual Studio 的 [建置] 功能表上,按一下 [清除解決方案]。

後續步驟

現在您已建立 Excel 的基本文件層級自訂,您可以從下列主題深入瞭解如何開發自訂: