共用方式為


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

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

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

這個逐步解說將說明下列工作:

  • 建立 Excel 活頁簿專案。

  • 將文字加入至 Visual Studio 設計工具中裝載的工作表。

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

  • 建置和執行專案來進行測試。

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

注意事項注意事項

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

必要條件

您需要下列元件才能完成此逐步解說:

-

包含 Microsoft Office 開發者工具的 Visual Studio 2010 版本。 如需詳細資訊,請參閱[設定電腦以開發 Office 方案](bb398242\(v=vs.100\).md)。
  • Microsoft Office Excel 2007 或 Excel 2010。

建立專案

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

  1. 啟動 Visual Studio。

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

  3. 在 [範本] 窗格中,展開 [Visual C#] 或 [Visual Basic],然後展開 [Office]。

  4. 在展開的 [Office] 節點底下,選取 [2007] (如果您已安裝 Excel 2007) 或選取 [2010] 節點 (如果您已安裝 Excel 2010)。

  5. 在專案範本清單中,選取 [Excel 2007 活頁簿] 或 [Excel 2010 活頁簿]。

  6. 在 [名稱] 方塊中輸入 FirstWorkbookCustomization。

  7. 按一下 [確定]。

    [Visual Studio Tools for Office 專案精靈] 便會開啟。

  8. 選取 [建立新文件],然後按一下 [確定]。

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

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

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

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

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

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

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

使用設計工具關閉並重新開啟工作表

如果您在開發專案時有意或無意地關閉設計工具中的活頁簿或工作表,都可以將它重新開啟。

若要使用設計工具關閉並重新開啟工作表

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

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

    -或-

    在 [方案總管] 中,按兩下 Sheet1 程式碼檔。

在設計工具中將文字加入至工作表

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

若要使用設計工具將文字加入至工作表

  • 在開啟於設計工具中的工作表內,選取 [A1] 儲存格,然後輸入下列文字。

    This text was added by using the designer.

警告

如果將這行文字加入至 [A2] 儲存格,這個範例中的其他程式碼將會覆寫此文字。

以程式設計的方式將文字加入至工作表

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

  • Sheet1 類別的部分定義,此定義代表工作表的程式撰寫模型,而且會提供 Excel 物件模型的存取。 如需詳細資訊,請參閱Worksheet 主項目Word 物件模型概觀。 Sheet1 類別的其餘部分則定義於您不應修改的隱藏程式碼檔中。

  • Sheet1_Startup 和 Sheet1_Shutdown 事件處理常式。 當 Excel 載入和卸載您的自訂時,會呼叫這些事件處理常式。 請使用這些事件處理常式,在自訂載入時將它初始化,以及在自訂卸載時清除它所用的資源。 如需詳細資訊,請參閱 Office 專案中的事件

若要使用程式碼將第二行文字加入至工作表

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

    程式碼檔隨即在 Visual Studio 中開啟。

  2. 以下列程式碼取代 Sheet1_Startup 事件處理常式。 當 Sheet1 開啟時,此程式碼會將第二行文字加入至工作表。

    Private Sub Sheet1_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup
        Dim nr As Microsoft.Office.Tools.Excel.NamedRange = _
            Me.Controls.AddNamedRange(Me.Range("A2"), "NamedRange1")
        nr.Value2 = "This text was added by using code"
    End Sub
    
    private void Sheet1_Startup(object sender, System.EventArgs e)
    {
        Microsoft.Office.Tools.Excel.NamedRange nr =
            this.Controls.AddNamedRange(this.Range["A2", missing], "NamedRange1");
        nr.Value2 = "This text was added by using code";
    }
    

測試專案

若要測試您的活頁簿

  1. F5 建置及執行專案。

    當您建置專案時,程式碼會編譯為與活頁簿關聯的組件。 Visual Studio 會將活頁簿複本和組件置於專案的建置輸出資料夾中,而且會設定開發電腦中的安全性設定以執行自訂。 如需詳細資訊,請參閱 Office 方案建置程序概觀

  2. 確認活頁簿中出現下列文字:

    This text was added by using the designer.

    This text was added by using code.

  3. 關閉活頁簿。

清除專案

當您完成專案開發時,必須移除建置輸出資料夾中的檔案和建置程序建立的安全性設定。

若要清除開發電腦上已完成的專案

  • 在 Visual Studio 中,按一下 [建置] 功能表上的 [清除方案]。

後續步驟

現在您已經建立 Excel 的基本文件層級自訂,可以從下列主題進一步了解如何開發自訂:

請參閱

概念

Office 方案開發概觀

使用擴充物件自動化 Excel

其他資源

Excel 方案

文件層級自訂程式設計

Excel 物件模型概觀

Office UI 自訂

建置和偵錯 Office 方案

部署 Office 方案

Office 專案範本概觀