1. 程式人生 > >第一章 走進Excel VBA的世界

第一章 走進Excel VBA的世界

概述:

《別怕,ExcelVBA其實很簡單》學習

預設採用Excel 2007

1、什麼是巨集?

巨集就是錄製你的行為,重複使用和回放。

2、用巨集錄下Excel操作

預設情況下你可能沒有開放工具選項卡,需要設定


錄製一個簡單隔行填色:

步驟一:建立一個巨集   (注意快捷鍵不要覆蓋常用的快捷鍵,例如Ctrl+C, Ctrl+A,Ctrl+V 等等)


步驟二:錄製你的行為。(必須要達到這個效果)


步驟三:使用巨集

(首先你可以取消這個樣式或者刪除這兩行)執行巨集將會看到預期的效果

方式1:快捷鍵Ctrl+w(你設定的快捷鍵)

方式2:


那麼問題來了,那天忘記快捷鍵,怎麼辦?給你弄個按鈕吧


下一步


當然你可以右鍵修改按鈕的文字資訊來告訴我們這是幹啥用的按鈕

3、開啟巨集

Excel為了保護文件會禁止開啟巨集,所以需要自己進行設定開啟


4、思考巨集(是時候亮相VBA)

心裡想巨集也不過如此,只能做重複死工作,一點智慧沒有。VBA(Visual Basic For Application)可以更加靈活完成工作,例如:填充100行,隔行填充不同顏色,難道還要手工輸入嗎?這。。有點不人道了。。。,堅信既然是機器的活,讓它自己去做。

其實在錄製巨集過程中生成VBA程式碼了,現在我們修改程式碼來完成目的,填充100行,隔行填充


修改前的程式碼

Sub 第一個巨集()
'
' 第一個巨集 Macro
' 隔行換色
'
' 快捷鍵: Ctrl+w
'修改前的程式碼
'
    Rows("1:1").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 65535
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
 
    Rows("2:2").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 5287936
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
 
End Sub

改過之後的程式碼:

Sub 第一個巨集()
'
' 第一個巨集 Macro
' 隔行換色
'
' 快捷鍵: Ctrl+w
'修改後程式碼
'
Dim i As Long   '宣告一個變數為i
For i = 1 To 100  '從 1到100迴圈
    If i Mod 2 = 0 Then    'i 對2取模,也就是餘數是多少
    Rows("" & i & ":" & i & "").Select '選擇Excel對應行,這個行是一個變數,用&進行連線最後格式如"2:2"
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 65535
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    Else
    Rows("" & i & ":" & i & "").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 5287936
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    End If  'If  End If注意成對出現
  Next    'For Next注意成對出現
End Sub

執行結果:(ctrl+w 剛才我設定的)