修改Excel宏代碼及添加注釋的步驟

2024-07-30 11:49 更新

可能在錄制宏的時候,我們選擇了錯誤的字體,可能是忘記改變單元格顏色,又或者你臨時發(fā)現(xiàn)最好加上一個步驟。這個時候不必驚慌。Excel是允許你修改代碼的,而不會強迫你重新錄制那些單調的操作。

修改宏代碼的步驟

你必須知道你的宏代碼放在哪里,你才能找到并修改它?;叵肽愦蜷_宏錄制器的時候,你選擇了“當前工作簿”作為存儲地址。最容易找到宏的方法是打開宏對話框,如圖下圖所示。

宏對話框
宏對話框

1、選擇“工具”-“宏”

2、選擇宏名(本例中為WhatsInACell)

3、點擊“編輯”按鈕

Excel 打開一個專門的窗口,叫做VisualBasicEditor(VBE)如下圖所示。利用快捷鍵Alt+F11
可快速地在Excel表格界面和代碼窗口切換。選擇VBE菜單上的關閉選項可以關閉VBA代碼窗口,返
回到電子表格界面。

VBE窗口
VBE窗口

代碼窗口暫時看上去有些令人迷惑,不必擔心。只要你開始錄制宏,以及嘗試寫一些代碼,你終將了解所有的組件?,F(xiàn)在,看一下代碼窗口的菜單和工具欄。這兩個工具欄和Excel 窗口的菜單完全不同。代碼窗口的菜單和工具包含一些編程和測試代碼所需要的工具。只要你徹底地學習本書的每一章,你就會成為使用這些工具的專家。

VBE窗口的主要部分是多個窗口的集合界面,這些窗口在你創(chuàng)建和測試VBA過程的時候是及其有用
 的。在上圖VBE窗口中顯示了三個集合在一起的窗口:工程窗口,屬性窗口和代碼窗口。工程窗口顯示一個開
啟的模塊文件夾,在這里,模塊1被選中了。Excel 錄制你在工作表里的操作叫做模塊1,模塊2,等等。在本手冊接下來的章節(jié)里,你將利用模塊來編寫你自己的過程代碼。

模塊類似于Word中的一個空白文檔。儲存每個單獨模塊的文件夾稱為“模塊”

技巧:宏還是過程?
宏是通過內置宏錄制器錄制的,或者在VB編輯器里手動輸入的一系列指令或函數(shù)。從Excel 5.0開始,“宏”經常被“過程”這個更廣的概念所代替。盡管這兩個詞可以交替互換使用,但是,許多編程者更喜歡“過程”。雖然宏可以讓你模仿鍵盤操作,真正的過程則還可以執(zhí)行一些不能通過鼠標,鍵盤或者菜單來做的操作。換句話說,過程是一個更復雜的宏,它結合了傳統(tǒng)編程語言的言語結構。

代碼窗口(參見上圖VBE窗口)顯示了下列由宏錄制器錄制的代碼:

