<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # Excel VBA 子例程:如何使用示例調用 Sub > 原文: [https://www.guru99.com/vba-functions-subroutine.html](https://www.guru99.com/vba-functions-subroutine.html) ## 什么是子程序? 子例程是一段代碼,它執行特定的任務并且不返回結果。 子例程用于將大段代碼分解為可管理的小部分。 假設您已經創建了一個帶有文本框的用戶界面,用于接受用戶輸入數據。 您可以創建一個子例程,以清除文本框的內容。 子例程在這種情況下是合適的,因為您不想返回任何結果。 在本教程中,您將學習- * [為什么使用子例程](#2) * [命名子例程和函數的規則](#3) * [VBA 子例程語法](#4) * [如何在 VBA 中調用子例程](#5) ## 為什么使用子例程 * **將代碼分解為易于管理的小代碼**:一個普通的計算機程序具有成千上萬的源代碼行。 這引入了復雜性。 子例程通過將程序分解為可管理的小代碼段來幫助解決此問題。 * **代碼可重用性**。 假設您有一個需要訪問數據庫的程序,該程序中幾乎所有窗口都需要與數據庫進行交互。 您可以創建一個處理所有數據庫交互的函數,而不是為這些窗口編寫單獨的代碼。 然后,您可以從所需的任何窗口調用它。 * **子例程和函數是自記錄**。 假設您有一個函數 calculateLoanInterest,另一個函數是 connectToDatabase。 只需查看子例程/函數的名稱,程序員就可以知道程序的作用。 ## 子例程和函數的命名規則 要使用子例程和函數,必須遵循一組規則。 * 子例程或函數名稱不能包含空格 * 子例程或函數名稱應以字母或下劃線開頭。 它不能以數字或特殊字符開頭 * 子例程或函數名稱不能是關鍵字。 關鍵字是在 VBA 中具有特殊含義的單詞。 諸如 Private,Sub,Function 和 End 等之類的詞都是關鍵字的示例。 編譯器將它們用于特定任務。 ## VBA 子例程語法 您將需要在 Excel 中啟用“開發人員”選項卡,以遵循此示例。 如果您不知道如何啟用“開發人員”選項卡,請閱讀有關 VBA 操作員的教程 **此處為語法** ``` Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String) 'do something End Sub ``` 語法說明 | **代碼** | **動作** | | * “私人 Sub mySubRoutine(…)” | * 此處,關鍵字“ Sub”用于聲明名為“ mySubRoutine”的子例程并啟動該子例程的主體。 * 關鍵字 Private 用于指定子例程 的范圍 | | * “ ByVal arg1 作為字符串,ByVal arg2 作為字符串”: | * 聲明字符串數據類型名稱 arg1 和 arg2 的兩個參數 | | * “結束子” | * “ End Sub”用于結束子程序 的主體 | 以下子例程接受名字和姓氏并將其顯示在消息框中。 現在,我們要編程并執行此子過程。 讓我們看看這個。 ## 如何在 VBA 中調用子例程 1. 設計用戶界面并設置用戶控件的屬性。 2. 添加子程序 3. 為調用該子例程的命令按鈕編寫 click 事件代碼 4. 測試應用 **步驟 1)**用戶界面 設計用戶界面,如下圖所示 ![VBA Functions and Subroutine](https://img.kancloud.cn/bd/59/bd599862acabbf9efba84a86a9173576_238x130.png "VBA Functions and Subroutine") 設置以下屬性。 我們正在設置的屬性 | **S / N** | **控件** | **屬性** | **值** | | 1 | CommandButton1 | Name | btnDisplayFullName | | 2 | | 標題 | 全名子例程 | 您的界面現在應如下所示 ![VBA Functions and Subroutine](https://img.kancloud.cn/57/51/57514b0e58d627a383c3d656e56fd706_289x160.png "VBA Functions and Subroutine") **步驟 2)**添加子例程 1. 按 Alt + F11 打開代碼窗口 2. 添加以下子例程 ``` Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String) MsgBox firstName & " " & lastName End Sub ``` 代碼中的 | **代碼** | **動作** | | * “私人子 displayFullName(…)” | * 它聲明一個接受兩個字符串參數的私有子程序 displayFullName。 | | * “ ByVal firstName 作為字符串,ByVal lastName 作為字符串” | * 聲明兩個參數變量 firstName 和 lastName | | * MsgBox firstName &“” & lastName” | * 它調用 MsgBox 內置函數來顯示消息框。 然后,它將“ firstName”和“ lastName”變量作為參數傳遞。 * 和號“ & ”用于連接兩個變量,并在它們之間添加一個空格。 | **步驟 3)**從命令按鈕單擊事件調用子例程。 * 右鍵單擊命令按鈕,如下圖所示。 選擇查看代碼。 * 代碼編輯器將打開 ![VBA Functions and Subroutine](https://img.kancloud.cn/61/ea/61ea3672d93e9c23591abd9b1a4d2319_496x311.png "VBA Functions and Subroutine") 在 btnDisplayFullName 命令按鈕的 click 事件的代碼編輯器中添加以下代碼。 ``` Private Sub btnDisplayFullName_Click() displayFullName "John", "Doe" End Sub ``` 您的代碼窗口現在應如下所示 ![VBA Functions and Subroutine](https://img.kancloud.cn/1c/89/1c89f634685176fb1ff0460823d1ccd1_689x171.png "VBA Functions and Subroutine") 保存更改并關閉代碼窗口。 **步驟 4)測試代碼** 在開發人員工具欄上,將設計模式設置為“關閉”。 如下所示。 ![VBA Functions and Subroutine](https://img.kancloud.cn/59/f9/59f9b289429dd6ad18a7169859e66b3b_318x246.png "VBA Functions and Subroutine") **步驟 5)**單擊命令按鈕“全名子例程”。 您將獲得以下結果 ![VBA Functions and Subroutine](https://img.kancloud.cn/26/c0/26c0ce57280334c9c3253388f88e7353_408x182.png "VBA Functions and Subroutine") [下載上面的 Excel 代碼](https://drive.google.com/uc?export=download&id=0BwL5un1OyjsdTDg1QllTM2p0ZHM) **摘要**: * 子例程是執行特定任務的一段代碼。 子例程執行后不返回值 * 子例程提供代碼可重用性 * 子例程有助于將大塊代碼分解為可管理的小代碼。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看