第一步:點擊錄製宏express
第二步:填寫宏的方法名數組
第三步:進行一系列的操做以後,關閉宏app
第四步:根據本身的須要查看,修改宏ide
第六步:保存,通常是另存爲,後綴名爲.xlsm,不然宏語言不能保存。函數
到此爲止恭喜你一個簡單的宏已經制做成功,固然宏也能夠調用Excel中的公式,例如:sum等,排序,佈局,查詢,等。佈局
Excel中經常使用對象的簡單介紹:spa
對象名3d |
含義code |
Applicationorm |
表明整個 Excel 應用程序。 |
Window |
表明窗口 |
Worksheet |
表明一個工做表 |
Sheets |
指定的或活動工做簿中全部工做表的集合 |
ShapeRange |
表明形狀區域,它是文檔中的一組形狀 |
PivotTable |
表明工做表上的數據透視表 |
Workbook |
表明一個 Excel 工做簿 |
Shape |
表明繪圖層中的對象,例如自選圖形、任意多邊形、OLE 對象或圖片 |
Range |
表明某一單元格、某一行、某一列、某一選定區域,或者某一三維區域 |
Name |
表明單元格區域的定義名。名稱能夠是內置名稱(如Print_Area)或自定義名稱 |
Chart |
表明工做簿中的圖表 |
FileDialog |
提供文件對話框,其功能與 Office 應用程序中標準的「打開」和「保存」對話框相似 |
CommandBarPopup |
表明命令欄上的一個彈出式控件 |
CommandBar |
表明容器應用程序中的一個命令欄 |
workSheet工做薄的方法
名稱 |
說明 |
Add |
新建工做表、圖表或宏表。新建的工做表將成爲活動工做表 |
Copy |
將工做表複製到工做簿的另外一位置 |
Delete |
刪除對象 |
FillAcrossSheets |
將單元格區域複製到集合中全部其餘工做表的同一位置 |
Move |
將工做表移到工做簿中的其餘位置 |
PrintOut |
打印對象 |
PrintPreview |
按對象打印後的外觀效果顯示對象的預覽 |
Select |
選擇對象 |
算術運算符
運算符 |
功能 |
^ |
求一個數字的某次方,如 A^B |
* |
乘法運算 |
/ |
除法運算 |
\ |
對兩個數做除法並返回一個整數 |
Mod |
求兩數的餘數 |
+ |
加法運算 |
- |
減法運算 |
比較運算符
符號 |
功能 |
< |
小於 |
<= |
小於或等於 |
> |
大於 |
>= |
大於或等於 |
= |
等於 |
<> |
不等於 |
邏輯運算符
符號 |
功能 |
And |
用來對兩個表達式進行邏輯鏈接 |
Eqv |
用來對兩個表達式進行邏輯等價運算 |
Imp |
用來對兩個表達式進行邏輯蘊涵運算 |
Not |
用來對錶達式進行邏輯否認運算 |
Or |
用來對兩個表達式進行邏輯析取運算 |
Xor |
用來對兩個表達式進行邏輯互斥或運算 |
字符串處理函數
做用 |
關鍵字 |
Option Compare |
設置字符串比較規則 |
StrComp |
比較兩個字符串(字符類似判斷) |
StrConv |
字符串類型轉換 |
Lcase、Ucase |
大小寫變換 |
Spase、String |
重複字符串 |
Len |
計算字符串長度 |
Format |
設置字符格式 |
LSet、Rset |
重排字符串 |
InStr、Left、Ltrim、Mid、Right、Rtrim、Trim |
處理字符串 |
Split、Join |
拆分與聯接字符串 |
VBA的數據類型
數據類型 |
存儲空間大小 |
範圍 |
Byte |
1 個字節 |
0 到 255 |
Boolean |
2 個字節 |
True 或 False |
Integer |
2 個字節 |
-32,768 到 32,767 |
Long(長整型) |
4 個字節 |
-2,147,483,648 到 2,147,483,647 |
Single(單精度浮點型) |
4 個字節 |
負數時從 -3.402823E38 到 -1.401298E-45;正數時從 1.401298E-45 到 3.402823E38 |
Double(雙精度浮點型) |
8 個字節 |
負數時從 -1.79769313486231E308 到 |
Currency(變比整型) |
8 個字節 |
從 -922,337,203,685,477.5808 到 922,337,203,685,477.5807 |
Decimal |
14 個字節 |
沒有小數點時爲 +/-79,228,162,514,264,337,593,543,950,335,而小數點右邊有 28 位數時爲 +/-7.9228162514264337593543950335;最小的非零值爲 +/-0.0000000000000000000000000001 |
Date |
8 個字節 |
100 年1月1日到9999年12月31日 |
Object |
4 個字節 |
任何 Object 引用 |
String(變長) |
10 字節加字符串長度 |
0 到大約 20 億 |
String(定長) |
字符串長度 |
1 到大約 65,400 |
Variant(數字) |
16 個字節 |
任何數字值,最大可達 Double 的範圍 |
Variant(字符) |
22 個字節加字符串長度 |
與變長 String 有相同的範圍 |
用戶自定義 |
全部元素所需數目 |
每一個元素的範圍與它自己的數據類型的範圍相同。 |
數據類型的轉換
函數 |
返回類型 |
expression 參數範圍 |
CBool |
Boolean |
任何有效的字符串或數值表達式 |
CByte |
Byte |
0 至 255 |
CCur |
Currency |
-922,337,203,685,477.5808 至922,337,203,685,477.5807 |
CDate |
Date |
任何有效的日期表達式 |
CDbl |
Double |
負數從 -1.79769313486231E308 至 -4.94065645841247E-324;正數從 4.94065645841247E-324 至 1.79769313486232E308 |
CDec |
Decimal |
零變比數值,即無小數位數值,爲+/-79,228,162,514,264,337,593,543,950,335。對於 28 位小數的數值,範圍則爲+/-7.9228162514264337593543950335;最小的可能非零值是 0.0000000000000000000000000001。 |
CInt |
Integer |
-32,768 至 32,767,小數部分四捨五入 |
CLng |
Long |
-2,147,483,648 至 2,147,483,647,小數部分四捨五入 |
CSng |
Single |
負數爲 -3.402823E38 至 -1.401298E-45;正數爲 1.401298E-45 至 3.402823E38 |
CStr |
String |
依據 expression 參數返回 Cstr |
CVar |
Variant |
若爲數值,則範圍與 Double 相同;若不爲數值,則範圍與 String 相同 |
方法參數介紹
部分 |
功能詳解 |
Optional |
可選的。表示參數不是必需的關鍵字。若是使用了該選項,則 arglist 中的後續參數都必須是可選的,並且必須都使用 Optional 關鍵字聲明。若是使用了 ParamArray,則任何參數都不能使用 Optional |
ByVal |
可選的。表示該參數按值傳遞 |
ByRef |
可選的。表示該參數按地址傳遞。ByRef 是 Visual Basic 的缺省選項 |
ParamArray |
可選的。只用於 arglist 的最後一個參數,指明最後這個參數是一個 Variant 元素的 Optional 數組。使用 ParamArray 關鍵字能夠提供任意數目的參數。ParamArray 關鍵字不能與 ByVal,ByRef,或 Optional 一塊兒使用 |
varname |
必需的。表明參數的變量的名稱;遵循標準的變量命名約定 |
type |
可選的。傳遞給該過程的參數的數據類型,若是沒有選擇參數 Optional,則能夠指定用戶定義類型,或對象類型 |
defaultvalue |
可選的。任何常數或常數表達式。只對 Optional 參數合法。若是類型爲 Object,則顯式的缺省值只能是 Nothing |
簡單宏例子:
Sub 宏1() ' ' 宏1 宏 ' ' Sheets("Sheet2").Select ActiveWindow.SmallScroll Down:=-18 Range("A1").Select ActiveCell.FormulaR1C1 = "第一步:點擊錄製宏" Range("A43").Select ActiveCell.FormulaR1C1 = "第二步:填寫宏的方法名" Range("C45").Select ActiveSheet.Paste ActiveWindow.SmallScroll Down:=21 Sheets("Sheet1").Select ActiveWindow.SmallScroll Down:=-9 Range("C3").Select End Sub Sub 宏2() ' ' 宏2 宏 ' Range("B14").Select ActiveCell.FormulaR1C1 = "=SUM(R[-13]C:R[-1]C)" End Sub
到此爲止VBA的介紹已經完成,VBA中的語法與VB的語法基本上同樣,也許會有版本不懂略有差異。
Excel有數百個對象,表4-1是常見對象名稱其及含義