好多朋友由于是初級學(xué)習(xí)階段,盡管小編每次推送都力求言簡意賅,通俗明了,但是還是有很多朋友不明所以,so,明天開始,小編將以視頻的形式把以前的文章為大家講解,希望大家喜歡! 今天由于有幾個(gè)程序要寫,所以今天的文章就隨便找點(diǎn)基本的入門知識給那些初學(xué)的朋友們,很簡單,但是一定要弄明白! Excel的層次構(gòu)架,在一般圖書或者論壇來說,講完宏和VBE之后應(yīng)該講解數(shù)組和變量之類的東西了,但是我認(rèn)為那些都是在后續(xù)慢慢實(shí)踐過程中自然懂會的東西,所以對于變量我會以輕描淡寫的方式帶過,明白變量是何東西、怎么用就好了,所以不做長篇論述。從本篇我們著手vba的核心-appliction、workbook、worksheet、range(cell)。表示單元格的有很多種方法,本人只擅長使用這兩個(gè),所以只著重講解這兩個(gè)。 那么什么是在講解這些東西之前,我們先來看看一張圖, 這里的appliction是Excel的最高級別,就是Excel程序。Workbook是由appliction創(chuàng)建的一個(gè)工作簿,在Excel系統(tǒng)里第二層。Worksheet是workbook里面的一張表單,一般新建的工作簿內(nèi)含三張表單,分別為sheet1/sheet2/sheet3。Range和cell就是表單里面的任意一個(gè)單元格,在Excel的最底層,也是由千萬個(gè)這樣的單元格組成的workbook。 如果看不懂沒有關(guān)系,我們換另外一種理解方法。Appliction就可以看做中國的某一個(gè)省,workbook就是appliction省中的一個(gè)縣,注意這個(gè)workbook只屬于appliction省,如果同時(shí)有兩個(gè)工作簿打開,就會有兩個(gè)appliction省,新學(xué)習(xí)這里很容易混肴,一定要注意區(qū)分開來。接著worksheet就是workbook縣里面的一個(gè)鄉(xiāng)鎮(zhèn)了,同樣這個(gè)鄉(xiāng)鎮(zhèn)只屬于workbook縣,當(dāng)然鄉(xiāng)鎮(zhèn)肯定會有很多個(gè)村子了,就是Range和cell了。上面我們在提到Range時(shí)還會連上cell,有人會問,省和縣以及鄉(xiāng)鎮(zhèn)都是一個(gè),為什么這里會有兩個(gè)?不用著急,我在這里之所以把他們兩個(gè)放在一起說,是因?yàn)猷l(xiāng)鎮(zhèn)下面的村子也可以用Range表示,也可以用cell表示,只是用法不同,下面我們就對這兩個(gè)“村子”進(jìn)行細(xì)致的講解。(這里我采取的是逆順講解,也就是先從最頂層講解,呵呵,這也是我學(xué)習(xí)的時(shí)候的方法,希望大家也能接受) Range Range對象可能是VBA代碼中最常用的對象,Range對象可以是某一單元格、某一單元格區(qū)域、某一行、某一列、或者是多個(gè)連續(xù)或非連續(xù)的區(qū)域組成的區(qū)域。下面介紹Range對象的一些屬性和方法。其用法相當(dāng)簡單,就是()里面加上需要引用的單元格位置,比如,引用單元格A1,則寫成Range('a1')即可。下面是range的一些屬性以及方法,不是很全的,不過在平時(shí)使用中不是每個(gè)屬性都要使用的,所以我們著重幾個(gè)重點(diǎn)的屬性和方法進(jìn)行講解。 了解了這些之后,我們就可以使用它來編寫簡單的程序了。 設(shè)置引用單元格為指定文字: 利用上次創(chuàng)建的按鈕,雙擊然后編寫代碼: Private Sub CommandButton1_Click() Range('A1').Value = '我在學(xué)習(xí)VBA' End Sub 我們可以看到,有按鈕的的工作表的A1單元格里出現(xiàn)了“我在學(xué)習(xí)VBA”字符,這里我們使用的是range的value屬性,value屬性可以使引用單元格表示任意字符!其實(shí)按我當(dāng)初的理解,value屬性就是“值”的意思,注意,在引用單元格設(shè)置屬性的時(shí)候文字必須要用單引號引起來,如果是數(shù)字則不用! 在這個(gè)按鈕旁邊再新建一個(gè)按鈕,代碼如下: Private Sub CommandButton2_Click() Range('A1').Font.Name = '仿宋' Range('A1').Font.Size = 24 End Sub 可以看到,剛剛在單元格的字體變成了宋體,字號增大到了24,這里使用的是font屬性,可以改變字體和字體大小還有下劃線等,反正只要關(guān)于字體的都能設(shè)置! 由于篇幅有限,下面列舉一些常用的有關(guān)range的方法和屬性。 單元格顏色: Private Sub CommandButton2_Click() Cells(1, 1).Font.ColorIndex = 3 '字的顏色號為3 紅色 End Sub 引用單元格位置: Private Sub CommandButton2_Click() Range('a2').Value = '單元格A1的位置是:行' & Range('a1').Row & ' ,' & '列' & Range('a1').Column End Sub 這里使用的是range的Row和Column屬性,也就是單元格所在的行和列,需要說明的是,column屬性顯示出來的是數(shù)字,并不是我們常見的A列;B列;C列.....數(shù)字1代表的是A,2代表B,3代表C......如下圖: range不僅可以代表某一個(gè)單一的單元格,也可以代表某一個(gè)區(qū)域,比如,你想引用A1到D17的區(qū)域,代碼可以寫成range(a1:d17),如下圖: 如果你想清除單元格里面的內(nèi)容,則要用到clear了,不過清除也有好幾種方式: 比如你想把A1到D17的區(qū)域里的內(nèi)容清除掉(注意,只是清除內(nèi)容),代碼可以寫成: range(a1:d17).clearcontents 具體的實(shí)用方法可以參考上面列表,這里不再鰲述! |
|