Sub WhatsInACell()
'
' WhatsInACell Macro
' Macro recorded 5/31/2002 by Julitta Korol
' Indicates the contents of the underlying cells: text, numbers, formulas.
'
        Selection.SpecialCells(xlCellTypeConstants, 2).Select
        With Selection.Font
                  .Name = "Arial"
                  .FontStyle = "Bold"
                  .Size = 10
                  .Strikethrough = False
                  .Superscript = False
                  .Subscript = False
                  .OutlineFont = False
                  .Shadow = False
                  .Underline = xlUnderlineStyleNone
                  .ColorIndex = 13
        End With
        Range("B6").Select
        Selection.SpecialCells(xlCellTypeConstants, 1).Select
        With Selection.Font
                  .Name = "Arial"
                  .FontStyle = "Regular"
                  .Size = 10
                  .Strikethrough = False
                  .Superscript = False
                  .Subscript = False
                  .OutlineFont = False
                  .Shadow = False
                  .Underline = xlUnderlineStyleNone
                  .ColorIndex = 11
        End With
        Range("C6").Select
        Selection.SpecialCells(xlCellTypeFormulas, 23).Select
        With Selection.Font
                  .Name = "Arial"
                  .FontStyle = "Bold"
                  .Size = 10
                  .Strikethrough = False
                  .Superscript = False
                  .Subscript = False
                  .OutlineFont = False
                  .Shadow = False
                  .Underline = xlUnderlineStyleNone
                  .ColorIndex = 3
        End With
        Range("A1:A3").Select
        Selection.EntireRow.Insert
        Range("A1").SelectWith Selection.Interior
                  .ColorIndex = 13
                  .Pattern = xlSolid
                  .PatternColorIndex = xlAutomatic
        End With
        Range("B1").Select
        ActiveCell.FormulaR1C1 = "Text"
        Range("A2").Select
        With Selection.Interior
                  .ColorIndex = 5
                  .Pattern = xlSolid
                  .PatternColorIndex = xlAutomatic
        End With
        Range("B2").Select
        ActiveCell.FormulaR1C1 = "Numbers"
        Range("A3").Select
        With Selection.Interior
                  .ColorIndex = 3
                  .Pattern = xlSolid
                  .PatternColorIndex = xlAutomatic
        End With
        Range("B3").Select
        ActiveCell.FormulaR1C1 = "Formulas"
        Range("B4").Select
End Sub

從現(xiàn)在開始,讓我們注重于尋找下面兩個問題的答案:如何閱讀宏代碼?如何修改宏代碼?

添加注釋

看一下錄制的宏代碼,請注意那些開頭帶單引號的行。這些行就是注釋。注釋默認顯示為綠色。執(zhí)行宏代碼時,VB會忽略這些注釋行。注釋經常和宏代碼放在一起,來整理那些意義不甚明顯的語句。

現(xiàn)在,我們來給宏WhatsInACell 添加注釋。

1、激活VBE窗口

2、在Selection.SpecialCells(xlCellTypeConstants,2).Select前面點擊一下,將光標移至該
語句開頭,回車

3、將光標往上移一行到空白處,并且添加如下注釋,注意前面有單引號(譯者:英文狀態(tài)下的
單引號)
‘ Find and format cells containing text

4、在Selection.SpecialCells(xlCellTypeConstants,1).Select前面點擊一下,將光標移至該語句開頭,回車

5、將光標往上移一行到空白處,并且添加如下注釋,注意前面有單引號(譯者:英文狀態(tài)下的
單引號)
‘ Find and format cells containing numbers

6、在Selection.SpecialCells(xlCellTypeFormulas,23).Select前面點擊一下,將光標移至該
語句開頭,回車

7、將光標往上移一行到空白處,并且添加如下注釋,注意前面有單引號(譯者:英文狀態(tài)下的
單引號)
‘ Find and format cells containing formulas

8、在Range("A1:A3").Select前面點擊一下,將光標移至該語句開頭,回車

技巧:關于注釋
在VBE代碼窗口里,以單引號開頭的都是注釋。注釋的默認顏色是綠色??梢酝ㄟ^“選項”對話框(“工具”-“選項”-“編輯器格式”)更改注釋顏色。注釋也可以寫在代碼的后面。

例如,在語句.ColorIndex = 11之后添加注釋。點擊該語句句末,按下Tab鍵,輸入單引號,然后輸入注釋。
顯示如下:

.ColorIndex = 11 ' Sets the font color to Violet

注釋除了給用戶提供代碼目的信息之外,沒有任何作用。請別忘記給你的代碼寫上注釋。如果你幾個月后還要回到你的代碼,那么注釋將幫你大忙。同樣,注釋可以使別人很快理解你的程序。

9、將光標往上移一行到空白處,并且添加如下注釋,注意前面有單引號(譯者:英文狀態(tài)下的
單引號)
‘Create legend
以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號