資源描述:
《Excel宏功能簡單應(yīng)用介紹》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、Excel宏功能簡單應(yīng)用介紹所謂宏,就是一組指令集,通過執(zhí)行類似批處理的一組命令,來完成某種功能。MicrosoftOffice的組件都可以支持宏(Macro)的操作,而Office的宏是指使用VBScript指令集(VB編程語言的子集,可以使用VB的常用語句)編寫的針對Office組件的小程序。利用宏,我們可以完成很多程序原本并不支持的特殊應(yīng)用,比如完成某種特殊的數(shù)據(jù)計算,或者文檔的特殊格式排版等等。下面,就讓我們舉個簡單的例子,看看宏在Excel中如何應(yīng)用。 有這樣一個Excel表格,工作表Sheet1中的第2行的B列開始至D列的連續(xù)單元格中是一組共3
2、個數(shù)據(jù),第A列的第3行開始至第6行的連續(xù)單元格中是一組共4個日期,要編寫一段宏來完成這樣的工作:將Sheet1第2行的數(shù)據(jù)由左至右依次縱向復(fù)制到Sheet2的B列(從B2開始)中,然后將這組復(fù)制完的3個數(shù)據(jù)所在行的A列都填入Sheet1的A3單元格里面的日期,完成后重復(fù)之前的操作,將Sheet1第2行的數(shù)據(jù)再次復(fù)制到Sheet2的B列,這次是從上次復(fù)制的B列數(shù)據(jù)下面的空白單元格,也就是B5開始,然后再在這次復(fù)制的3個數(shù)據(jù)的左側(cè)A列填入Sheet1的A4單元格的日期,這樣反復(fù)循環(huán),直到Sheet1的A列的所有日期都出現(xiàn)在了Sheet2的A列里面,也就是Shee
3、t1的第2行數(shù)據(jù)在Sheet2的B列里面被復(fù)制了4次為止?! 【帉懞曛灰幸稽c點簡單的VB編程知識就可以了,并不一定需要很高深的編程技巧,很多時候我們需要的只是一些重復(fù)的操作,我們可以通過宏的錄制功能來錄制一次需要的操作過程,然后再對已經(jīng)錄制的宏進行簡單的修改,就能得到所需要的宏了?! τ谏厦孢@個事例,實際上只是簡單的復(fù)制操作,所以甚至連錄制的工作都可以省掉了。因為所需要的操作是一個循環(huán)的過程,所以我們可以使用一個循環(huán)語句來編寫程序,這樣只要寫出一個完成的復(fù)制過程,一次循環(huán)就可以達到我們的目的了。循環(huán)判斷的依據(jù)就是是否Sheet1的A列所有日期都復(fù)制過了,
4、因為數(shù)據(jù)都是連續(xù)排列的,艘以我們可以把Sheet1的A列某個單元格是否有數(shù)據(jù)作為進入循環(huán)的條件,依次復(fù)制日期,直到A7這個沒有數(shù)據(jù)的空單元格,循環(huán)結(jié)束,我們的工作也就完成了。至于循環(huán)里面的內(nèi)容,我們同樣再嵌套一個循環(huán),只不過這次是判斷第2行的數(shù)據(jù)是否全都復(fù)制完成了,在這個循環(huán)里面自然就是單元格數(shù)據(jù)和日期的復(fù)制了?! ubMacro1() Dimst1y Dimst2y Dimst1x st1y=3 st2y=2 DoWhileSheets(“Sheet1”).Cells(st1y,"A")<>"" st1x=2 DoWhileSheets(
5、“Sheet1”).Cells(2,st1x)<>"" Sheets(“Sheet2”).Cells(st2y,"B")=Sheets(“Sheet1”).Cells(2,st1x) Sheets(“Sheet2”).Cells(st2y,"A")=Sheets(“Sheet1”).Cells(st1y,"A") st1x=st1x+1 st2y=st2y+1 Loop st1y=st1y+1 Loop EndSub 上面就是我編寫的這個宏的所有內(nèi)容,讓我再來詳細說說每個命令的作用: 第一行的“SubMacro1()”和最后一行的“End
6、Sub”是整個宏的開始和結(jié)尾標(biāo)志,Macro1就是這個宏的名字?! 癉im”是定義一個變量,“st1y”是我定義的Sheet1的Y軸坐標(biāo)變量,同理,“st1x”就是Sheet1的X軸坐標(biāo)變量,“st2y”自然是Sheet2的Y軸坐標(biāo)變量了?! 皊t1y=3”這是一個賦值語句,下面的“Sheets("Sheet2").Cells(st2y,"b")=Sheets("Sheet1").Cells(2,st1x)”這句也是,它們的作用都是將等號后面的數(shù)值賦予給等號前面的變量,就是說,等號前面必須是一個變量而不能是常量。這里分別給st1y和st2y賦予初始值3和
7、2,代表他們分別是從第3行(Sheet1的日期是從A3開始的)和第2行開始。 “DoWhile”就是我們整個程序中最重要的循環(huán)語句了,“Sheets("Sheet1").Cells(st1y,"A")”是代表的Sheet1這個工作表的某個單元格,Cells后的括號內(nèi)就是單元格的坐標(biāo),格式是Cells(Y軸,X軸),那個A3這個單元格就應(yīng)該表示為Cells(3,"A"),這里注意,字符和字符串常量都必須用引號括起來,另外,X周除了用字母標(biāo)示以外,也可以使用對應(yīng)的數(shù)字來表示。第一個循環(huán)就是判斷是否在Sheet1的A列的某個單元格碰到了空白格,如果沒有,就進入循
8、環(huán)執(zhí)行里面的程序。與這個“DoWhile”相對應(yīng)的就